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. The AHCI programming interface supports up
to 32 hot-swappable ATAPI or disk-like devices per con-
troller. The legacy IDE interface provided by sdata.c sup-
ports up to four drives which are not hot-swappable. Con-
troller drive letters are assigned from `E' onward.
AHCI controllers are detected automatically. Currently
Intel and AMD controllers are detected. Intel controllers
need to have AHCI enabled in the BIOS. For `ich' parts this
typically means enabling enhanced mode and AHCI. For ESB
(Enterprise South Bridge) -based parts, only enhanced mode
needs to be enabled. 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:
flushcache Send the ATA/ATAPI FLUSH CACHE command (0xe7
or 0xea). This command may take up to 60 sec-
onds to complete.
identify Send the ATA/ATAPI IDENTIFY DEVICE command
(0xec). If device information has changed,
the new size, features and serial will be
noted. If changed, I/O on existing file
descriptors will result in the error string
Page 1 Plan 9 (printed 12/13/25)
SDAHCI(3) SDAHCI(3)
`media or partition has changed'.
mode speed Change the connection speed to one of auto,
satai or sataii.
nop Send the ATA NOP command (0) if the device
supports it. Per standard, the result is
always an error.
smart Send the ATA/ATAPI SMART RETURN STATUS command
(0xda). This will fail unless SMART is
enabled on the drive.
smartdisable Disable SMART on the drive. SMART is a per-
sistent property of the drive.
smartenable Enable SMART on the drive.
state state Force a transition to the named state. The
states are:
null ignored (may only be reached manu-
ally);
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 periodi-
cally).
For devices present at boot, the transition is from state
new to state ready.
SOURCE
/sys/src/9/pc/sdiahci.c
SEE ALSO
sd(3)
http://download.intel.com/technology/serialata/pdf/rev1_2.pdf.
BUGS
None of enclosure management, LED control and port multipli-
ers are supported.
ATAPI devices may not be reset when they have outstanding
commands.
Page 2 Plan 9 (printed 12/13/25)