Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
ATA(4)                 FreeBSD Kernel Interfaces Manual                 ATA(4)

     ata, acd, ad, afd, ast - generic ATA/ATAPI disk controller driver

     For ISA based ATA/ATAPI support:
     device isa
     device ata0 at isa? port IO_WD1 irq 14
     device ata1 at isa? port IO_WD2 irq 15

     For PCI based ATA/ATAPI support:
     device pci
     device ata

     To support ATA compliant disk drives:
     device atadisk

     To support ATAPI CD-ROM, CDR, CDRW, DVD-ROM and DVD-RAM drives:
     device atapicd

     To support ATAPI floppy drives, such as the ZIP and LS120:
     device atapifd

     To support ATAPI tape drives:
     device atapist

     To enable static controller and device numbering (see the NOTES section
     options ATA_STATIC_ID

     The following tunables are setable from the loader:

     set to 1 for DMA access, 0 for PIO (default is DMA).

     set to 1 for DMA access, 0 for PIO (default is PIO).

     set to 1 to enable Write Caching, 0 to disable (default is enabled)
     (WARNING might cause data loss on power failures)

     set to 1 to enable Tagged Queuing support, 0 to disable (default is
     disabled) (only IBM DPTA and DTLA drives support that)

     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.

     The currently supported controllers with their maximum speed include:

     Acerlabs Aladdin               Ultra DMA 33 (UDMA2), 33 MB/sec
     AMD 756                        Ultra DMA 66 (UDMA4), 66 MB/sec
     AMD 766                        Ultra DMA 100 (UDMA5), 100 MB/sec
     CMD 646                        DMA 2 (WDMA2), 16 MB/sec
     CMD 648                        Ultra DMA 66 (UDMA4), 66 MB/sec
     CMD 649                        Ultra DMA 100 (UDMA5), 100 MB/sec
     Cypress 82C693                 DMA 2 (WDMA2), 16 MB/sec
     HighPoint HPT366               Ultra DMA 66 (UDMA4), 66 MB/sec
     HighPoint HPT370               Ultra DMA 100 (UDMA5), 100 MB/sec
     Intel PIIX                     DMA 2 (WDMA2), 16 MB/sec
     Intel PIIX3                    DMA 2 (WDMA2), 16 MB/sec
     Intel PIIX4                    Ultra DMA 33 (UDMA2), 33 MB/sec
     Intel ICH0                     Ultra DMA 33 (UDMA2), 33 MB/sec
     Intel ICH                      Ultra DMA 66 (UDMA4), 66 MB/sec
     Intel ICH2                     Ultra DMA 100 (UDMA5), 100 MB/sec
     Intel ICH3                     Ultra DMA 100 (UDMA5), 100 MB/sec
     Promise Ultra/Fasttrak-33      Ultra DMA 33 (UDMA2), 33 MB/sec
     Promise Ultra/Fasttrak-66      Ultra DMA 66 (UDMA4), 66 MB/sec
     Promise Ultra/Fasttrak-100     Ultra DMA 100 (UDMA5), 100 MB/sec
     ServerWorks ROSB4              Ultra DMA 33 (UDMA2), 33 MB/sec
     SiS 5591                       Ultra DMA 33 (UDMA2), 33 MB/sec
     Cyrix 5530                     Ultra DMA 33 (UDMA2), 33 MB/sec
     VIA 82C586                     Ultra DMA 33 (UDMA2), 33 MB/sec
     VIA 82C686a                    Ultra DMA 66 (UDMA4), 66 MB/sec
     VIA 82C686b                    Ultra DMA 100 (UDMA5), 100 MB/sec

     All unknown chipsets can be supported at the maximum speed of 16 MB/sec.

     The ata driver also allows for changes to the transfer mode of the
     devices at a later time when the system is up and running.

     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 not support it and can hang the system.

     To see the devices' current access modes, use the command line:

           sysctl hw.atamodes

     which results in the modes of the devices being displayed as a string
     like this:

           hw.atamodes: dma,pio,---,pio,dma,---,dma,---, (--- = no device)

     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:

           sysctl -w hw.atamodes=pio,pio,---,dma,pio,---,dma,---,

     The new modes are set as soon as the sysctl command returns.

     /dev/ad*                 ATA disk device nodes
     /dev/acd*                ATAPI CD-ROM device nodes
     /dev/afd*                ATAPI floppy drive device nodes
     /dev/ast*                ATAPI tape drive device nodes
     /sys/i386/conf/GENERIC   sample generic kernel config file for ata based

     Static numbering (enabled with the 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.

     The ata driver does not support MFM/RLL/ESDI (ST-506) style disks.

     Remember that in order to use UDMA4 (and above) mode you 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.

     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.

     The ata driver first appeared in FreeBSD 4.0.

     The ata driver was written by Soren Schmidt <>.

     This manual page was written by Jeroen Ruigrok van der Werven
     <> and Soren Schmidt <>.

FreeBSD 11.0-PRERELEASE        January 27, 2000        FreeBSD 11.0-PRERELEASE


Want to link to this manual page? Use this URL:

home | help