home | help
ATA(4)			     Kernel Interfaces Manual			  ATA(4)

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

SYNOPSIS
     For ISA based ATA/ATAPI support:
     device isa
     device ata

     In /boot/device.hints:
     hint.ata.0.at="isa"
     hint.ata.0.port="0x1f0"
     hint.ata.0.irq="14"
     hint.ata.1.at="isa"
     hint.ata.1.port="0x170"
     hint.ata.1.irq="15"

     For PC98 based ATA/ATAPI support:
     device isa
     device ata

     In /boot/device.hints:
     hint.atacbus.0.at="isa"
     hint.atacbus.0.port="0x640"
     hint.atacbus.0.irq="9"

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

     To support ATA compliant disk drives:
     device atadisk

     To support ATA software RAID's:
     device ataraid

     To support ATAPI CDROM, DVD and CD/DVD burner drives:
     device atapicd

     To support ATAPI floppy drives:
     device atapifd

     To support ATAPI tape drives:
     device atapist

     The following tunables are settable from the loader:

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

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

     hw.ata.wc
     set to 1 to enable Write Caching, 0 to disable (default is enabled).
     WARNING: can cause data loss on power failures and crashes.

DESCRIPTION
     The  ata driver provides access to ATA (IDE) and SerialATA disk drives, AT-
     API CDROM/DVD drives, ZIP/LS120 ATAPI drives and  ATAPI  tape  drives  con-
     nected to controllers according to the ATA/ATAPI standards.

     The currently supported ATA/SATA controller chips are:

     Acard:	     ATP850P, ATP860A, ATP860R, ATP865A, ATP865R.
     ALI:	     M5229, M5281, M5287, M5288, M5289.
     AMD:	     AMD756, AMD766, AMD768, AMD8111.
     ATI:	     IXP200, IXP300, IXP400.
     CMD:	     CMD646, CMD646U2, CMD648, CMD649.
     Cypress:	     Cypress 82C693.
     Cyrix:	     Cyrix 5530.
     HighPoint:      HPT302,  HPT366,  HPT368,	HPT370, HPT371, HPT372, HPT372N,
		     HPT374.
     Intel:	     6300ESB, 31244, PIIX, PIIX3, PIIX4, ESB2, ICH, ICH0,  ICH2,
		     ICH3, ICH4, ICH5, ICH6, ICH7, ICH8.
     ITE:	     IT8211F, IT8212F.
     JMicron:	     JMB360, JMB361, JMB363, JMB365, JMB366.
     Marvell	     88SX5040, 88SX5041, 88SX5080, 88SX5081, 88SX6041, 88SX6081.
     National:	     SC1100.
     NetCell:	     NC3000, NC5000.
     nVidia:	     nForce, nForce2, nForce2 MCP, nForce3, nForce3 MCP, nForce3
		     Pro, nForce4.
     Promise:	     PDC20246, 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.
     ServerWorks:    HT1000, ROSB4, CSB5, CSB6, K2, Frodo4, Frodo8.
     Silicon Image:  SiI0680, SiI3112, SiI3114, SiI3512.
     SiS:	     SIS180,  SIS181,  SIS182,	SIS5513, SIS530, SIS540, SIS550,
		     SIS620, SIS630, SIS630S, SIS633,  SIS635,	SIS730,  SIS733,
		     SIS735, SIS745, SIS961, SIS962, SIS963, SIS964, SIS965.
     VIA:	     VT6410,  VT6420,  VT6421,	VT82C586,  VT82C586B,  VT82C596,
		     VT82C596B, VT82C686, VT82C686A, VT82C686B, VT8231,  VT8233,
		     VT8233A, VT8233C, VT8235, VT8237, VT8237A, VT8251.

     Unknown  ATA  chipsets are supported in PIO modes, and if the standard bus-
     master DMA registers are present and contain valid setup, DMA is  also  en-
     abled,  although the max mode is limited to UDMA33, as it is not known what
     the chipset can do and how to program it.

     The ata driver can change the transfer mode and  various  other  parameters
     when the system is up and running.  See atacontrol(8).

     The  ata driver sets the maximum transfer mode supported by the hardware as
     default.  However the ata driver sometimes warns: "DMA limited  to  UDMA33,
     non-ATA66	cable  or  device".  This means that the ata driver has detected
     that the required 80 conductor cable is not present or  could  not  be  de-
     tected  properly, or that one of the devices on the channel only accepts up
     to UDMA2/ATA33.

     Unknown ATAPI devices are initialized to DMA mode if  the	hw.ata.atapi_dma
     tunable  is set to 1 and they support at least UDMA33 transfers.  Otherwise
     they are set to PIO mode because severe DMA problems are common even if the
     device capabilities indicate support.  You can always try to set  DMA  mode
     on  an  ATAPI  device  using atacontrol(8), but be aware that your hardware
     might not support it and can potentially hang  the  entire  system  causing
     data loss.

FILES
     /dev/ad*		     ATA disk device nodes
     /dev/ar*		     ATA RAID 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
			     systems

NOTES
     Please remember that in order to use UDMA4/ATA66 and above modes  you  must
     use  80  conductor  cables.  Please assure that ribbon cables are no longer
     than 45cm.  In case of rounded ATA cables, the length depends on the  qual-
     ity of the cables.  SATA cables can be up to 1m long according to the spec-
     ification.

     Static  device numbering (enabled with the ATA_STATIC_ID kernel option) re-
     serves a number for each possibly connected disk, even  when  not	present.
     This  is  useful  in hotswap scenarios where disks should always show up as
     the same numbered device, and not depend on attach order.

     Native Command Queuing (NCQ) on SATA drives is not yet supported.

SEE ALSO
     ataraid(4), atacontrol(8), burncd(8)

HISTORY
     The ata driver first appeared in FreeBSD 4.0.

AUTHORS
     Soren Schmidt <sos@FreeBSD.org>.

FreeBSD 6.4			February 8, 2007			  ATA(4)

home | help