May 29, 2008 PCIIDE 4

### NAME

pciide - PCI IDE disk controllers driver

### SYNOPSIS

pciide* at pci? dev ? function ? flags 0x0000 pciide* at pnpbios? index ?

### DESCRIPTION

The pciide driver supports the PCI IDE controllers as specified in the "PCI IDE controller specification, revision 1.0" draft, and provides the interface with the hardware for the ata driver. Please use the chip-specific drivers for the following controllers for enhanced and DMA support:

  - Acard ATP850 (Ultra/33) and ATP860 (Ultra/66) IDE Controllers: acardide(4)
  - Acer labs M5229 IDE Controller: aceride(4)
  - Advanced Micro Devices AMD-756, 766, and 768 IDE Controllers: viaide(4)
  - Advanced Micro Devices Geode IDE Controllers: geodeide(4)
  - CMD Tech PCI0643, PCI0646, PCI0648, and PCI0649 IDE Controllers: cmdide(4)
  - Contaq Microsystems/Cypress CY82C693 IDE Controller: cypide(4)
  - HighPoint HPT366 Ultra/66, HPT370 Ultra/100, HPT372, and HPT374 Ultra/133 IDE controller: hptide(4)
  - Intel PIIX, PIIX3, and PIIX4 IDE Controllers: piixide(4)
  - Intel i31244 Serial ATA controller: artsata(4)
  - Intel 82801 (ICH/ICH0/ICH2/ICH3/ICH4/ICH5/ICH6) IDE Controllers: piixide(4)
  - NVIDIA nForce/nForce2 IDE Controllers: viaide(4)
  - OPTi 82c621 (plus a few of its derivatives) IDE Controllers: optiide(4)
  - Promise PDC20246 (Ultra/33), PDC20262 (Ultra/66), PDC20265/PDC20267 (Ultra100), PDC20268 (Ultra/100TX2 and Ultra/100TX2v2), Ultra/133, Ultra/133TX2 and Ultra/133TX2v2 PCI IDE controllers: pdcide(4)
  - Serverworks K2 SATA controllers: svwsata(4)
  - Silicon Image 0680 IDE controller: cmdide(4)
  - Silicon Image SATALink 3112 Serial ATA controller: satalink(4)
  - Silicon Image SteelVine 3124/3132/3531 Serial ATA II controller: siisata(4)
  - Silicon Integrated System 5597/5598 IDE controller: siside(4)
  - Symphony Labs 82C105 and Winbond W83C553F IDE controller: slide(4)
  - VIA Technologies VT82C586, VT82C586A, VT82C596A, VT82C686A, VT8233A, and VT8235 IDE Controllers: viaide(4)

The 0x0001 flag forces the pciide driver to use DMA when there is no explicit DMA mode setting support for the controller but DMA is present. If the BIOS didn't set up the controller properly, this can cause a machine hang.

The 0x0002 flag forces the pciide driver to disable DMA on chipsets for which DMA would normally be enabled. This can be used as a debugging aid, or to work around problems where the IDE controller is wired up to the system incorrectly.

### SEE ALSO

acardide(4), aceride(4), artsata(4), ata(4), atapi(4), cmdide(4), cypide(4), geodeide(4), hptide(4), intro(4), optiide(4), pci(4), pdcide(4), piixide(4), pnpbios(4), satalink(4), siisata(4), siside(4), slide(4), viaide(4), wd(4), wdc(4)