Hi Tejun, On Wed, Jul 13, 2011 at 6:14 AM, Tejun Heo <tj@xxxxxxxxxx> wrote: > On Fri, Jul 08, 2011 at 04:01:17PM -0700, Brian Norris wrote: >> I'm not sure if the "error_handler" and "hard reset" processes are >> intended for initialization...as I said I'm a little new! > > That's how it's supposed to work. EH is integral part of probing > sequence. I began to suspect that was the case. It just seemed awkward that the expected operation includes a code path named "error". >> I have a few other questions: >> >> What operation could be putting devices in DRQ or BSY states during >> initialization but before ahci_start_engine? > > Hmmm... I have no idea, maybe it has something to do with the first > D2H Reg FIS device sends after link gets reset during controller init? OK, I'll try to track that one down, but I think that DRQ is set much earlier in the initialization than that and won't be cleared until between ahci_power_up() and ahci_start_engine() - I tried wait-and-poll at several different points in the process to understand the HBA/device initialization process. > Hmmm... what happens if you don't comment out ahci_start_engine() call > from ahci_start_port()? I wasn't commenting out the ahci_start_engine() from ahci_start_port(). Can you clarify what you mean? > Is this the same IP block that Jian Peng was using? Yes, it is. I'm taking over some of his work. Thanks for the responses. Brian -- To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html