AHCI(4) BSD Kernel Interfaces Manual AHCI(4)NAMEahci — Advanced Host Controller Interface for Serial ATA
SYNOPSIS
To compile this driver into the kernel, place the following line in your
kernel configuration file:
device ahci
Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
ahci_load="YES"
DESCRIPTION
The ahci driver provides support for Serial ATA controllers conforming to
the Advanced Host Controller Interface specification.
Several AHCI capable controllers also provide a compatibility mode that
causes them to appear as a traditional ATA controller supported by
nata(4).
Although ahci controllers are actual ATA controllers, the driver emulates
SCSI via a translation layer.
LOADER TUNABLES
The following hints may be set in loader.conf(5) to control the ahci
driver's behavior. Note that the hint need only exist, so removing it
requires commenting it out.
Usually both the nata(4) and the ahci drivers are loaded. The nata(4)
driver will pick up any ata-like devices which the ahci driver misses.
If the ahci driver is disabled the nata(4) driver will typically pick up
the ahci devices, albeit under the ad disk name rather than the da disk
name.
hint.ahci.disabled=1
The ahci driver can be told to force a lower-speed 1.5Gb link speed if
necessary, and can also be told to refrain from attempting to send cer‐
tain higher-level ATA commands to initialize ATA features which some
devices might not properly implement.
hint.ahci.force150=1
hint.ahci.nofeatures=1
SYSCTL VARIABLES
Link power management can be set with the sysctl
hw.ahci%d.%d.link_pwr_mgmt to 0 for `disabled', 1 for `medium', and 2 for
`aggressive'. Link power state can be read with the sysctl
hw.ahci%d.%d.link_pwr_state.
SEE ALSOintro(4), nata(4), pci(4), scsi(4), sili(4), loader.conf(5)HISTORY
The ahci driver first appeared in DragonFly 2.3.
AUTHORS
The ahci driver was originally written by David Gwynne ⟨dlg@openbsd.org⟩
and Christopher Pascoe ⟨pascoe@openbsd.org⟩ for OpenBSD.
It was ported to DragonFly by Matt Dillon ⟨dillon@apollo.backplane.com⟩
who added new features such as hot-plug and port multiplier support.
BSD August 3, 2009 BSD