Merge commit 'b31320a79e2054c6739b5229259dbf98f3afc547' into merges
[unleashed.git] / share / man / man7d / ata.7d
blob9cbe5d0646d569cfbf2fb2f1335271ca67cd5c77
1 '\" te
2 .\" Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH ATA 7D "Aug 18, 2016"
7 .SH NAME
8 ata \- AT attachment disk driver
9 .SH SYNOPSIS
10 .LP
11 .nf
12 \fBide@unit-\fR\fIaddress\fR
13 .fi
15 .SH DESCRIPTION
16 .LP
17 The \fBata\fR driver supports disk and ATAPI CD/DVD devices conforming to the
18 AT Attachment specification including IDE interfaces. Support is provided for
19 both parallel ATA (PATA) and serial ATA (SATA) interfaces.
20 .sp
21 .LP
22 Refer to the \fISolaris x86 Hardware Compatibility List\fR for a list of
23 supported controllers.
24 .SH PRECONFIGURE
25 .LP
26 A PCI IDE controller can operate in compatibility mode or in PCI-native mode.
27 If more than one controller is present in the system, only one can operate in
28 compatibility mode.
29 .sp
30 .LP
31 If two PATA drives share the same controller, you must set one to master and
32 the other to slave. If both a PATA disk drive and a PATA CD-ROM drive utilize
33 the same controller, you can designate the disk drive as the master with the
34 CD-ROM drive as the slave, although this is not mandatory.
35 .SS "Supported Settings"
36 .LP
37 Supported settings for the primary controller when in compatibility mode are:
38 .RS +4
39 .TP
40 .ie t \(bu
41 .el o
42 IRQ Level: 14
43 .RE
44 .RS +4
45 .TP
46 .ie t \(bu
47 .el o
48 I/O Address: 0x1F0
49 .RE
50 .sp
51 .LP
52 Supported settings for the secondary controller when in compatibility mode are:
53 .RS +4
54 .TP
55 .ie t \(bu
56 .el o
57 IRQ Level: 15
58 .RE
59 .RS +4
60 .TP
61 .ie t \(bu
62 .el o
63 I/O Address: 0x170
64 .RE
65 .LP
66 Note -
67 .sp
68 .RS 2
69 When in PCI-native mode, the IRQ and I/O address resources are configured by
70 the system BIOS.
71 .RE
72 .SS "Known Problems and Limitations"
73 .RS +4
74 .TP
75 .ie t \(bu
76 .el o
77 This driver does not support any RAID features present on a PATA/SATA
78 controller. As a result, you should configure BIOS to select IDE mode rather
79 than RAID mode. Some systems may require updating BIOS to allow switching
80 modes.
81 .RE
82 .RS +4
83 .TP
84 .ie t \(bu
85 .el o
86 On some systems, the SATA controller must have option ROM enabled or BIOS will
87 not consider SATA drives as bootable devices.
88 .RE
89 .RS +4
90 .TP
91 .ie t \(bu
92 .el o
93 Panasonic LK-MC579B and the Mitsumi FX34005 IDE CD-ROM drives are not supported
94 and cannot be used to install the Solaris operating environment.
95 .RE
96 .RS +4
97 .TP
98 .ie t \(bu
99 .el o
100 CMD-604 is unable to handle simultaneous I/O on both IDE interfaces. This
101 defect causes the Solaris software to hang if both interfaces are used. Use
102 only the primary IDE interface at address 0x1F0.
104 .RS +4
106 .ie t \(bu
107 .el o
108 NEC CDR-260/CDR-260R/CDR-273 and Sony CDU-55E ATAPI CD-ROM drives might fail
109 during installation.
111 .RS +4
113 .ie t \(bu
114 .el o
115 Sony CDU-701 CD-ROM drives must be upgraded to use firmware version 1.0r or
116 later to support booting from the CD.
118 A Compact Flash(CF) card can work as an ATA disk through a CF-to-ATA adapter.
119 If both card and adapter implement Compact Flash Version 2.0, DMA is supported.
120 If either of them does not, you should set ata-disk-dma-enabled to '0.'
122 .SH CONFIGURATION
124 The ata driver properties are usually set in \fBata.conf\fR. However, it may be
125 convenient, or in some cases necessary, for you to set some of the DMA related
126 properties as a system global boot environment property. You set or modify
127 properties in the boot environment immediately prior to booting the illumos
128 kernel using the boot loader command line. You can also set
129 boot environment properties using the \fBeeprom\fR(8) command or by editing
130 the \fBbootenv.rc\fR configuration file. If a property is set in both the
131 driver's \fBata.conf\fR file and the boot environment, the \fBata.conf\fR
132 property takes precedence.
135 Property modifications other than with the boot loader command line are
136 not effective until you reboot the system.  Property modifications via the
137 boot loader command line do not persist across future boots.
140 Direct Memory Access is enabled for disks and atapi CD/DVD by default. If you
141 want to disable DMA when booting from a CD/DVD, you must first set
142 atapi-cd-dma-enabled  to 0 using the boot loader command line.
144 .ne 2
146 \fB\fBata-dma-enabled\fR\fR
148 .RS 27n
149 This property is examined before the DMA properties discussed below. If it is
150 set to '0,' DMA is disabled for all ATA/ATAPI devices, and no further property
151 checks are made. If this property is absent or is set to '1,' DMA status is
152 determined by further examining one of the other properties listed below.
156 .ne 2
158 \fB\fBata-disk-dma-enabled\fR\fR
160 .RS 27n
161 This property is examined only for ATA disk devices, and only if
162 ata-dma-enabled is not set to '0.'
164 If ata-disk-dma-enabled set to '0,' DMA is disabled for all ATA disks in the
165 system. If this property is absent or set to '1,' DMA is enabled for all ATA
166 disks and no further property checks are made. If needed, this property should
167 be created by the administrator using the boot loader command line or the
168 \fBeeprom\fR(8) command.
172 .ne 2
174 \fB\fBatapi-cd-dma-enabled\fR\fR
176 .RS 27n
177 This property is examined only for ATAPI CD/DVD devices, and only if
178 ata-dma-enabled is not set to '0.'
180 If atapi-cd-dma-enabled is absent or set to '0,' DMA is disabled for all ATAPI
181 CD/DVD's. If set to '1,' DMA is enabled and no further property checks are
182 made.
184 The Solaris installation program creates this property in the boot environment
185 with a value of '1.' It can be changed with the boot loader command line
186 or \fBeeprom\fR(8) as shown in the Example section of this manpage.
190 .ne 2
192 \fB\fBatapi-other-dma-enabled\fR\fR
194 .RS 27n
195 This property is examined only for non-CD/DVD ATAPI devices such as ATAPI tape
196 drives, and only if ata-dma-enabled is not set to '0.'
198 If atapi-other-dma-enabled is set to '0,' DMA is disabled for all non-CD/DVD
199 ATAPI devices. If this property is absent or set to '1,' DMA is enabled and no
200 further property checks are made.
202 If needed, this property should be created by the administrator using the
203 boot loader command line or the \fBeeprom\fR(8) command.
207 .ne 2
209 \fB\fBdrive0_block_factor\fR\fR
213 \fB\fBdrive1_block_factor\fR\fR
215 .RS 27n
216 \fBATA\fR controllers support some amount of buffering (blocking). The purpose
217 is to interrupt the host when an entire buffer full of data has been read or
218 written instead of using an interrupt for each sector. This reduces interrupt
219 overhead and significantly increases throughput. The driver interrogates the
220 controller to find the buffer size. Some controllers hang when buffering is
221 used, so the values in the configuration file are used by the driver to reduce
222 the effect of buffering (blocking). The values presented may be chosen from
223 \fB0x1\fR, \fB0x2\fR, \fB0x4\fR, \fB0x8\fR and \fB0x10\fR.
225 The values as shipped are set to \fB0x1\fR, and they can be tuned to increase
226 performance.
228 If your controller hangs when attempting to use higher block factors, you may
229 be unable to reboot the system. For x86 based systems, it is recommended that
230 tuning be performed using a duplicate of the \fB/platform/i86pc/kernel\fR
231 directory subtree. This ensures that a bootable kernel subtree exists in the
232 event of a failed test.
236 .ne 2
238 \fB\fBata-revert-to-defaults\fR\fR
242 \fB\fBrevert\(em<diskmodel>\fR\fR
244 .RS 27n
245 When rebooting or shutting down, the driver can set a feature which allows the
246 drive to return to the power-on settings when the drive receives a software
247 reset (SRST) sequence. If this property is present and set to 1, the driver
248 will set the feature to revert to defaults during reset. Setting this property
249 to 1 may prevent some systems from soft-rebooting and would require cycling the
250 power to boot the system. If this property is not present the system will not
251 set the feature to revert to defaults during reset.
253 To determine the string to substitute for <diskmodel>, boot your system (you
254 may have to press the reset button or power-cycle) and then view
255 \fB/var/adm/messages\fR. Look for the string "IDE device at targ" or "ATAPI
256 device at targ." The next line will contain the word "model" followed by the
257 model number and a comma. Ignore all characters except letters, digits, ".",
258 "_", and "-". Change uppercase letters to lower case. If the string
259 revert-<diskmodel> is longer than 31 characters, use only the first 31
260 characters.
263 .SH EXAMPLES
265 \fBExample 1 \fRSample ata Configuration File
267 .in +2
269 \fB# for higher performance - set block factor to 16
270         drive0_block_factor=0x1 drive1_block_factor=0x1
271         max_transfer=0x100
272         flow_control="dmult" queue="qsort" disk="dadk" ;\fR
274 .in -2
277 \fBExample 2 \fRRevert to defaults property
279 .in +2
281 \fBrevert-st320420a=1;\fR
283 .in -2
287 Output of \fB/var/adm/messages\fR:
290 .in +2
292 Aug 17 06:49:43 caesar ata:[ID 640982 kern.info] IDE device at targ 0,
293                            lun 0 lastlun 0x0
294 Aug 17 06:49:43 caesar ata:[ID 521533 kern.info] model ST320420A, stat
296 .in -2
299 \fBExample 3 \fRChange DMA property using the boot loader command line
302 To change a DMA property using the boot loader command line:
304 .RS +4
307 Reset the system.
309 .RS +4
312 Press "Esc" to interrupt the timeout.
314 .RS +4
317 Enter: boot -B atapi-cd-dma-enabled=1
320 \fBExample 4 \fRChange DMA Property with eeprom(8)
323 To enable DMA for optical devices while the Solaris kernel is running with the
324 \fBeeprom\fR(8) system command:
327 .in +2
329 eeprom 'atapi-cd-dma-enabled=1'
331 .in -2
333 .SH FILES
334 .ne 2
336 \fB\fB/platform/i86pc/kernel/drv/ata\fR\fR
338 .sp .6
339 .RS 4n
340 Device driver.
344 .ne 2
346 \fB\fB/platform/i86pc/kernel/drv/ata.conf\fR\fR
348 .sp .6
349 .RS 4n
350 Configuration file.
354 .ne 2
356 \fB\fB/boot/solaris/bootenv.rc\fR\fR
358 .sp .6
359 .RS 4n
360 Boot environment variables file for Solaris x86. \fBeeprom\fR(8) can be used
361 to modify properties in this file.
364 .SH ATTRIBUTES
366 See \fBattributes\fR(5) for descriptions of the following attributes:
371 box;
372 c | c
373 l | l .
374 ATTRIBUTE TYPE  ATTRIBUTE VALUE
376 Architecture    x86
379 .SH SEE ALSO
381 \fBeeprom\fR(8), \fBattributes\fR(5)
384 \fIINCITS T13 ATA/ATAPI-7\fR specifications