Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ (3) — Plan9 4th Edition

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sd(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 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:

­iahci debug Toggle debug messages.  Default is off. 

­iahci idprint Toggle printing of drive identification messages.  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 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 ALSO

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. 

Plan 9  —  December 08, 2011

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026