All of lore.kernel.org
 help / color / mirror / Atom feed
* ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)`
@ 2012-01-16 10:03 Paul Menzel
  2012-01-31  2:30 ` Robert Hancock
  0 siblings, 1 reply; 3+ messages in thread
From: Paul Menzel @ 2012-01-16 10:03 UTC (permalink / raw)
  To: linux-ide

[-- Attachment #1: Type: text/plain, Size: 4618 bytes --]

Dear Linux folks,


please keep my address in CC list since I am not subscribed.

I am sorry for asking again for clarification for messages from Linux in
`/var/log/kern.log`.

        Jan 13 02:13:15 joe kernel: [    1.477687] ahci 0000:00:12.0: version 3.0

Whose version is this indication? Looking at the Wikipedia article [1]
and the AHCI link therein [2], specification numbers seem to 1.x.

Additionally having a sentence there, like `chipset support AHCI version
3.0` would be “better” in my opinion. If you agree, I can send a patch.

        Jan 13 02:13:15 joe kernel: [    1.477718] ahci 0000:00:12.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
        Jan 13 02:13:15 joe kernel: [    1.477748] ahci 0000:00:12.0: ASUS M2A-VM: enabling 64bit DMA
        Jan 13 02:13:15 joe kernel: [    1.477981] ahci 0000:00:12.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl SATA mode
        Jan 13 02:13:15 joe kernel: [    1.477986] ahci 0000:00:12.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc 
        Jan 13 02:13:15 joe kernel: [    1.479052] scsi2 : ahci
        Jan 13 02:13:15 joe kernel: [    1.479142] scsi3 : ahci
        Jan 13 02:13:15 joe kernel: [    1.479220] scsi4 : ahci
        Jan 13 02:13:15 joe kernel: [    1.479296] scsi5 : ahci
        Jan 13 02:13:15 joe kernel: [    1.479434] ata3: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f100 irq 22
        Jan 13 02:13:15 joe kernel: [    1.479438] ata4: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f180 irq 22
        Jan 13 02:13:15 joe kernel: [    1.479442] ata5: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f200 irq 22
        Jan 13 02:13:15 joe kernel: [    1.479447] ata6: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f280 irq 22

So, AHCI and UDMA are unrelated? (Just to be sure once and for all. ;-))

        Jan 13 02:13:15 joe kernel: [    1.640626] ata1.00: ATAPI: TOSHIBA DVD-ROM SD-M1712, 1004, max UDMA/33
        Jan 13 02:13:15 joe kernel: [    1.656502] ata1.00: configured for UDMA/33
        Jan 13 02:13:15 joe kernel: [    1.796038] ata6: SATA link down (SStatus 0 SControl 300)
        Jan 13 02:13:15 joe kernel: [    1.796076] ata5: SATA link down (SStatus 0 SControl 300)
        Jan 13 02:13:15 joe kernel: [    1.796132] ata4: SATA link down (SStatus 0 SControl 300)
        Jan 13 02:13:15 joe kernel: [    1.808018] usb 2-1: new low speed USB device number 2 using ohci_hcd
        Jan 13 02:13:15 joe kernel: [    1.968017] ata3: softreset failed (device not ready)
        Jan 13 02:13:15 joe kernel: [    1.968063] ata3: applying PMP SRST workaround and retrying

This seems to be related to a hardware bug in the SB600 chipset [3]. The
discussion [4] indicates that setting `CONFIG_SATA_PMP=n` fixes this
issue. Although reading the option description [5] I do not understand
what it does and if it is advisable to disable it.

        […]
        
        Jan 13 02:13:15 joe kernel: [    2.140032] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        Jan 13 02:13:15 joe kernel: [    2.146085] ata3.00: ATA-8: WDC WD20EARS-60MVWB0, 51.0AB51, max UDMA/100
        Jan 13 02:13:15 joe kernel: [    2.146088] ata3.00: 3907029168 sectors, multi 1: LBA48 NCQ (depth 31/32), AA
        Jan 13 02:13:15 joe kernel: [    2.146094] ata3.00: SB600 AHCI: limiting to 255 sectors per cmd
        Jan 13 02:13:15 joe kernel: [    2.152134] ata3.00: SB600 AHCI: limiting to 255 sectors per cmd
        Jan 13 02:13:15 joe kernel: [    2.152138] ata3.00: configured for UDMA/100

This seems to be related to [6], although the chipset SB600 seems to
support 3.0 Gbps instead of only 1.5 Gbps with the VIA K8T890. The drive
only seems to propagate UDMA/100 which is fine.

My main question is, that in the BIOS »Onboard SATA Type« is set to »IDE
Controller« by default. Is that true? But looking at the output AHCI
seems to be used nevertheless so the BIOS setting seems to be ignored or
does not make any difference to setting it to »AHCI«. So would changing
the option to »AHCI« give any benefit? Would it get rid of the
`softreset failed (device not ready)` too?


Thanks,

Paul


[1] https://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface
[2] http://www.intel.com/technology/serialata/ahci.htm
[3] https://bugzilla.redhat.com/show_bug.cgi?id=468800
[4] http://www.linuxquestions.org/questions/linux-kernel-70/ata4-softreset-failed-device-not-ready-865155/
[5] http://cateee.net/lkddb/web-lkddb/SATA_PMP.html
[6] http://www.spinics.net/lists/linux-ide/msg41224.html

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)`
  2012-01-16 10:03 ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)` Paul Menzel
@ 2012-01-31  2:30 ` Robert Hancock
  2012-07-04 15:33   ` solved: `softreset failed (device not ready)` gone with `CONFIG_SATA_PMP=n` (was: ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)`) Paul Menzel
  0 siblings, 1 reply; 3+ messages in thread
From: Robert Hancock @ 2012-01-31  2:30 UTC (permalink / raw)
  To: Paul Menzel; +Cc: linux-ide

On 01/16/2012 04:03 AM, Paul Menzel wrote:
> Dear Linux folks,
>
>
> please keep my address in CC list since I am not subscribed.
>
> I am sorry for asking again for clarification for messages from Linux in
> `/var/log/kern.log`.
>
>          Jan 13 02:13:15 joe kernel: [    1.477687] ahci 0000:00:12.0: version 3.0
>
> Whose version is this indication? Looking at the Wikipedia article [1]
> and the AHCI link therein [2], specification numbers seem to 1.x.

That's the driver version (which is of questionable usefulness), not the 
AHCI version.

>
> Additionally having a sentence there, like `chipset support AHCI version
> 3.0` would be “better” in my opinion. If you agree, I can send a patch.
>
>          Jan 13 02:13:15 joe kernel: [    1.477718] ahci 0000:00:12.0: PCI INT A ->  GSI 22 (level, low) ->  IRQ 22
>          Jan 13 02:13:15 joe kernel: [    1.477748] ahci 0000:00:12.0: ASUS M2A-VM: enabling 64bit DMA
>          Jan 13 02:13:15 joe kernel: [    1.477981] ahci 0000:00:12.0: AHCI 0001.0100 32 slots 4 ports 3 Gbps 0xf impl SATA mode

That line indicates AHCI 1.1.

>          Jan 13 02:13:15 joe kernel: [    1.477986] ahci 0000:00:12.0: flags: 64bit ncq sntf ilck pm led clo pmp pio slum part ccc
>          Jan 13 02:13:15 joe kernel: [    1.479052] scsi2 : ahci
>          Jan 13 02:13:15 joe kernel: [    1.479142] scsi3 : ahci
>          Jan 13 02:13:15 joe kernel: [    1.479220] scsi4 : ahci
>          Jan 13 02:13:15 joe kernel: [    1.479296] scsi5 : ahci
>          Jan 13 02:13:15 joe kernel: [    1.479434] ata3: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f100 irq 22
>          Jan 13 02:13:15 joe kernel: [    1.479438] ata4: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f180 irq 22
>          Jan 13 02:13:15 joe kernel: [    1.479442] ata5: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f200 irq 22
>          Jan 13 02:13:15 joe kernel: [    1.479447] ata6: SATA max UDMA/133 abar m1024@0xfe02f000 port 0xfe02f280 irq 22
>
> So, AHCI and UDMA are unrelated? (Just to be sure once and for all. ;-))

Basically, yes

>
>          Jan 13 02:13:15 joe kernel: [    1.640626] ata1.00: ATAPI: TOSHIBA DVD-ROM SD-M1712, 1004, max UDMA/33
>          Jan 13 02:13:15 joe kernel: [    1.656502] ata1.00: configured for UDMA/33
>          Jan 13 02:13:15 joe kernel: [    1.796038] ata6: SATA link down (SStatus 0 SControl 300)
>          Jan 13 02:13:15 joe kernel: [    1.796076] ata5: SATA link down (SStatus 0 SControl 300)
>          Jan 13 02:13:15 joe kernel: [    1.796132] ata4: SATA link down (SStatus 0 SControl 300)
>          Jan 13 02:13:15 joe kernel: [    1.808018] usb 2-1: new low speed USB device number 2 using ohci_hcd
>          Jan 13 02:13:15 joe kernel: [    1.968017] ata3: softreset failed (device not ready)
>          Jan 13 02:13:15 joe kernel: [    1.968063] ata3: applying PMP SRST workaround and retrying
>
> This seems to be related to a hardware bug in the SB600 chipset [3]. The
> discussion [4] indicates that setting `CONFIG_SATA_PMP=n` fixes this
> issue. Although reading the option description [5] I do not understand
> what it does and if it is advisable to disable it.

Turning that off would prevent you from using any SATA port multipliers 
(usually found in things like multi-drive external enclosures). The 
kernel already worked around the issue so I don't think you need to 
worry about this.

>
>          […]
>
>          Jan 13 02:13:15 joe kernel: [    2.140032] ata3: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
>          Jan 13 02:13:15 joe kernel: [    2.146085] ata3.00: ATA-8: WDC WD20EARS-60MVWB0, 51.0AB51, max UDMA/100
>          Jan 13 02:13:15 joe kernel: [    2.146088] ata3.00: 3907029168 sectors, multi 1: LBA48 NCQ (depth 31/32), AA
>          Jan 13 02:13:15 joe kernel: [    2.146094] ata3.00: SB600 AHCI: limiting to 255 sectors per cmd
>          Jan 13 02:13:15 joe kernel: [    2.152134] ata3.00: SB600 AHCI: limiting to 255 sectors per cmd
>          Jan 13 02:13:15 joe kernel: [    2.152138] ata3.00: configured for UDMA/100
>
> This seems to be related to [6], although the chipset SB600 seems to
> support 3.0 Gbps instead of only 1.5 Gbps with the VIA K8T890. The drive
> only seems to propagate UDMA/100 which is fine.

The UDMA speed setting really doesn't matter with SATA devices. The mode 
selection is really just a vestige of PATA and doesn't actually affect 
anything unless there is actually a physical PATA link somewhere in the 
chain (which there almost certainly is not).

>
> My main question is, that in the BIOS »Onboard SATA Type« is set to »IDE
> Controller« by default. Is that true? But looking at the output AHCI
> seems to be used nevertheless so the BIOS setting seems to be ignored or
> does not make any difference to setting it to »AHCI«. So would changing
> the option to »AHCI« give any benefit? Would it get rid of the
> `softreset failed (device not ready)` too?

I'm not sure what that mode selection would actually affect on this 
board. On Intel chipsets you can only use AHCI if the BIOS is in the 
correct mode since the AHCI device isn't exposed otherwise, but on most 
other chipsets, but most others expose the AHCI capabilities all the 
time and so it doesn't really matter. Maybe it changes the device ID and 
therefore affects which driver Windows will load or let you use for the 
controller but I doubt it really makes much difference in Linux. (I 
doubt it would affect that SRST message either, that seems to just be a 
bug in that chipset.)

>
>
> Thanks,
>
> Paul
>
>
> [1] https://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface
> [2] http://www.intel.com/technology/serialata/ahci.htm
> [3] https://bugzilla.redhat.com/show_bug.cgi?id=468800
> [4] http://www.linuxquestions.org/questions/linux-kernel-70/ata4-softreset-failed-device-not-ready-865155/
> [5] http://cateee.net/lkddb/web-lkddb/SATA_PMP.html
> [6] http://www.spinics.net/lists/linux-ide/msg41224.html


^ permalink raw reply	[flat|nested] 3+ messages in thread

* solved: `softreset failed (device not ready)` gone with `CONFIG_SATA_PMP=n` (was: ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)`)
  2012-01-31  2:30 ` Robert Hancock
@ 2012-07-04 15:33   ` Paul Menzel
  0 siblings, 0 replies; 3+ messages in thread
From: Paul Menzel @ 2012-07-04 15:33 UTC (permalink / raw)
  To: linux-ide; +Cc: Robert Hancock

[-- Attachment #1: Type: text/plain, Size: 5625 bytes --]

Dear Linux folks,


this is a follow up for my message from January [7].

Am Montag, den 30.01.2012, 20:30 -0600 schrieb Robert Hancock:
> On 01/16/2012 04:03 AM, Paul Menzel wrote:

[…]

> >          Jan 13 02:13:15 joe kernel: [    1.640626] ata1.00: ATAPI: TOSHIBA DVD-ROM SD-M1712, 1004, max UDMA/33
> >          Jan 13 02:13:15 joe kernel: [    1.656502] ata1.00: configured for UDMA/33
> >          Jan 13 02:13:15 joe kernel: [    1.796038] ata6: SATA link down (SStatus 0 SControl 300)
> >          Jan 13 02:13:15 joe kernel: [    1.796076] ata5: SATA link down (SStatus 0 SControl 300)
> >          Jan 13 02:13:15 joe kernel: [    1.796132] ata4: SATA link down (SStatus 0 SControl 300)
> >          Jan 13 02:13:15 joe kernel: [    1.808018] usb 2-1: new low speed USB device number 2 using ohci_hcd
> >          Jan 13 02:13:15 joe kernel: [    1.968017] ata3: softreset failed (device not ready)
> >          Jan 13 02:13:15 joe kernel: [    1.968063] ata3: applying PMP SRST workaround and retrying
> >
> > This seems to be related to a hardware bug in the SB600 chipset [3]. The
> > discussion [4] indicates that setting `CONFIG_SATA_PMP=n` fixes this
> > issue. Although reading the option description [5] I do not understand
> > what it does and if it is advisable to disable it.
> 
> Turning that off would prevent you from using any SATA port multipliers 
> (usually found in things like multi-drive external enclosures). The 
> kernel already worked around the issue so I don't think you need to 
> worry about this.

[…]

To make the story short the board was switched from ASUS M2A-VM (SB600) [8]
to ASRock A780FullHD (AMD 780G/SB700) [9]. The drive is still a Western
Digital WD20EARS-60MVWB0 connected to the SATA port.

New about the ASRock A780FullHD is also that some kind of AHCI BIOS ROM
is executed after the BIOS. So maybe there is a separate controller
included in the board. I do not know. I only know this adds another 5
seconds to the boot process. ;-)

Anyway I still saw the error `softreset failed (device not ready)` in
the Linux kernel ring buffer. This is shown at every boot at 2 seconds
after Linux is executed and during every resume.

        $ dmesg | grep ata1
        [    1.722407] ata1: SATA max UDMA/133 abar m1024@0xfddff800 port 0xfddff900 irq 22
        [    2.212024] ata1: softreset failed (device not ready)
        [    2.212063] ata1: applying PMP SRST workaround and retrying
        [    2.384049] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        [    2.390552] ata1.00: ATA-8: WDC WD20EARS-60MVWB0, 51.0AB51, max UDMA/100
        [    2.390554] ata1.00: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32), AA
        [    2.396516] ata1.00: configured for UDMA/100
        [18757.377500] ata1: exception Emask 0x40 SAct 0x0 SErr 0x800 action 0x7
        [18757.377512] ata1: SError: { HostInt }
        [18757.377526] ata1: hard resetting link
        [18757.868051] ata1: softreset failed (device not ready)
        [18757.868063] ata1: applying PMP SRST workaround and retrying
        [18758.040049] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        [18758.052521] ata1.00: configured for UDMA/100
        [18758.068039] ata1: EH complete
        [18771.044020] ata1: softreset failed (device not ready)
        [18774.560018] ata1: softreset failed (device not ready)
        [18774.560020] ata1: applying PMP SRST workaround and retrying
        [18774.732029] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        [18774.744487] ata1.00: configured for UDMA/100

Building Linux myself and disabling SATA Port Multiplier support

        CONFIG_SATA_PMP=n

the message is gone now.

        $ dmesg | grep ata1
        [    1.683069] ata1: SATA max UDMA/133 abar m1024@0xfddff800 port 0xfddff900 irq 22
        [    2.000192] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        [    2.006761] ata1.00: ATA-8: WDC WD20EARS-60MVWB0, 51.0AB51, max UDMA/100
        [    2.006763] ata1.00: 3907029168 sectors, multi 0: LBA48 NCQ (depth 31/32), AA
        [    2.012806] ata1.00: configured for UDMA/100
        [  148.124029] ata1: link is slow to respond, please be patient (ready=0)

This was not there before and is after resume, but I guess this message
can be attributed to the drive needing time to spin up.

        [  152.772019] ata1: COMRESET failed (errno=-16)
        [  155.780033] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
        [  155.792109] ata1.00: configured for UDMA/100

Could the error message »softreset failed (device not ready)« be
reworded, since `CONFIG_SATA_PMP=y` is used at least in Debian for the
default Linux kernel image?

        softreset failed (device not ready): no Port Multiplier available, might be AMD chipset bug we will work around

Now trying to reword it myself, it is kind of hard, but hopefully we can
come up with something.


Thanks,

Paul


> > [1] https://en.wikipedia.org/wiki/Advanced_Host_Controller_Interface
> > [2] http://www.intel.com/technology/serialata/ahci.htm
> > [3] https://bugzilla.redhat.com/show_bug.cgi?id=468800
> > [4] http://www.linuxquestions.org/questions/linux-kernel-70/ata4-softreset-failed-device-not-ready-865155/
> > [5] http://cateee.net/lkddb/web-lkddb/SATA_PMP.html
> > [6] http://www.spinics.net/lists/linux-ide/msg41224.html
[7] http://www.spinics.net/lists/linux-ide/msg42654.html
[8] http://www.asus.com/Motherboards/AMD_AM2/M2AVM/
[9] http://www.asrock.com/mb/overview.asp?model=a780fullhd

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-07-04 15:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-01-16 10:03 ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)` Paul Menzel
2012-01-31  2:30 ` Robert Hancock
2012-07-04 15:33   ` solved: `softreset failed (device not ready)` gone with `CONFIG_SATA_PMP=n` (was: ASUS M2A-VM (SB600): AHCI setting in BIOS; AHCI and UDMA and `softreset failed (device not ready)`) Paul Menzel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.