Devices ata(7D)
NAME
ata - AT attachment disk driver
SYNOPSIS
ide@unit-address
DESCRIPTION
The ata driver supports disk and ATAPI CD/DVD devices con-
forming to the AT Attachment specification including IDE interfaces. Support is provided for both parallel ATA (PATA) and serial ATA (SATA) interfaces. Refer to the Solaris x86 Hardware Compatibility List for a list of supported controllers. PRECONFIGURE A PCI IDE controller can operate in compatibility mode or inPCI-native mode. If more than one controller is present in
the system, only one can operate in compatibility mode. If two PATA drives share the same controller, you must set one to master and the other to slave. If both a PATA diskdrive and a PATA CD-ROM drive utilize the same controller,
you can designate the disk drive as the master with the CD-
ROM drive as the slave, although this is not mandatory. Supported SettingsSupported settings for the primary controller when in compa-
tibility mode are: o IRQ Level: 14o I/O Address: 0x1F0
Supported settings for the secondary controller when in com-
patibility mode are: o IRQ Level: 15o I/O Address: 0x170
Note -
When in PCI-native mode, the IRQ and I/O address resources
are configured by the system BIOS. Known Problems and Limitations o This driver does not support any RAID featuresSunOS 5.11 Last change: 18 Apr 2007 1
Devices ata(7D)
present on a PATA/SATA controller. As a result, you should configure BIOS to select IDE mode rather than RAID mode. Some systems may require updating BIOS to allow switching modes. o On some systems, the SATA controller must have option ROM enabled or BIOS will not consider SATA drives as bootable devices.
o Panasonic LK-MC579B and the Mitsumi FX34005 IDE
CD-ROM drives are not supported and cannot be used
to install the Solaris operating environment.o CMD-604 is unable to handle simultaneous I/O on
both IDE interfaces. This defect causes the Solaris software to hang if both interfaces are used. Use only the primary IDE interface at address 0x1F0.o NEC CDR-260/CDR-260R/CDR-273 and Sony CDU-55E ATAPI
CD-ROM drives might fail during installation.
o Sony CDU-701 CD-ROM drives must be upgraded to use
firmware version 1.0r or later to support booting from the CD. A Compact Flash(CF) card can work as an ATA diskthrough a CF-to-ATA adapter. If both card and
adapter implement Compact Flash Version 2.0, DMA is supported. If either of them does not, you shouldset ata-disk-dma-enabled to '0.'
CONFIGURATIONThe ata driver properties are usually set in ata.conf. How-
ever, it may be convenient, or in some cases necessary, for you to set some of the DMA related properties as a systemglobal boot environment property. You set or modify proper-
ties in the boot environment immediately prior to booting the Solaris kernel using the GRUB boot loader kernel boot command line. You can also set boot environment properties using the eeprom(1M) command or by editing the bootenv.rc configuration file. If a property is set in both thedriver's ata.conf file and the boot environment, the
ata.conf property takes precedence.
Property modifications other than with the GRUB kernel boot command line are not effective until you reboot the system. Property modifications via the GRUB kernel boot command line do not persist across future boots.SunOS 5.11 Last change: 18 Apr 2007 2
Devices ata(7D)
Direct Memory Access is enabled for disks and atapi CD/DVD
by default. If you want to disable DMA when booting from aCD/DVD, you must first set atapi-cd-dma-enabled to 0 using
the GRUB kernel boot command line.ata-dma-enabled This property is examined before
the DMA properties discussed below. If it is set to '0,' DMAis disabled for all ATA/ATAPI devices, and no further property checks are made. If this property is absent or is set to '1,' DMA status is determined by further
examining one of the other pro-
perties listed below.ata-disk-dma-enabled This property is examined only
for ATA disk devices, and only ifata-dma-enabled is not set to
'0.'If ata-disk-dma-enabled set to
'0,' DMA is disabled for all ATAdisks in the system. If this pro-
perty is absent or set to '1,' DMA is enabled for all ATA disks and no further property checksare made. If needed, this pro-
perty should be created by theadministrator using the GRUB ker-
nel boot command line or the eeprom(1M) command.atapi-cd-dma-enabled This property is examined only
for ATAPI CD/DVD devices, and
only if ata-dma-enabled is not
set to '0.'If atapi-cd-dma-enabled is absent
or set to '0,' DMA is disabledfor all ATAPI CD/DVD's. If set to '1,' DMA is enabled and no further property checks are made. The Solaris installation program creates this property in the boot environment with a value of '1.' It can be changed with the GRUB kernel boot command line or eeprom(1M) as shown in the
SunOS 5.11 Last change: 18 Apr 2007 3
Devices ata(7D)
Example section of this manpage.atapi-other-dma-enabled This property is examined only
for non-CD/DVD ATAPI devices such
as ATAPI tape drives, and only ifata-dma-enabled is not set to
'0.'If atapi-other-dma-enabled is set
to '0,' DMA is disabled for allnon-CD/DVD ATAPI devices. If this
property is absent or set to '1,' DMA is enabled and no further property checks are made. If needed, this property should be created by the administratorusing the GRUB kernel boot com-
mand line or the eeprom(1M) com-
mand.drive0_block_factor ATA controllers support some
drive1_block_factor amount of buffering (blocking).
The purpose is to interrupt the host when an entire buffer fullof data has been read or written
instead of using an interrupt foreach sector. This reduces inter-
rupt overhead and significantly increases throughput. The driver interrogates the controller tofind the buffer size. Some con-
trollers hang when buffering isused, so the values in the confi-
guration file are used by the driver to reduce the effect of buffering (blocking). The values presented may be chosen from 0x1, 0x2, 0x4, 0x8 and 0x10. The values as shipped are set to 0x1, and they can be tuned to increase performance. If your controller hangs when attempting to use higher block factors, you may be unable to reboot the system. For x86 based systems, it is recommended that tuning be performed using aSunOS 5.11 Last change: 18 Apr 2007 4
Devices ata(7D)
duplicate of the /platform/i86pc/kernel directory subtree. This ensures that a bootable kernel subtree exists in the event of a failed test.ata-revert-to-defaults When rebooting or shutting down,
revert-
which allows the drive to returnthe driver can set a feature to the power-on settings when the
drive receives a software reset (SRST) sequence. If this property is present and set to 1, the driver will set the feature to revert to defaults during reset. Setting this property to 1 mayprevent some systems from soft-
rebooting and would require cycling the power to boot the system. If this property is not present the system will not set the feature to revert to defaults during reset.To determine the string to sub-
stitute for, boot your system (you may have to press the reset button or power-
cycle) and then view /var/adm/messages. Look for the string "IDE device at targ" or "ATAPI device at targ." The next line will contain the word "model" followed by the model number and a comma. Ignore all characters except letters,digits, ".", "_", and "-". Change
uppercase letters to lower case.If the string revert-
is longer than 31 characters, use only the first 31 characters.EXAMPLES
Example 1 Sample ata Configuration File
# for higher performance - set block factor to 16
drive0_block_factor=0x1 drive1_block_factor=0x1
max_transfer=0x100
flow_control="dmult" queue="qsort" disk="dadk" ;
SunOS 5.11 Last change: 18 Apr 2007 5
Devices ata(7D)
Example 2 Revert to defaults propertyrevert-st320420a=1;
Output of /var/adm/messages:Aug 17 06:49:43 caesar ata:[ID 640982 kern.info] IDE device at targ 0,
lun 0 lastlun 0x0Aug 17 06:49:43 caesar ata:[ID 521533 kern.info] model ST320420A, stat
Example 3 Change DMA property using GRUB To change a DMA property using the GRUB kernel boot command line: 1. Reset the system. 2. Press "e" to interrupt the timeout. 3. Select the kernel line. 4. Press "e."5. If there is no existing -B option:
Add: -B atapi-cd-dma-enabled=1
else...Add: atapi-cd-dma-enabled=1 to the end of the
current -B option. For example:-B foo=bar,atapi-
cd-dma-enabled=1.
6. Press Enter to commit the edited line to memory.(Does not write to the disk and is non-persistent).
7. Press 'b' to boot the modified entry. Example 4 Change DMA Property with eeprom(1M) To enable DMA for optical devices while the Solaris kernel is running with the eeprom(1M) system command:eeprom 'atapi-cd-dma-enabled=1'
SunOS 5.11 Last change: 18 Apr 2007 6
Devices ata(7D)
FILES/platform/i86pc/kernel/drv/ata
Device driver./platform/i86pc/kernel/drv/ata.conf
Configuration file. /boot/solaris/bootenv.rc Boot environment variables file for Solaris x86. eeprom(1M) can be used to modify properties in this file.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Architecture | x86 ||_____________________________|_____________________________|
SEE ALSO
eeprom(1M), attributes(5), grub(5)INCITS T13 ATA/ATAPI-7 specifications
SunOS 5.11 Last change: 18 Apr 2007 7