The ahci driver is a SATA framework-compliant HBA driver that supports SATA HBA controllers that are compatible with the Advanced Host Controller Interface 1.0 specification. AHCI is an Intel-developed protocol that describes the register-level interface for host controllers for serial ATA 1.0a and Serial ATA II. The AHCI 1.0 specification describes the interface between the system software and the host controller hardware.
The ahci driver currently supports the Intel ICH6/7/8/9/10, VIA vt8251 and JMicron AHCI controllers which are compliant with the Advanced Host Controller Interface 1.0 specification. The Intel ICH6/7/8/9 and VIA vt8251 controllers support standard SATA features. The ahci driver currently supports hard disk, ATAPI DVD, ATAPI tape, ATAPI disk (i.e. Dell RD1000), hotplug, NCQ (Native command queuing) and Port multipliers (Silicon Image 3726/4726). Power management is not yet supported.
The ahci driver is configured by defining properties in ahci.conf. These properties override the default settings.
Contact the hardware vendor before modifying these properties. The HBA might not work properly if above properties are not correctly configured.
The ahci driver supports following modifiable properties:
Specifies the number of PRDT in the command table. The PRDT (Physical Region Descriptor Table) contains the scatter/gather list for the data transfer. The number of PRDT in the command table can be from 1 to 65,535. The default value is 257, (1MB (256KB/pg * 256) + 1).. See the AHCI specification for more details.
Enables the MSI interrupt. The ahci driver always enables the MSI (Message Signaled Interrupt) if the HBA supports. The default value is 1. Specifying a 0 disables MSI and uses legacy interrupt.
Enables 64-bit DMA support. The ahci driver always enables 64-bit DMA addressing for the data transfer and the communication system descriptors if the HBA supports. The default value is 1. Specifying a 0 disables 64-bit dma addressing for the data buffer and communication system descriptors respectively.
The ahci driver disables 64-bit DMA addressing for data buffer on AMD/ATI SB600 by default. The default value is 1. Specifying 0 switches on 64-bit DMA addressing for the data buffer on SB600 chip sets.
The ahci driver disables 64-bit DMA addressing for communication system descriptors on AMD/ATI SB series (SB600/700/710/750/800) by default. The default value is 1. Specifying 0 switches on 64-bit DMA addressing for communication system descriptors on these chip sets.
64–bit ELF kernel module (x86)
Optional configuration file
See attributes(5) for descriptions of the following attribute:
Advanced Host Controller Interface 1.0
Writing Device Drivers
To bind the ahci driver to your controller, choose the [AHCI] BIOS option.
Booting is not supported if toggle exists between the [IDE] and [AHCI] BIOS options