]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - share/man/man4/ata.4
This commit was generated by cvs2svn to compensate for changes in r56893,
[FreeBSD/FreeBSD.git] / share / man / man4 / ata.4
1 .\"
2 .\" Copyright (c) 2000 Jeroen Ruigrok van der Werven
3 .\" Copyright (c) 2000 Søren Schmidt
4 .\" All rights reserved.
5 .\"
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
8 .\" are met:
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\"    notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\"    notice, this list of conditions and the following disclaimer in the
13 .\"    documentation and/or other materials provided with the distribution.
14 .\"
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 .\" SUCH DAMAGE.
26 .\"
27 .\" $FreeBSD$
28 .\"
29 .Dd January 27, 2000
30 .Dt ATA 4
31 .Os FreeBSD 4.0
32 .Sh NAME
33 .Nm ata
34 .Nd
35 Generic ATA/ATAPI disk controller driver
36 .Sh SYNOPSIS
37 For ISA based ATA/ATAPI support:
38 .Cd device isa
39 .Cd device ata0 at isa? port IO_WD1 irq 14
40 .Cd device ata1 at isa? port IO_WD2 irq 15
41 .Pp
42 For PCI based ATA/ATAPI support:
43 .Cd device pci
44 .Cd device ata
45 .Pp
46 To support ATA compliant disk drives:
47 .Cd device atadisk
48 .Pp
49 To support ATAPI CD-ROM, CDR, CDRW or DVD drives:
50 .Cd device atapicd
51 .Pp
52 To support ATAPI floppy drives,
53 such as the ZIP and LS120:
54 .Cd device atapifd
55 .Pp
56 To support ATAPI tape drives:
57 .Cd device atapist
58 .Pp
59 To set the controller numbering to static,
60 just like the
61 .Xr wd 4
62 driver:
63 .Cd options ATA_STATIC_ID
64 .Pp
65 To enable DMA on an ATAPI device:
66 .Cd options ATA_ENABLE_ATAPI_DMA
67 .Sh DESCRIPTION
68 This driver provides access to disk drives, CD-ROM drives,
69 ZIP drives and tape streamers connected to controllers
70 according to the ATA and ATAPI standards.
71 These devices are also commonly known as IDE or EIDE devices.
72 .Pp
73 The currently supported controllers with their maximum speed include:
74 .Pp
75 .Bl -tag -width "Promise Fasttrak-33    " -compact
76 .It Acerlabs Aladdin
77 Ultra DMA 33 (UDMA2), 33 MB/sec
78 .It AMD 756
79 Ultra DMA 66 (UDMA4), 66 MB/sec
80 .It HighPoint HPT366
81 Ultra DMA 66 (UDMA4), 66 MB/sec
82 .It Intel PIIX
83 DMA 2 (WDMA2), 16 MB/sec
84 .It Intel PIIX3
85 DMA 2 (WDMA2), 16 MB/sec
86 .It Intel PIIX4
87 Ultra DMA 33 (UDMA2), 33 MB/sec
88 .It Intel ICH
89 Ultra DMA 33 (UDMA2), 33 MB/sec
90 .It Promise Fasttrak-33
91 Ultra DMA 33 (UDMA2), 33 MB/sec
92 .It Promise Fasttrak-66
93 Ultra DMA 66 (UDMA4), 66 MB/sec
94 .It Promise Ultra-33
95 Ultra DMA 33 (UDMA2), 33 MB/sec
96 .It Promise Ultra-66
97 Ultra DMA 66 (UDMA4), 66 MB/sec
98 .It SiS 5591
99 Ultra DMA 33 (UDMA2), 33 MB/sec
100 .It VIA 82C586
101 Ultra DMA 33 (UDMA2), 33 MB/sec
102 .It VIA 82C686
103 Ultra DMA 66 (UDMA4), 66 MB/sec
104 .El
105 .Pp
106 All unknown chipsets can be supported at the maximum speed of 16 MB/sec.
107 .Pp
108 The ata driver also allows for changes to the transfer mode of the devices
109 at a later time when the system is up and running.
110 .Pp
111 The driver attempts to set the maximum performance transfer mode on your disk
112 drives by selecting the highest possible DMA mode.
113 ATAPI devices are left in PIO mode because DMA problems are common despite the
114 device specifications.
115 You can always try to set DMA mode on an ATAPI device using the sysctl
116 method described here,
117 but be aware that your hardware might
118 .Em not
119 support it and can
120 .Em hang
121 the system.
122 .Pp
123 To see the devices' current access modes, use the command line:
124 .Pp
125 .Dl sysctl hw.atamodes
126 .Pp
127 which results in the modes of the devices being displayed as a string
128 like this:
129 .Pp
130 .Dl hw.atamodes: dma,pio,---,pio,dma,---,dma,---,   (--- = no device)
131 .Pp
132 This means that ata0-master is in DMA mode,
133 ata0-slave is in PIO mode,
134 and so forth.
135 You can set the mode with sysctl -w and a string like the above,
136 for example:
137 .Pp
138 .Dl sysctl -w hw.atamodes=pio,pio,---,dma,pio,---,dma,---,
139 .Pp
140 The new modes are set as soon as the sysctl command returns.
141 .Pp
142 .Sh FILES
143 .Bl -tag -width "/sys/i386/conf/GENERIC " -compact
144 .It Pa /dev/ad*
145 ATA disk device nodes
146 .It Pa /dev/acd*
147 ATAPI CD-ROM device nodes
148 .It Pa /dev/afd*
149 ATAPI floppy drive device nodes
150 .It Pa /dev/ast*
151 ATAPI tape drive device nodes
152 .It Pa /sys/i386/conf/GENERIC
153 sample generic kernel config file for ata based systems
154 .El
155 .Sh NOTES
156 The ata driver does not support MFM/RLL/ESDI (ST-506) style disks.
157 .Pp
158 Remember that in order to use UDMA4 mode you
159 .Em have
160 to use a special 80 conductor cable,
161 and the driver tries to determine if you have such a cable
162 attached before setting UDMA4 mode.
163 .Pp
164 The use of UDMA4(66MHz) and non-UDMA4 devices on the same ATA channel is not
165 recommended,
166 unless they are run at the non-UDMA4 device's lower speed.
167 The driver has been designed to handle this but some older devices do
168 not like this.
169 .Sh AUTHORS
170 The ata driver was written by
171 .An Søren Schmidt
172 .Aq sos@freebsd.org .
173 .Pp
174 This manual page was written by
175 .An Jeroen Ruigrok van der Werven
176 .Aq asmodai@freebsd.org
177 and
178 .An Søren Schmidt
179 .Aq sos@freebsd.org .