229 lines
6.4 KiB
Groff
229 lines
6.4 KiB
Groff
.\"
|
|
.\" Copyright (c) 2000 Jeroen Ruigrok van der Werven
|
|
.\" Copyright (c) 2000 Søren Schmidt
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
|
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
|
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
|
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
|
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
|
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
|
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
|
.\" SUCH DAMAGE.
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd January 27, 2000
|
|
.Dt ATA 4
|
|
.Os FreeBSD
|
|
.Sh NAME
|
|
.Nm ata ,
|
|
.Nm acd ,
|
|
.Nm ad ,
|
|
.Nm afd ,
|
|
.Nm ast
|
|
.Nd
|
|
Generic ATA/ATAPI disk controller driver
|
|
.Sh SYNOPSIS
|
|
For ISA based ATA/ATAPI support:
|
|
.Cd device isa
|
|
.Cd device ata0 at isa? port IO_WD1 irq 14
|
|
.Cd device ata1 at isa? port IO_WD2 irq 15
|
|
.Pp
|
|
For PCI based ATA/ATAPI support:
|
|
.Cd device pci
|
|
.Cd device ata
|
|
.Pp
|
|
To support ATA compliant disk drives:
|
|
.Cd device atadisk
|
|
.Pp
|
|
To support ATAPI CD-ROM, CDR, CDRW, DVD-ROM and DVD-RAM drives:
|
|
.Cd device atapicd
|
|
.Pp
|
|
To support ATAPI floppy drives,
|
|
such as the ZIP and LS120:
|
|
.Cd device atapifd
|
|
.Pp
|
|
To support ATAPI tape drives:
|
|
.Cd device atapist
|
|
.Pp
|
|
To enable static controller and device numbering
|
|
(see the
|
|
.Sx NOTES
|
|
section below):
|
|
.Cd options ATA_STATIC_ID
|
|
.Pp
|
|
To enable DMA on an ATAPI device:
|
|
.Cd options ATA_ENABLE_ATAPI_DMA
|
|
.Pp
|
|
To enable Tagged Queuing support (only IBM DPTA and DTLA drives support that)
|
|
.Cd options ATA_ENABLE_TAGS
|
|
.Sh DESCRIPTION
|
|
This driver provides access to disk drives, ATAPI CD-ROM and DVD drives,
|
|
ZIP drives and tape streamers connected to controllers
|
|
according to the ATA and ATAPI standards.
|
|
These devices are also commonly known as IDE or EIDE devices.
|
|
.Pp
|
|
The currently supported controllers with their maximum speed include:
|
|
.Pp
|
|
.Bl -tag -width "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" -compact
|
|
.It Acerlabs Aladdin
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It AMD 756
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.It CMD 646
|
|
DMA 2 (WDMA2), 16 MB/sec
|
|
.It CMD 648
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.It CMD 649
|
|
Ultra DMA 100 (UDMA5), 100 MB/sec
|
|
.It Cypress 82C693
|
|
DMA 2 (WDMA2), 16 MB/sec
|
|
.It HighPoint HPT366
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.It HighPoint HPT370
|
|
Ultra DMA 100 (UDMA5), 100 MB/sec
|
|
.It Intel PIIX
|
|
DMA 2 (WDMA2), 16 MB/sec
|
|
.It Intel PIIX3
|
|
DMA 2 (WDMA2), 16 MB/sec
|
|
.It Intel PIIX4
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It Intel ICH0
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It Intel ICH
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.It Intel ICH2
|
|
Ultra DMA 100 (UDMA5), 100 MB/sec
|
|
.It Promise Ultra/Fasttrak-33
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It Promise Ultra/Fasttrak-66
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.It Promise Ultra/Fasttrak-100
|
|
Ultra DMA 100 (UDMA5), 100 MB/sec
|
|
.It ServerWorks ROSB4
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It SiS 5591
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It Cyrix 5530
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It VIA 82C586
|
|
Ultra DMA 33 (UDMA2), 33 MB/sec
|
|
.It VIA 82C686
|
|
Ultra DMA 66 (UDMA4), 66 MB/sec
|
|
.El
|
|
.Pp
|
|
All unknown chipsets can be supported at the maximum speed of 16 MB/sec.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
driver also allows for changes to the transfer mode of the devices
|
|
at a later time when the system is up and running.
|
|
.Pp
|
|
The driver attempts to set the maximum performance transfer mode on your disk
|
|
drives by selecting the highest possible DMA mode.
|
|
ATAPI devices are left in PIO mode because DMA problems are common despite the
|
|
device specifications.
|
|
You can always try to set DMA mode on an ATAPI device using the sysctl
|
|
method described here,
|
|
but be aware that your hardware might
|
|
.Em not
|
|
support it and can
|
|
.Em hang
|
|
the system.
|
|
.Pp
|
|
To see the devices' current access modes, use the command line:
|
|
.Pp
|
|
.Dl sysctl hw.atamodes
|
|
.Pp
|
|
which results in the modes of the devices being displayed as a string
|
|
like this:
|
|
.Pp
|
|
.Dl hw.atamodes: dma,pio,---,pio,dma,---,dma,---, (--- = no device)
|
|
.Pp
|
|
This means that ata0-master is in DMA mode,
|
|
ata0-slave is in PIO mode,
|
|
and so forth.
|
|
You can set the mode with sysctl -w and a string like the above,
|
|
for example:
|
|
.Pp
|
|
.Dl sysctl -w hw.atamodes=pio,pio,---,dma,pio,---,dma,---,
|
|
.Pp
|
|
The new modes are set as soon as the sysctl command returns.
|
|
.Pp
|
|
.Sh FILES
|
|
.Bl -tag -width "/sys/i386/conf/GENERIC " -compact
|
|
.It Pa /dev/ad*
|
|
ATA disk device nodes
|
|
.It Pa /dev/acd*
|
|
ATAPI CD-ROM device nodes
|
|
.It Pa /dev/afd*
|
|
ATAPI floppy drive device nodes
|
|
.It Pa /dev/ast*
|
|
ATAPI tape drive device nodes
|
|
.It Pa /sys/i386/conf/GENERIC
|
|
sample generic kernel config file for
|
|
.Nm
|
|
based systems
|
|
.El
|
|
.Sh NOTES
|
|
Static numbering
|
|
(enabled with the
|
|
.Dv ATA_STATIC_ID
|
|
kernel option)
|
|
reserves a number for each possibly connected disk,
|
|
even when not present.
|
|
This may result in odd situations where,
|
|
for example,
|
|
ad0 and ad2 exist in the absence of ad1.
|
|
The advantage is that the addition of the formerly absent drive
|
|
does not cause the numbers of the other drives to change.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
driver does not support MFM/RLL/ESDI (ST-506) style disks.
|
|
.Pp
|
|
Remember that in order to use UDMA4 mode you
|
|
.Em have
|
|
to use a special 80 conductor cable,
|
|
and the driver tries to determine if you have such a cable
|
|
attached before setting UDMA4 mode.
|
|
.Pp
|
|
The use of UDMA4(66MHz) and higher together with non-UDMA4 devices on
|
|
the same ATA channel is not recommended,
|
|
unless they are run at the non-UDMA4 device's lower speed.
|
|
The driver has been designed to handle that kind of setup but lots of
|
|
older devices do not like this.
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
driver first appeared in
|
|
.Fx 4.0 .
|
|
.Sh AUTHORS
|
|
.An -nosplit
|
|
The
|
|
.Nm
|
|
driver was written by
|
|
.An S\(/oren Schmidt
|
|
.Aq sos@FreeBSD.org .
|
|
.Pp
|
|
This manual page was written by
|
|
.An Jeroen Ruigrok van der Werven
|
|
.Aq asmodai@FreeBSD.org
|
|
and
|
|
.An S\(/oren Schmidt
|
|
.Aq sos@FreeBSD.org .
|