Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Dec 2008 08:45:29 +0300
From:      "Andrey V. Elsukov" <bu7cher@yandex.ru>
To:        David Ehrmann <ehrmann@gmail.com>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: SATA hotplug and AHCI
Message-ID:  <4959B579.1000407@yandex.ru>
In-Reply-To: <49596A3D.1060003@gmail.com>
References:  <49582FB2.8030300@gmail.com> <4958652B.80101@gmail.com> <49588FF7.2020702@yandex.ru> <49596A3D.1060003@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
David Ehrmann wrote:
> http://pastebin.com/f5ab2ed28
> 
> dmesg.boot never changes.  When I remove the drive, I see this from dmesg:
> 
> ata4: DISCONNECT requested
> subdisk8: detached
> ad8: detached
> ata4: DISCONNECTED
> 
> And when I plug it back in,
> 
> ata4: CONNECT requested
> ata4: DISCONNECTED
> ata4: CONNECTED
> ata4: SATA connect time=0ms
> ata4: SIGNATURE: 0000000c
> ata4: No signature, asuming disk device
> ata4: ahci_reset devices=0x1<ATA_MASTER>
> ata4: reiniting channel ..
> ata4: SATA connect time=0ms
> ata4: SIGNATURE: 0000000c
> ata4: No signature, asuming disk device
> ata4: ahci_reset devices=0x1<ATA_MASTER>
> ata4: reinit done ..
> ata4: reiniting channel ..
> ata4: SATA connect time=0ms
> ata4: SIGNATURE: 0000000c
> ata4: No signature, asuming disk device
> ata4: ahci_reset devices=0x1<ATA_MASTER>
> ata4: reinit done ..

There were several similar reports. AHCI driver can't read correct
device signature after hard reset and can't detect attached device.
This issue was fixed with hack which you can see in this output:

 > ata4: SIGNATURE: 0000000c
 > ata4: No signature, asuming disk device
 > ata4: ahci_reset devices=0x1<ATA_MASTER>

Linux's libata driver has a quirk for VIA AHCI:

/* vt8251 doesn't clear BSY on signature FIS reception,
  * request follow-up softreset.
  */

If i right understand it issues softreset for VIA controllers just
after hardreset. And after softreset it is trying to read device signature.

FreeBSD CURRENT has similar code, but it is disabled by default.
You can try install CURRENT and rebuild ata_ahci driver with AHCI_PM option.
May be it will help..

-- 
WBR, Andrey V. Elsukov



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4959B579.1000407>