xref: /freebsd/share/man/man4/ata.4 (revision f64d65b27e2fb13598e6bff20fb54649e097fc39)
1689701d8SJeroen Ruigrok van der Werven.\"
2688e92fcSSøren Schmidt.\" Copyright (c) 2003 S�ren Schmidt <sos@FreeBSD.org>
3689701d8SJeroen Ruigrok van der Werven.\" All rights reserved.
4689701d8SJeroen Ruigrok van der Werven.\"
5689701d8SJeroen Ruigrok van der Werven.\" Redistribution and use in source and binary forms, with or without
6689701d8SJeroen Ruigrok van der Werven.\" modification, are permitted provided that the following conditions
7689701d8SJeroen Ruigrok van der Werven.\" are met:
8689701d8SJeroen Ruigrok van der Werven.\" 1. Redistributions of source code must retain the above copyright
9688e92fcSSøren Schmidt.\"    notice, this list of conditions and the following disclaimer,
10688e92fcSSøren Schmidt.\"    without modification, immediately at the beginning of the file.
11689701d8SJeroen Ruigrok van der Werven.\" 2. Redistributions in binary form must reproduce the above copyright
12689701d8SJeroen Ruigrok van der Werven.\"    notice, this list of conditions and the following disclaimer in the
13689701d8SJeroen Ruigrok van der Werven.\"    documentation and/or other materials provided with the distribution.
14688e92fcSSøren Schmidt.\" 3. The name of the author may not be used to endorse or promote products
15688e92fcSSøren Schmidt.\"    derived from this software without specific prior written permission.
16689701d8SJeroen Ruigrok van der Werven.\"
17688e92fcSSøren Schmidt.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
18688e92fcSSøren Schmidt.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
19688e92fcSSøren Schmidt.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
20688e92fcSSøren Schmidt.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
21688e92fcSSøren Schmidt.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
22688e92fcSSøren Schmidt.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23688e92fcSSøren Schmidt.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24688e92fcSSøren Schmidt.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25688e92fcSSøren Schmidt.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
26688e92fcSSøren Schmidt.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27689701d8SJeroen Ruigrok van der Werven.\"
28689701d8SJeroen Ruigrok van der Werven.\" $FreeBSD$
29689701d8SJeroen Ruigrok van der Werven.\"
30f64d65b2SAlexander Motin.Dd June 24, 2009
318ea643adSJeroen Ruigrok van der Werven.Dt ATA 4
323d45e180SRuslan Ermilov.Os
33689701d8SJeroen Ruigrok van der Werven.Sh NAME
342d311b79SOllivier Robert.Nm ata ,
35688e92fcSSøren Schmidt.Nm ar ,
362d311b79SOllivier Robert.Nm acd ,
372d311b79SOllivier Robert.Nm ad ,
382d311b79SOllivier Robert.Nm afd ,
392d311b79SOllivier Robert.Nm ast
40eb083802SRuslan Ermilov.Nd generic ATA/ATAPI disk controller driver
41689701d8SJeroen Ruigrok van der Werven.Sh SYNOPSIS
42689701d8SJeroen Ruigrok van der WervenFor ISA based ATA/ATAPI support:
43689701d8SJeroen Ruigrok van der Werven.Cd device isa
44547d4262SKazutaka YOKOTA.Cd device ata
45547d4262SKazutaka YOKOTA.Pp
46547d4262SKazutaka YOKOTAIn
47547d4262SKazutaka YOKOTA.Pa /boot/device.hints :
48547d4262SKazutaka YOKOTA.Cd hint.ata.0.at="isa"
49547d4262SKazutaka YOKOTA.Cd hint.ata.0.port="0x1f0"
50547d4262SKazutaka YOKOTA.Cd hint.ata.0.irq="14"
51547d4262SKazutaka YOKOTA.Cd hint.ata.1.at="isa"
52547d4262SKazutaka YOKOTA.Cd hint.ata.1.port="0x170"
53547d4262SKazutaka YOKOTA.Cd hint.ata.1.irq="15"
54689701d8SJeroen Ruigrok van der Werven.Pp
558ba4488cSSøren SchmidtFor PC98 based ATA/ATAPI support:
568ba4488cSSøren Schmidt.Cd device isa
578ba4488cSSøren Schmidt.Cd device ata
588ba4488cSSøren Schmidt.Pp
598ba4488cSSøren SchmidtIn
608ba4488cSSøren Schmidt.Pa /boot/device.hints :
618ba4488cSSøren Schmidt.Cd hint.atacbus.0.at="isa"
628ba4488cSSøren Schmidt.Cd hint.atacbus.0.port="0x640"
638ba4488cSSøren Schmidt.Cd hint.atacbus.0.irq="9"
648ba4488cSSøren Schmidt.Pp
65689701d8SJeroen Ruigrok van der WervenFor PCI based ATA/ATAPI support:
66689701d8SJeroen Ruigrok van der Werven.Cd device pci
67689701d8SJeroen Ruigrok van der Werven.Cd device ata
68689701d8SJeroen Ruigrok van der Werven.Pp
69689701d8SJeroen Ruigrok van der WervenTo support ATA compliant disk drives:
70689701d8SJeroen Ruigrok van der Werven.Cd device atadisk
71689701d8SJeroen Ruigrok van der Werven.Pp
728ff5952aSSøren SchmidtTo support ATA software RAID's:
73688e92fcSSøren Schmidt.Cd device ataraid
74688e92fcSSøren Schmidt.Pp
758ff5952aSSøren SchmidtTo support ATAPI CDROM, DVD and CD/DVD burner drives:
76689701d8SJeroen Ruigrok van der Werven.Cd device atapicd
77689701d8SJeroen Ruigrok van der Werven.Pp
788ff5952aSSøren SchmidtTo support ATAPI floppy drives:
79689701d8SJeroen Ruigrok van der Werven.Cd device atapifd
80689701d8SJeroen Ruigrok van der Werven.Pp
81689701d8SJeroen Ruigrok van der WervenTo support ATAPI tape drives:
82689701d8SJeroen Ruigrok van der Werven.Cd device atapist
83689701d8SJeroen Ruigrok van der Werven.Pp
84369bf356SMaxim KonovalovThe following tunables are settable from the loader:
85f4c4488aSRuslan Ermilov.Bl -ohang
86f4c4488aSRuslan Ermilov.It Va hw.ata.ata_dma
8737068be4SMurray Stokelyset to 1 for DMA access, 0 for PIO (default is DMA).
8819a71edbSPhilip Paeps.It Va hw.ata.ata_dma_check_80pin
8919a71edbSPhilip Paepsset to 0 to disable the 80pin cable check (default is 1, check the cable)
90f4c4488aSRuslan Ermilov.It Va hw.ata.atapi_dma
91e306ffcaSPeter Pentchevset to 1 for DMA access, 0 for PIO (default is DMA).
92f4c4488aSRuslan Ermilov.It Va hw.ata.wc
932cc6cfc6SMax Khonset to 1 to enable Write Caching, 0 to disable (default is enabled).
948ff5952aSSøren Schmidt.Em WARNING :
951474c0cdSGiorgos Keramidascan cause data loss on power failures and crashes.
96f64d65b2SAlexander Motin.It Va hint.atapci.X.msi
97f64d65b2SAlexander Motinset to 1 to allow Message Signalled Interrupts (MSI) to be used by
98f64d65b2SAlexander Motinspecified PCI ATA controller, if supported.
99f64d65b2SAlexander Motin.It Va hint.ata.X.pm_level
100f64d65b2SAlexander Motincontrols SATA interface Power Management for specified channel,
101f64d65b2SAlexander Motinallowing to save some power by the cost of additional command latency.
102f64d65b2SAlexander MotinPossible values:
103f64d65b2SAlexander Motin.Bl -tag -compact
104f64d65b2SAlexander Motin.It 0
105f64d65b2SAlexander Motininterface Power Management is disabled, default value.
106f64d65b2SAlexander Motin.It 1
107f64d65b2SAlexander Motindevice is allowed to initiate PM state change, host is passive.
108f64d65b2SAlexander Motin.It 2
109f64d65b2SAlexander Motinhost initiates PARTIAL PM state transition every time port becomes idle.
110f64d65b2SAlexander Motin.It 3
111f64d65b2SAlexander Motinhost initiates SLUMBER PM state transition every time port becomes idle.
112f64d65b2SAlexander Motin.El
113f64d65b2SAlexander MotinModes 2 and 3 are implemented only for AHCI driver now.
114f4c4488aSRuslan Ermilov.El
115689701d8SJeroen Ruigrok van der Werven.Sh DESCRIPTION
116688e92fcSSøren SchmidtThe
117688e92fcSSøren Schmidt.Nm
118688e92fcSSøren Schmidtdriver provides access to ATA (IDE) and SerialATA disk drives,
119688e92fcSSøren SchmidtATAPI CDROM/DVD drives, ZIP/LS120 ATAPI drives and ATAPI tape drives
120688e92fcSSøren Schmidtconnected to controllers according to the ATA/ATAPI standards.
121689701d8SJeroen Ruigrok van der Werven.Pp
122688e92fcSSøren SchmidtThe currently supported ATA/SATA controller chips are:
123689701d8SJeroen Ruigrok van der Werven.Pp
124688e92fcSSøren Schmidt.Bl -tag -width "Silicon Image:" -compact
125688e92fcSSøren Schmidt.It Acard:
126c6fd52cbSJoel DahlATP850P, ATP860A, ATP860R, ATP865A, ATP865R.
127688e92fcSSøren Schmidt.It ALI:
128dbd1ddacSChristian BruefferM5229, M5281, M5287, M5288, M5289.
129688e92fcSSøren Schmidt.It AMD:
130da31a86aSChristian BruefferAMD756, AMD766, AMD768, AMD8111, CS5536.
1313a22b03dSJoel Dahl.It ATI:
1323a22b03dSJoel DahlIXP200, IXP300, IXP400.
133688e92fcSSøren Schmidt.It CMD:
134c94b6c42SJoel DahlCMD646, CMD646U2, CMD648, CMD649.
135688e92fcSSøren Schmidt.It Cypress:
136688e92fcSSøren SchmidtCypress 82C693.
137d8f934daSChristian Brueffer.It Cyrix:
138d8f934daSChristian BruefferCyrix 5530.
139688e92fcSSøren Schmidt.It HighPoint:
140c94b6c42SJoel DahlHPT302, HPT366, HPT368, HPT370, HPT371, HPT372, HPT372N, HPT374.
141688e92fcSSøren Schmidt.It Intel:
1425899d29bSXin LI6300ESB, 31244, PIIX, PIIX3, PIIX4, ESB2, ICH, ICH0, ICH2, ICH3, ICH4, ICH5, ICH6, ICH7, ICH8, ICH9, ICH10.
14339d1acc3SChristian Brueffer.It ITE:
144129e5ac6SChristian BruefferIT8211F, IT8212F, IT8213F.
145aed1a1f1SChristian Brueffer.It JMicron:
146dbd1ddacSChristian BruefferJMB360, JMB361, JMB363, JMB365, JMB366, JMB368.
147232c858fSChristian Brueffer.It Marvell
1480ea46b37SChristian Brueffer88SX5040, 88SX5041, 88SX5080, 88SX5081, 88SX6041, 88SX6081, 88SX6101, 88SX6141.
149688e92fcSSøren Schmidt.It National:
150688e92fcSSøren SchmidtSC1100.
151cebf4a4eSChristian Brueffer.It NetCell:
152cebf4a4eSChristian BruefferNC3000, NC5000.
153688e92fcSSøren Schmidt.It nVidia:
154c94b6c42SJoel DahlnForce, nForce2, nForce2 MCP, nForce3, nForce3 MCP, nForce3 Pro, nForce4.
155688e92fcSSøren Schmidt.It Promise:
156280b8c11SJoel DahlPDC20246, PDC20262, PDC20263, PDC20265, PDC20267, PDC20268, PDC20269, PDC20270, PDC20271, PDC20275, PDC20276, PDC20277, PDC20318, PDC20319, PDC20371, PDC20375, PDC20376, PDC20377, PDC20378, PDC20379, PDC20571, PDC20575, PDC20579, PDC20580, PDC20617, PDC20618, PDC20619, PDC20620, PDC20621, PDC20622, PDC40518, PDC40519, PDC40718, PDC40719.
157688e92fcSSøren Schmidt.It ServerWorks:
158dbd1ddacSChristian BruefferHT1000, ROSB4, CSB5, CSB6, K2, Frodo4, Frodo8.
159688e92fcSSøren Schmidt.It Silicon Image:
160199dc74dSChristian BruefferSiI0680, SiI3112, SiI3114, SiI3124, SiI3132, SiI3512.
161688e92fcSSøren Schmidt.It SiS:
162c6fd52cbSJoel DahlSIS180, SIS181, SIS182, SIS5513, SIS530, SIS540, SIS550, SIS620, SIS630, SIS630S, SIS633, SIS635, SIS730, SIS733, SIS735, SIS745, SIS961, SIS962, SIS963, SIS964, SIS965.
163688e92fcSSøren Schmidt.It VIA:
164da31a86aSChristian BruefferVT6410, VT6420, VT6421, VT82C586, VT82C586B, VT82C596, VT82C596B, VT82C686, VT82C686A, VT82C686B, VT8231, VT8233, VT8233A, VT8233C, VT8235, VT8237, VT8237A, VT8237S, VT8251.
165689701d8SJeroen Ruigrok van der Werven.El
166689701d8SJeroen Ruigrok van der Werven.Pp
167688e92fcSSøren SchmidtUnknown ATA chipsets are supported in PIO modes, and if the standard
1688ff5952aSSøren Schmidtbusmaster DMA registers are present and contain valid setup, DMA is
169c48524c2SMike Pritchardalso enabled, although the max mode is limited to UDMA33, as it is
170688e92fcSSøren Schmidtnot known what the chipset can do and how to program it.
171689701d8SJeroen Ruigrok van der Werven.Pp
172ed403116SRuslan ErmilovThe
173ed403116SRuslan Ermilov.Nm
174688e92fcSSøren Schmidtdriver can change the transfer mode and various other parameters
1758ff5952aSSøren Schmidtwhen the system is up and running.
1768ff5952aSSøren SchmidtSee
177f4c4488aSRuslan Ermilov.Xr atacontrol 8 .
178689701d8SJeroen Ruigrok van der Werven.Pp
179688e92fcSSøren SchmidtThe
180bf7f20c2SRuslan Ermilov.Nm
181688e92fcSSøren Schmidtdriver sets the maximum transfer mode supported by the hardware as default.
182d962d52aSRuslan ErmilovHowever the
183f7b6f951SSøren Schmidt.Nm
184688e92fcSSøren Schmidtdriver sometimes warns:
1858ff5952aSSøren Schmidt.Dq Sy "DMA limited to UDMA33, non-ATA66 cable or device".
186688e92fcSSøren SchmidtThis means that
187688e92fcSSøren Schmidtthe
188c9753c58SSimon L. B. Nielsen.Nm
1898ff5952aSSøren Schmidtdriver has detected that the required 80 conductor cable is not present
1908ff5952aSSøren Schmidtor could not be detected properly,
1918ff5952aSSøren Schmidtor that one of the devices on the channel only accepts up
192f1bec2c1SSimon L. B. Nielsento UDMA2/ATA33.
193f1bec2c1SSimon L. B. NielsenThe
19419a71edbSPhilip Paeps.Va hw.ata.ata_dma_check_80pin
19519a71edbSPhilip Paepstunable can be set to 0 to disable this check.
196688e92fcSSøren Schmidt.Pp
19732e940feSPeter PentchevUnknown ATAPI devices are initialized to DMA mode if the
19832e940feSPeter Pentchev.Va hw.ata.atapi_dma
19932e940feSPeter Pentchevtunable is set to 1 and they support at least UDMA33 transfers.
20032e940feSPeter PentchevOtherwise they are set to PIO mode because severe DMA problems are
2018ff5952aSSøren Schmidtcommon even if the device capabilities indicate support.
202f4c4488aSRuslan ErmilovYou can always try to set DMA mode on an ATAPI device using
203f4c4488aSRuslan Ermilov.Xr atacontrol 8 ,
204689701d8SJeroen Ruigrok van der Wervenbut be aware that your hardware might
205689701d8SJeroen Ruigrok van der Werven.Em not
206688e92fcSSøren Schmidtsupport it and can potentially
207689701d8SJeroen Ruigrok van der Werven.Em hang
208688e92fcSSøren Schmidtthe entire system causing data loss.
209689701d8SJeroen Ruigrok van der Werven.Sh FILES
210d962d52aSRuslan Ermilov.Bl -tag -width ".Pa /sys/i386/conf/GENERIC" -compact
211689701d8SJeroen Ruigrok van der Werven.It Pa /dev/ad*
212689701d8SJeroen Ruigrok van der WervenATA disk device nodes
213688e92fcSSøren Schmidt.It Pa /dev/ar*
214688e92fcSSøren SchmidtATA RAID device nodes
215689701d8SJeroen Ruigrok van der Werven.It Pa /dev/acd*
216689701d8SJeroen Ruigrok van der WervenATAPI CD-ROM device nodes
217689701d8SJeroen Ruigrok van der Werven.It Pa /dev/afd*
218689701d8SJeroen Ruigrok van der WervenATAPI floppy drive device nodes
219689701d8SJeroen Ruigrok van der Werven.It Pa /dev/ast*
220689701d8SJeroen Ruigrok van der WervenATAPI tape drive device nodes
221689701d8SJeroen Ruigrok van der Werven.It Pa /sys/i386/conf/GENERIC
222ed403116SRuslan Ermilovsample generic kernel config file for
223ed403116SRuslan Ermilov.Nm
224ed403116SRuslan Ermilovbased systems
225689701d8SJeroen Ruigrok van der Werven.El
226689701d8SJeroen Ruigrok van der Werven.Sh NOTES
227688e92fcSSøren SchmidtPlease remember that in order to use UDMA4/ATA66 and above modes you
228688e92fcSSøren Schmidt.Em must
229c9753c58SSimon L. B. Nielsenuse 80 conductor cables.
2308ff5952aSSøren SchmidtPlease assure that ribbon cables are no longer than 45cm.
2318ff5952aSSøren SchmidtIn case of rounded ATA cables, the length depends on the
232c9753c58SSimon L. B. Nielsenquality of the cables.
2338ff5952aSSøren SchmidtSATA cables can be up to 1m long according to the specification.
234688e92fcSSøren Schmidt.Pp
235688e92fcSSøren SchmidtStatic device numbering
236793da78fSSheldon Hearn(enabled with the
237793da78fSSheldon Hearn.Dv ATA_STATIC_ID
238793da78fSSheldon Hearnkernel option)
239793da78fSSheldon Hearnreserves a number for each possibly connected disk,
240c9753c58SSimon L. B. Nielseneven when not present.
241c48524c2SMike PritchardThis is useful in hotswap scenarios
2428ff5952aSSøren Schmidtwhere disks should always show up as the same numbered device,
243688e92fcSSøren Schmidtand not depend on attach order.
244d5b7ae98SWilko Bulte.Pp
245d5b7ae98SWilko BulteNative Command Queuing (NCQ) on SATA drives is not yet supported.
246f4c4488aSRuslan Ermilov.Sh SEE ALSO
247a431f9bbSChristian Brueffer.Xr ataraid 4 ,
2489a9c1407SRuslan Ermilov.Xr atacontrol 8 ,
249855fee85SSøren Schmidt.Xr burncd 8
250ed403116SRuslan Ermilov.Sh HISTORY
251ed403116SRuslan ErmilovThe
252ed403116SRuslan Ermilov.Nm
253ed403116SRuslan Ermilovdriver first appeared in
254ed403116SRuslan Ermilov.Fx 4.0 .
2558ff5952aSSøren Schmidt.Sh AUTHORS
2568e8536e1SRuslan Ermilov.An S\(/oren Schmidt
257d905b0b6SMike Pritchard.Aq sos@FreeBSD.org .
258