NAME
atacontrol — ATA device driver control program
SYNOPSIS
atacontrol 〈 command〉 args
atacontrol
attach channel
atacontrol detach channel
atacontrol reinit channel
atacontrol create type [
interleave ] disk0 ... diskN
atacontrol delete
raid
atacontrol addspare raid disk
atacontrol rebuild raid
atacontrol status raid
atacontrol mode channel
[mastermode slavemode]
atacontrol info channel
atacontrol cap channel device
atacontrol enclosure channel device
atacontrol list
DESCRIPTION
The atacontrol utility is a control program that provides the user access and control to the FreeBSD ata(4) subsystem.
The atacontrol utility can cause severe system crashes and loss of data if used improperly. Please exercise caution when using this command!
The channel argument is the number of the ATA channel on which to operate. The following commands are supported:
attach
Attach an ATA channel. Devices on the channel are probed and attached as is done on boot.
detach
Detach an ATA channel. Devices on the channel are removed from the kernel, and all outstanding transfers etc. are returned back to the system marked as failed.
reinit
Reinitialize an ATA channel. Both devices on the channel are reset and initialized to the parameters the ATA driver has stored internally. Devices that have gone bad and no longer respond to the probe, or devices that have physically been removed, are removed from the kernel. Likewise are devices that show up during a reset, probed and attached.
create
Create a type ATA RAID. The type can be RAID0 (stripe), RAID1 (mirror), RAID0+1 or SPAN (JBOD). In case the RAID has a RAID0 component, the interleave must be specified in number of sectors. The RAID will be created of the individual disks named disk0 ... diskN.
Although the ATA driver allows for creating an ATA RAID on disks with any controller, there are restrictions. It is only possible to boot on an array if it is either located on a ‘‘real’’ ATA RAID controller like the Promise or Highpoint controllers, or if the RAID declared is of RAID1 or SPAN type; in case of a SPAN, the partition to boot must reside on the first disk in the SPAN.
delete
Delete a RAID array on a RAID capable ATA controller.
addspare
Add a spare disk to an existing RAID.
rebuild
Rebuild a RAID1 array on a RAID capable ATA controller.
status
Get the status of an ATA RAID.
mode
Without the two mode arguments, the current transfer modes of both devices are printed. If the mode arguments are given, the ATA driver is asked to change the transfer modes to those given. The ATA driver will reject modes that are not supported by the hardware. Modes are given like ‘‘PIO3’’, ‘‘udma2’’, ‘‘udma100’’, case does not matter. If one of the devices mode should not be changed, use a nonexisting mode as argument (i.e. ‘‘XXX’’), and the mode will remain unchanged.
Currently supported modes are: BIOSDMA, PIO0 (alias BIOSPIO), PIO1, PIO2, PIO3, PIO4, WDMA2, UDMA2 (alias UDMA33), UDMA4 (alias UDMA66), UDMA5 (alias UDMA100) and UDMA6 (alias UDMA133).
info
Show info about the attached devices on the channel. The device name and manufacture/version strings are shown.
cap
Show detailed info about the device on channel device where device is 0 for master and 1 for slave.
enclosure
Show detailed info about the enclosure on channel device where device is 0 for master and 1 for slave. Fan RPM speed, enclosure temperature, 5V and 12V levels are shown.
list
Show info about all attached devices on all active controllers.
EXAMPLES
To see the devices’ current access modes, use the command line:
atacontrol mode 0
which results in the modes of the devices being displayed as a string like this:
Master = WDMA2
Slave = PIO4
This means that ata0-master is in DMA mode, ata0-slave is in PIO mode, and so forth. You can set the mode with atacontrol and a string like the above, for example:
atacontrol mode 0 PIO4 PIO4
The new modes are set as soon as the atacontrol command returns.
SEE ALSO
HISTORY
The atacontrol utility first appeared in FreeBSD 4.6.
AUTHORS
The atacontrol utility was written by Søren Schmidt 〈 sos [AT] FreeBSD.org〉 .
This manual page was written by Søren Schmidt 〈 sos [AT] FreeBSD.org〉 .
BSD May 17, 2001 BSD