Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Hi, I'm reading both Serial ATA and AHCI specifications and they both talk about the "Command register" and the "Device control register"
values, and I even see the osdev tutorial writing magic numbers into those fields in FIS. However, maybe I'm blind but I can't find a
single description about their layouts and bits. Both specs say something like clear ASD bit in the control register but don't actually say
what that bit is Could you tell me where I would look for that information and what those registers actually are?
foliagecanine wrote:What about the ATA/ATAPI spec?
Device Control Register is discussed in ATA/ATAPI-7 Vol. 1 Section 5.7
Command Register is discussed in ATA/ATAPI-7 Vol. 1 Section 5.3
A Ctrl+F search doesn't turn up anything for "ASD" in the AHCI spec at all. Where do you see "ASD?"
Thanks, "ASD" was just a random example of some bit flag the spec would tell you to set/clear and then never explain what that bit is
UPD: Awesome, looks like this is the spec I was looking for for about 4 hours today, cool. This fills in most of the blanks
I wish AHCI spec would say something like "for more information refer to THIS_SPEC"