Page 1 of 1
Serial ATA spec questions
Posted: Thu Feb 18, 2021 5:48 am
by 8infy
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?
Re: Serial ATA spec questions
Posted: Thu Feb 18, 2021 12:31 pm
by foliagecanine
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?"
Re: Serial ATA spec questions
Posted: Thu Feb 18, 2021 12:50 pm
by 8infy
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"
Re: Serial ATA spec questions
Posted: Fri Feb 19, 2021 2:41 am
by xeyes
8infy wrote:
I wish AHCI spec would say something like "for more information refer to THIS_SPEC"
There's people wishing to pick up some $ selling the specs and memberships.
I hope they won't close the loophole of 'drafts'