SDAHCI(3)SDAHCI(3)
NAME
sdahci – AHCI (Advanced Host Controller Interface) SATA (Serial ATA) storage device drivers
SYNOPSIS
bind -a #S /dev
unhandled troff command .sp
/dev/sdctl
unhandled troff command .sp
/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 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 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 following control messages for
sdahci:
ahci debug
Toggle debug messages. Default is off.
ahci idprint
Toggle printing of drive identification messages. Default is on.
Prints short messages when a drive is identified or removed.
ahci 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 seconds 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
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 persistent 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 manually);
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
sd(3)
http://download.intel.com/technology/serialata/pdf/rev1_2.pdf.
BUGS
None of enclosure management, LED control and port multipliers are supported.
ATAPI devices may not be reset when they have outstanding commands.