SDAHCI(3) SDAHCI(3)
NAME
sdahci - AHCI (Advanced Host Controller Interface) SATA
(Serial ATA) storage device drivers
SYNOPSIS
bind -a #S /dev
/dev/sdctl
/dev/sdEn/ctl
/dev/sdEn/raw
/dev/sdEn/data
...
DESCRIPTION
The sdahci driver provides access to AHCI devices via the
sd(3) interface. AHCI devices use the ATA command set. The
AHCI programming interface supports up to 32 hot-swappable
ATAPI or hard disk-like devices per controller. The legacy
IDE interface provided by sdata.c supports up to four drives
which are not hot-swappable. Controller drive letters are
assigned from `E' onward.
AHCI controllers are detected automatically. Currently ALi,
AMD, Intel, JMicron, Marvell, SiS, VIA, and nVidia con-
trollers are detected. Intel controllers need to have AHCI
enabled in the BIOS. For ICH (I/O Controller Hub) parts
this typically means enabling enhanced mode and AHCI. For
ESB (Enterprise South Bridge) -based parts, only enhanced
mode needs to be enabled. Due to hardware errata, Intel
ich9-based AHCI does not support hot swapping and drives
must be connected to the lowest-numbered free port.
The top level control file, /dev/sdctl, supports the follow-
ing control messages for sdahci:
iahci debug Toggle debug messages. Default is off.
iahci idprint Toggle printing of drive identification mes-
sages. Default is on. Prints short messages
when a drive is identified or removed.
iahci aprint Print verbose ATAPI debugging messages.
Default is off.
The device-level ctl file supports:
mode speed
Change the connection speed to one of auto, satai,
sataii, or sataiii.
state state
Force a transition to the named state. The states are:
null ignored (may only be reached manually);
Page 1 Plan 9 (printed 10/30/25)
SDAHCI(3) SDAHCI(3)
missing not detected;
new powered down or newly discovered;
ready ready for commands;
reset being reset gently;
portreset being fully reset;
offline device failed portreset (a port reset will
be attempted periodically).
For devices present at boot, the transition is from state
new to state ready.
SOURCE
/sys/src/9/pc/sdiahci.c
SEE ALSO
atazz(8), sd(3), 9load(8)
http://download.intel.com/technology/serialata/pdf/rev1_3.pdf.
BUGS
Enclosure management, LED control and port multipliers are
supported.
ATAPI devices may not be reset when they have outstanding
commands.
Page 2 Plan 9 (printed 10/30/25)