mempolicy: use MPOL_F_LOCAL to Indicate Preferred Local Policy
[pandora-kernel.git] / Documentation / ide / ide.txt
index e3b3425..0c78f4b 100644 (file)
@@ -71,29 +71,6 @@ This driver automatically probes for most IDE interfaces (including all PCI
 ones), for the drives/geometries attached to those interfaces, and for the IRQ
 lines being used by the interfaces (normally 14, 15 for ide0/ide1).
 
-For special cases, interfaces may be specified using kernel "command line"
-options.  For example,
-
-       ide3=0x168,0x36e,10     /* ioports 0x168-0x16f,0x36e, irq 10 */
-
-Normally the irq number need not be specified, as ide.c will probe for it:
-
-       ide3=0x168,0x36e        /* ioports 0x168-0x16f,0x36e */
-
-The standard port, and irq values are these:
-
-       ide0=0x1f0,0x3f6,14
-       ide1=0x170,0x376,15
-       ide2=0x1e8,0x3ee,11
-       ide3=0x168,0x36e,10
-
-Note that the first parameter reserves 8 contiguous ioports, whereas the
-second value denotes a single ioport. If in doubt, do a 'cat /proc/ioports'.
-
-In all probability the device uses these ports and IRQs if it is attached
-to the appropriate ide channel.  Pass the parameter for the correct ide
-channel to the kernel, as explained above.
-
 Any number of interfaces may share a single IRQ if necessary, at a slight
 performance penalty, whether on separate cards or a single VLB card.
 The IDE driver automatically detects and handles this.  However, this may
@@ -105,27 +82,26 @@ Drives are normally found by auto-probing and/or examining the CMOS/BIOS data.
 For really weird situations, the apparent (fdisk) geometry can also be specified
 on the kernel "command line" using LILO.  The format of such lines is:
 
-       hdx=cyls,heads,sects,wpcom,irq
-or     hdx=cdrom
+       ide_core.chs=[interface_number.device_number]:cyls,heads,sects
+or     ide_core.cdrom=[interface_number.device_number]
 
-where hdx can be any of hda through hdh, Three values are required
-(cyls,heads,sects).  For example:
+For example:
 
-       hdc=1050,32,64  hdd=cdrom
+       ide_core.chs=1.0:1050,32,64  ide_core.cdrom=1.1
 
-either {hda,hdb} or {hdc,hdd}.  The results of successful auto-probing may
-override the physical geometry/irq specified, though the "original" geometry
-may be retained as the "logical" geometry for partitioning purposes (fdisk).
+The results of successful auto-probing may override the physical geometry/irq
+specified, though the "original" geometry may be retained as the "logical"
+geometry for partitioning purposes (fdisk).
 
 If the auto-probing during boot time confuses a drive (ie. the drive works
 with hd.c but not with ide.c), then an command line option may be specified
 for each drive for which you'd like the drive to skip the hardware
 probe/identification sequence.  For example:
 
-       hdb=noprobe
+       ide_core.noprobe=0.1
 or
-       hdc=768,16,32
-       hdc=noprobe
+       ide_core.chs=1.0:768,16,32
+       ide_core.noprobe=1.0
 
 Note that when only one IDE device is attached to an interface, it should be
 jumpered as "single" or "master", *not* "slave".  Many folks have had
@@ -141,9 +117,9 @@ If for some reason your cdrom drive is *not* found at boot time, you can force
 the probe to look harder by supplying a kernel command line parameter
 via LILO, such as:
 
-       hdc=cdrom       /* hdc = "master" on second interface */
+       ide_core.cdrom=1.0      /* "master" on second interface (hdc) */
 or
-       hdd=cdrom       /* hdd = "slave" on second interface */
+       ide_core.cdrom=1.1      /* "slave" on second interface (hdd) */
 
 For example, a GW2000 system might have a hard drive on the primary
 interface (/dev/hda) and an IDE cdrom drive on the secondary interface
@@ -184,13 +160,6 @@ provided it is mounted with the default block size of 1024 (as above).
 Please pass on any feedback on any of this stuff to the maintainer,
 whose address can be found in linux/MAINTAINERS.
 
-Note that if BOTH hd.c and ide.c are configured into the kernel,
-hd.c will normally be allowed to control the primary IDE interface.
-This is useful for older hardware that may be incompatible with ide.c,
-and still allows newer hardware to run on the 2nd/3rd/4th IDE ports
-under control of ide.c.   To have ide.c also "take over" the primary
-IDE port in this situation, use the "command line" parameter:  ide0=0x1f0
-
 The IDE driver is modularized.  The high level disk/CD-ROM/tape/floppy
 drivers can always be compiled as loadable modules, the chipset drivers
 can only be compiled into the kernel, and the core code (ide.c) can be
@@ -204,9 +173,7 @@ to /etc/modprobe.conf.
 
 When ide.c is used as a module, you can pass command line parameters to the
 driver using the "options=" keyword to insmod, while replacing any ',' with
-';'.  For example:
-
-       insmod ide.o options="ide0=serialize ide1=serialize ide2=0x1e8;0x3ee;11"
+';'.
 
 
 ================================================================================
@@ -214,96 +181,48 @@ driver using the "options=" keyword to insmod, while replacing any ',' with
 Summary of ide driver parameters for kernel command line
 --------------------------------------------------------
 
- "hdx="  is recognized for all "x" from "a" to "h", such as "hdc".
-
- "idex=" is recognized for all "x" from "0" to "3", such as "ide1".
-
- "hdx=noprobe"         : drive may be present, but do not probe for it
-
- "hdx=none"            : drive is NOT present, ignore cmos and do not probe
-
- "hdx=nowerr"          : ignore the WRERR_STAT bit on this drive
-
- "hdx=cdrom"           : drive is present, and is a cdrom drive
-
- "hdx=cyl,head,sect"   : disk drive is present, with specified geometry
-
- "hdx=remap"           : remap access of sector 0 to sector 1 (for EZDrive)
-
- "hdx=remap63"         : remap the drive: add 63 to all sector numbers
-                         (for DM OnTrack)
-
- "idex=noautotune"     : driver will NOT attempt to tune interface speed
-
- "hdx=autotune"                : driver will attempt to tune interface speed
-                         to the fastest PIO mode supported,
-                         if possible for this drive only.
-                         Not fully supported by all chipset types,
-                         and quite likely to cause trouble with
-                         older/odd IDE drives.
-
- "hdx=nodma"           : disallow DMA
-
- "hdx=scsi"            : the return of the ide-scsi flag, this is useful for
-                         allowing ide-floppy, ide-tape, and ide-cdrom|writers
-                         to use ide-scsi emulation on a device specific option.
-
- "idebus=xx"           : inform IDE driver of VESA/PCI bus speed in MHz,
-                         where "xx" is between 20 and 66 inclusive,
-                         used when tuning chipset PIO modes.
-                         For PCI bus, 25 is correct for a P75 system,
-                         30 is correct for P90,P120,P180 systems,
-                         and 33 is used for P100,P133,P166 systems.
-                         If in doubt, use idebus=33 for PCI.
-                         As for VLB, it is safest to not specify it.
-                         Bigger values are safer than smaller ones.
-
- "idex=base"           : probe for an interface at the addr specified,
-                         where "base" is usually 0x1f0 or 0x170
-                         and "ctl" is assumed to be "base"+0x206
+For legacy IDE VLB host drivers (ali14xx/dtc2278/ht6560b/qd65xx/umc8672)
+you need to explicitly enable probing by using "probe" kernel parameter,
+i.e. to enable probing for ALI M14xx chipsets (ali14xx host driver) use:
 
- "idex=base,ctl"       : specify both base and ctl
+* "ali14xx.probe" boot option when ali14xx driver is built-in the kernel
 
- "idex=base,ctl,irq"   : specify base, ctl, and irq number
+* "probe" module parameter when ali14xx driver is compiled as module
+  ("modprobe ali14xx probe")
 
- "idex=serialize"      : do not overlap operations on idex. Please note
-                         that you will have to specify this option for
-                         both the respective primary and secondary channel
-                         to take effect.
+Also for legacy CMD640 host driver (cmd640) you need to use "probe_vlb"
+kernel paremeter to enable probing for VLB version of the chipset (PCI ones
+are detected automatically).
 
- "idex=four"           : four drives on idex and ide(x^1) share same ports
+You also need to use "probe" kernel parameter for ide-4drives driver
+(support for IDE generic chipset with four drives on one port).
 
- "idex=reset"          : reset interface after probe
+To enable support for IDE doublers on Amiga use "doubler" kernel parameter
+for gayle host driver (i.e. "gayle.doubler" if the driver is built-in).
 
- "idex=ata66"          : informs the interface that it has an 80c cable
-                         for chipsets that are ATA-66 capable, but the
-                         ability to bit test for detection is currently
-                         unknown.
+To force ignoring cable detection (this should be needed only if you're using
+short 40-wires cable which cannot be automatically detected - if this is not
+a case please report it as a bug instead) use "ignore_cable" kernel parameter:
 
- "ide=reverse"         : formerly called to pci sub-system, but now local.
+* "ide_core.ignore_cable=[interface_number]" boot option if IDE is built-in
+  (i.e. "ide_core.ignore_cable=1" to force ignoring cable for "ide1")
 
-The following are valid ONLY on ide0, which usually corresponds
-to the first ATA interface found on the particular host, and the defaults for
-the base,ctl ports must not be altered.
+* "ignore_cable=[interface_number]" module parameter (for ide_core module)
+  if IDE is compiled as module
 
- "ide=doubler"         : probe/support IDE doublers on Amiga
+Other kernel parameters for ide_core are:
 
-There may be more options than shown -- use the source, Luke!
+* "nodma=[interface_number.device_number]" to disallow DMA for a device
 
-Everything else is rejected with a "BAD OPTION" message.
+* "noflush=[interface_number.device_number]" to disable flush requests
 
-For legacy IDE VLB host drivers (ali14xx/dtc2278/ht6560b/qd65xx/umc8672)
-you need to explicitly enable probing by using "probe" kernel parameter,
-i.e. to enable probing for ALI M14xx chipsets (ali14xx host driver) use:
+* "noprobe=[interface_number.device_number]" to skip probing
 
-* "ali14xx.probe" boot option when ali14xx driver is built-in the kernel
+* "nowerr=[interface_number.device_number]" to ignore the WRERR_STAT bit
 
-* "probe" module parameter when ali14xx driver is compiled as module
-  ("modprobe ali14xx probe")
+* "cdrom=[interface_number.device_number]" to force device as a CD-ROM
 
-Also for legacy CMD640 host driver (cmd640) you need to use "probe_vlb"
-kernel paremeter to enable probing for VLB version of the chipset (PCI ones
-are detected automatically).
+* "chs=[interface_number.device_number]" to force device as a disk (using CHS)
 
 ================================================================================