.\" $NetBSD: pciide.4,v 1.65 2010/11/07 11:51:14 wiz Exp $
.\"
.\" Copyright (c) 1998,2003 Manuel Bouyer.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
.\" INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd November 7, 2010
.Dt PCIIDE 4
.Os
.Sh NAME
.Nm pciide
.Nd PCI IDE disk controllers driver
.Sh SYNOPSIS
.Cd "pciide* at pci? dev ? function ? flags 0x0000"
.Cd "pciide* at pnpbios? index ?"
.Sh DESCRIPTION
The
.Nm
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
.Ic ata
driver.
Please use the chip-specific drivers for the following controllers for
enhanced and DMA support:
.Bl -dash -compact -offset indent
.It
Acard ATP850 (Ultra/33) and ATP860 (Ultra/66) IDE Controllers:
.Xr acardide 4
.It
Acer labs M5229 IDE Controller:
.Xr aceride 4
.It
Advanced Micro Devices AMD-756, 766, and 768 IDE Controllers:
.Xr viaide 4
.It
Advanced Micro Devices Geode IDE Controllers:
.Xr geodeide 4
.It
CMD Tech PCI0643, PCI0646, PCI0648, and PCI0649 IDE Controllers:
.Xr cmdide 4
.It
Contaq Microsystems/Cypress CY82C693 IDE Controller:
.Xr cypide 4
.It
HighPoint HPT366 Ultra/66, HPT370 Ultra/100, HPT372, and HPT374 Ultra/133
IDE controller:
.Xr hptide 4
.It
Intel PIIX, PIIX3, and PIIX4 IDE Controllers:
.Xr piixide 4
.It
Intel i31244 Serial ATA controller:
.Xr artsata 4
.It
Intel 82801 (ICH/ICH0/ICH2/ICH3/ICH4/ICH5/ICH6) IDE Controllers:
.Xr piixide 4
.It
Intel SCH IDE Controllers:
.Xr schide 4
.It
NVIDIA nForce/nForce2 IDE Controllers:
.Xr viaide 4
.It
OPTi 82c621 (plus a few of its derivatives) IDE Controllers:
.Xr optiide 4
.It
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:
.Xr pdcide 4
.It
Serverworks K2 SATA controllers:
.Xr svwsata 4
.It
Silicon Image 0680 IDE controller:
.Xr cmdide 4
.It
Silicon Image SATALink 3112 Serial ATA controller:
.Xr satalink 4
.It
Silicon Image SteelVine 3124/3132/3531 Serial ATA II controller:
.Xr siisata 4
.It
Silicon Integrated System 5597/5598 IDE controller:
.Xr siside 4
.It
Symphony Labs 82C105 and Winbond W83C553F IDE controller:
.Xr slide 4
.It
VIA Technologies VT82C586, VT82C586A, VT82C596A, VT82C686A, VT8233A,
and VT8235 IDE Controllers:
.Xr viaide 4
.El
.Pp
The 0x0001 flag forces the
.Nm
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.
.Pp
The 0x0002 flag forces the
.Nm
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.
.Sh SEE ALSO
.Xr acardide 4 ,
.Xr aceride 4 ,
.Xr artsata 4 ,
.Xr ata 4 ,
.Xr atapi 4 ,
.Xr cmdide 4 ,
.Xr cypide 4 ,
.Xr geodeide 4 ,
.Xr hptide 4 ,
.Xr intro 4 ,
.Xr optiide 4 ,
.Xr pci 4 ,
.Xr pdcide 4 ,
.Xr piixide 4 ,
.Xr pnpbios 4 ,
.Xr satalink 4 ,
.Xr schide 4 ,
.Xr siisata 4 ,
.Xr siside 4 ,
.Xr slide 4 ,
.Xr viaide 4 ,
.Xr wd 4 ,
.Xr wdc 4