SATA: Difference between revisions
[unchecked revision] | [unchecked revision] |
(→See Also: Added AHCI link) |
No edit summary |
||
Line 2: | Line 2: | ||
If you want to try anyway, then get the ATA7, and ATA8 technical docs from www.t13.org. Then maybe try paying $25 to get the technical specs from www.sata-io.org. Hopefully, the discrepancies between the standards aren't too bad. |
If you want to try anyway, then get the ATA7, and ATA8 technical docs from www.t13.org. Then maybe try paying $25 to get the technical specs from www.sata-io.org. Hopefully, the discrepancies between the standards aren't too bad. |
||
==Introduction== |
|||
SATA, short for Serial ATA, is a new method of connecting disk drives, optical drives, etc. to the motherboard. SATA provides higher transfer rates than PATA and is backward compatible. If an OS does not recognize SATA, it can use drives like ordinary PATA drives with no issues. |
|||
==Detection and Initialization== |
==Detection and Initialization== |
Revision as of 17:28, 7 May 2012
Apparently, there are three supposedly definitive, conflicting standards for SATA. It may be best to wait for the industry to shake out a little more completely, before trying to write SATA drivers.
If you want to try anyway, then get the ATA7, and ATA8 technical docs from www.t13.org. Then maybe try paying $25 to get the technical specs from www.sata-io.org. Hopefully, the discrepancies between the standards aren't too bad.
Introduction
SATA, short for Serial ATA, is a new method of connecting disk drives, optical drives, etc. to the motherboard. SATA provides higher transfer rates than PATA and is backward compatible. If an OS does not recognize SATA, it can use drives like ordinary PATA drives with no issues.
Detection and Initialization
Send a standard IDENTIFY command to the drive (0xEC). The drive should respond with an error in the ERR bit of the Status Register, and a pair of "signature bytes". On the Primary ATA bus, you get the signature bytes by reading IO ports 0x1F4 and 0x1F5, and you should see values of 0x3C and 0xC3.
x86 Examples
Comments
See Also
External Links
- http://www.ata-atapi.com -- Public Domain C driver sourcecode, including SATA, Busmatering DMA, ATAPI -- not perfect, but good.
- The Serial ATA International Organization