:  ahci0: AHCI 1.0 capabilities 
0xc722f00<S64A,NCQ,SALP,SAL,SCLO,SPM,PMD,SSC,PSC>, 1 ports, 32 tags/port, gen 1 
(1.5Gbps) and 2 (3Gbps)
:  IOAPIC: try clearing IRR for irq 24
:  ahci0.0: START HARDRESET
:  ahci0.0: Transient Errors: 400000<PRCS>
:  ahci0.0: Restart 00000002
:  ahci0.0.15: Poll timeout slot 1 CMD: 64010<HPCP,PMA,FR,FRE> TFD: 0x77<ERR> 
SERR: 40000<DIAG.W>
:  ahci0.0: PMPROBE First FIS failed
:  panic: ahci_put_err_ccb(1) but CI 00000002 != 0 (act=00000000 sact=00000000)
:
:  mp_lock = 00000000; cpuid = 0
:
:..
:kernel minus nata driver, which ended up with the same panic.  Is there
:anything else I can try or any suggestions on where to look at?  The kernel
:is compiled from the source code as of a22da047710, so I believe it has all
:AHCI-related fixes.
:
:Best Regards.

    Hmm.  Very interesting.  It is getting a PRCS interrupt while it
    is trying to send a software reset, then attempting to restart
    the software reset.  Oh joy.  I clear any pending PRCS from the port
    hardreset sequence so that means the target device is resetting
    its PHY when we try to send a device reset to it, which it is not
    supposed to do.

    Try this patch.  It is completely untested (other then a compile test):

        fetch http://apollo.backplane.com/DFlyMisc/ahci14.patch

    If that doesn't work try also (with patch still applied) increasing
    the timeout in the ahci_poll() command in ahci_pm_port_probe() around
    line around line 145 from 1000 to 5000.

                                                -Matt


Reply via email to