Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d7b461c5 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Jonathan Corbet
Browse files

docs: ide: convert docs to ReST and rename to *.rst



The conversion is actually:
  - add blank lines and identation in order to identify paragraphs;
  - fix tables markups;
  - add some lists markups;
  - mark literal blocks;
  - adjust title markups.

At its new index.rst, let's add a :orphan: while this is not linked to
the main index.rst file, in order to avoid build warnings.

Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Acked-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent c220a1fa
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -1504,7 +1504,7 @@
			Format: =0.0 to prevent dma on hda, =0.1 hdb =1.0 hdc
			Format: =0.0 to prevent dma on hda, =0.1 hdb =1.0 hdc
			.vlb_clock .pci_clock .noflush .nohpa .noprobe .nowerr
			.vlb_clock .pci_clock .noflush .nohpa .noprobe .nowerr
			.cdrom .chs .ignore_cable are additional options
			.cdrom .chs .ignore_cable are additional options
			See Documentation/ide/ide.txt.
			See Documentation/ide/ide.rst.


	ide-generic.probe-mask= [HW] (E)IDE subsystem
	ide-generic.probe-mask= [HW] (E)IDE subsystem
			Format: <int>
			Format: <int>
+9 −9
Original line number Original line Diff line number Diff line
@@ -47,7 +47,7 @@ This driver provides the following features:
---------------
---------------


0. The ide-cd relies on the ide disk driver.  See
0. The ide-cd relies on the ide disk driver.  See
   Documentation/ide/ide.txt for up-to-date information on the ide
   Documentation/ide/ide.rst for up-to-date information on the ide
   driver.
   driver.


1. Make sure that the ide and ide-cd drivers are compiled into the
1. Make sure that the ide and ide-cd drivers are compiled into the
@@ -62,7 +62,7 @@ This driver provides the following features:


   Depending on what type of IDE interface you have, you may need to
   Depending on what type of IDE interface you have, you may need to
   specify additional configuration options.  See
   specify additional configuration options.  See
   Documentation/ide/ide.txt.
   Documentation/ide/ide.rst.


2. You should also ensure that the iso9660 filesystem is either
2. You should also ensure that the iso9660 filesystem is either
   compiled into the kernel or available as a loadable module.  You
   compiled into the kernel or available as a loadable module.  You
@@ -82,7 +82,7 @@ This driver provides the following features:
   on the primary IDE interface are called `hda` and `hdb`,
   on the primary IDE interface are called `hda` and `hdb`,
   respectively.  The drives on the secondary interface are called
   respectively.  The drives on the secondary interface are called
   `hdc` and `hdd`.  (Interfaces at other locations get other letters
   `hdc` and `hdd`.  (Interfaces at other locations get other letters
   in the third position; see Documentation/ide/ide.txt.)
   in the third position; see Documentation/ide/ide.rst.)


   If you want your CDROM drive to be found automatically by the
   If you want your CDROM drive to be found automatically by the
   driver, you should make sure your IDE interface uses either the
   driver, you should make sure your IDE interface uses either the
@@ -91,7 +91,7 @@ This driver provides the following features:
   be jumpered as `master`.  (If for some reason you cannot configure
   be jumpered as `master`.  (If for some reason you cannot configure
   your system in this manner, you can probably still use the driver.
   your system in this manner, you can probably still use the driver.
   You may have to pass extra configuration information to the kernel
   You may have to pass extra configuration information to the kernel
   when you boot, however.  See Documentation/ide/ide.txt for more
   when you boot, however.  See Documentation/ide/ide.rst for more
   information.)
   information.)


4. Boot the system.  If the drive is recognized, you should see a
4. Boot the system.  If the drive is recognized, you should see a
@@ -163,7 +163,7 @@ to change. If the slot number is -1, the drive is unloaded.
This section discusses some common problems encountered when trying to
This section discusses some common problems encountered when trying to
use the driver, and some possible solutions.  Note that if you are
use the driver, and some possible solutions.  Note that if you are
experiencing problems, you should probably also review
experiencing problems, you should probably also review
Documentation/ide/ide.txt for current information about the underlying
Documentation/ide/ide.rst for current information about the underlying
IDE support code.  Some of these items apply only to earlier versions
IDE support code.  Some of these items apply only to earlier versions
of the driver, but are mentioned here for completeness.
of the driver, but are mentioned here for completeness.


@@ -173,7 +173,7 @@ from the driver.
a. Drive is not detected during booting.
a. Drive is not detected during booting.


   - Review the configuration instructions above and in
   - Review the configuration instructions above and in
     Documentation/ide/ide.txt, and check how your hardware is
     Documentation/ide/ide.rst, and check how your hardware is
     configured.
     configured.


   - If your drive is the only device on an IDE interface, it should
   - If your drive is the only device on an IDE interface, it should
@@ -181,7 +181,7 @@ a. Drive is not detected during booting.


   - If your IDE interface is not at the standard addresses of 0x170
   - If your IDE interface is not at the standard addresses of 0x170
     or 0x1f0, you'll need to explicitly inform the driver using a
     or 0x1f0, you'll need to explicitly inform the driver using a
     lilo option.  See Documentation/ide/ide.txt.  (This feature was
     lilo option.  See Documentation/ide/ide.rst.  (This feature was
     added around kernel version 1.3.30.)
     added around kernel version 1.3.30.)


   - If the autoprobing is not finding your drive, you can tell the
   - If the autoprobing is not finding your drive, you can tell the
@@ -207,7 +207,7 @@ a. Drive is not detected during booting.
     Support for some interfaces needing extra initialization is
     Support for some interfaces needing extra initialization is
     provided in later 1.3.x kernels.  You may need to turn on
     provided in later 1.3.x kernels.  You may need to turn on
     additional kernel configuration options to get them to work;
     additional kernel configuration options to get them to work;
     see Documentation/ide/ide.txt.
     see Documentation/ide/ide.rst.


     Even if support is not available for your interface, you may be
     Even if support is not available for your interface, you may be
     able to get it to work with the following procedure.  First boot
     able to get it to work with the following procedure.  First boot
@@ -261,7 +261,7 @@ c. System hangups.
    be worked around by specifying the `serialize` option when
    be worked around by specifying the `serialize` option when
    booting.  Recent kernels should be able to detect the need for
    booting.  Recent kernels should be able to detect the need for
    this automatically in most cases, but the detection is not
    this automatically in most cases, but the detection is not
    foolproof.  See Documentation/ide/ide.txt for more information
    foolproof.  See Documentation/ide/ide.rst for more information
    about the `serialize` option and the CMD640B.
    about the `serialize` option and the CMD640B.


  - Note that many MS-DOS CDROM drivers will work with such buggy
  - Note that many MS-DOS CDROM drivers will work with such buggy
+17 −0
Original line number Original line Diff line number Diff line
Changelog for ide cd
--------------------

 .. include:: ChangeLog.ide-cd.1994-2004
    :literal:

Changelog for ide floppy
------------------------

 .. include:: ChangeLog.ide-floppy.1996-2002
    :literal:

Changelog for ide tape
----------------------

 .. include:: ChangeLog.ide-tape.1995-2002
    :literal:
+13 −10
Original line number Original line Diff line number Diff line
IDE ATAPI streaming tape driver.
===============================
IDE ATAPI streaming tape driver
===============================


This driver is a part of the Linux ide driver.
This driver is a part of the Linux ide driver.


@@ -10,7 +12,7 @@ to the request-list of the block device, and waits for their completion.
The block device major and minor numbers are determined from the
The block device major and minor numbers are determined from the
tape's relative position in the ide interfaces, as explained in ide.c.
tape's relative position in the ide interfaces, as explained in ide.c.


The character device interface consists of the following devices:
The character device interface consists of the following devices::


  ht0		major 37, minor 0	first  IDE tape, rewind on close.
  ht0		major 37, minor 0	first  IDE tape, rewind on close.
  ht1		major 37, minor 1	second IDE tape, rewind on close.
  ht1		major 37, minor 1	second IDE tape, rewind on close.
@@ -40,9 +42,10 @@ Testing was done with a 2 GB CONNER CTMA 4000 IDE ATAPI Streaming Tape Drive.
Here are some words from the first releases of hd.c, which are quoted
Here are some words from the first releases of hd.c, which are quoted
in ide.c and apply here as well:
in ide.c and apply here as well:


| Special care is recommended.  Have Fun!
* Special care is recommended.  Have Fun!


Possible improvements:
Possible improvements
=====================


1. Support for the ATAPI overlap protocol.
1. Support for the ATAPI overlap protocol.


+78 −69
Original line number Original line Diff line number Diff line

============================================
	Information regarding the Enhanced IDE drive in Linux 2.6
Information regarding the Enhanced IDE drive

============================================
==============================================================================



   The hdparm utility can be used to control various IDE features on a
   The hdparm utility can be used to control various IDE features on a
   running system. It is packaged separately.  Please Look for it on popular
   running system. It is packaged separately.  Please Look for it on popular
   linux FTP sites.
   linux FTP sites.


-------------------------------------------------------------------------------

.. important::

   BUGGY IDE CHIPSETS CAN CORRUPT DATA!!

    PCI versions of the CMD640 and RZ1000 interfaces are now detected
    automatically at startup when PCI BIOS support is configured.

    Linux disables the "prefetch" ("readahead") mode of the RZ1000
    to prevent data corruption possible due to hardware design flaws.

    For the CMD640, linux disables "IRQ unmasking" (hdparm -u1) on any
    drive for which the "prefetch" mode of the CMD640 is turned on.
    If "prefetch" is disabled (hdparm -p8), then "IRQ unmasking" can be
    used again.

    For the CMD640, linux disables "32bit I/O" (hdparm -c1) on any drive
    for which the "prefetch" mode of the CMD640 is turned off.
    If "prefetch" is enabled (hdparm -p9), then "32bit I/O" can be
    used again.

    The CMD640 is also used on some Vesa Local Bus (VLB) cards, and is *NOT*
    automatically detected by Linux.  For safe, reliable operation with such
    interfaces, one *MUST* use the "cmd640.probe_vlb" kernel option.

    Use of the "serialize" option is no longer necessary.


-------------------------------------------------------------------------------


***  IMPORTANT NOTICES:  BUGGY IDE CHIPSETS CAN CORRUPT DATA!!
Common pitfalls
***  =================
===============
***  PCI versions of the CMD640 and RZ1000 interfaces are now detected
***  automatically at startup when PCI BIOS support is configured.
***
***  Linux disables the "prefetch" ("readahead") mode of the RZ1000
***  to prevent data corruption possible due to hardware design flaws.
***
***  For the CMD640, linux disables "IRQ unmasking" (hdparm -u1) on any
***  drive for which the "prefetch" mode of the CMD640 is turned on.
***  If "prefetch" is disabled (hdparm -p8), then "IRQ unmasking" can be
***  used again.
***
***  For the CMD640, linux disables "32bit I/O" (hdparm -c1) on any drive
***  for which the "prefetch" mode of the CMD640 is turned off.
***  If "prefetch" is enabled (hdparm -p9), then "32bit I/O" can be
***  used again.
***
***  The CMD640 is also used on some Vesa Local Bus (VLB) cards, and is *NOT*
***  automatically detected by Linux.  For safe, reliable operation with such
***  interfaces, one *MUST* use the "cmd640.probe_vlb" kernel option.
***
***  Use of the "serialize" option is no longer necessary.

================================================================================
Common pitfalls:


- 40-conductor IDE cables are capable of transferring data in DMA modes up to
- 40-conductor IDE cables are capable of transferring data in DMA modes up to
  udma2, but no faster.
  udma2, but no faster.
@@ -49,12 +51,11 @@ Common pitfalls:
- Even better try to stick to the same vendor and device type on the same
- Even better try to stick to the same vendor and device type on the same
  cable.
  cable.


================================================================================
This is the multiple IDE interface driver, as evolved from hd.c

===============================================================
This is the multiple IDE interface driver, as evolved from hd.c.


It supports up to 9 IDE interfaces per default, on one or more IRQs (usually
It supports up to 9 IDE interfaces per default, on one or more IRQs (usually
14 & 15).  There can be up to two drives per interface, as per the ATA-6 spec.
14 & 15).  There can be up to two drives per interface, as per the ATA-6 spec.::


  Primary:    ide0, port 0x1f0; major=3;  hda is minor=0; hdb is minor=64
  Primary:    ide0, port 0x1f0; major=3;  hda is minor=0; hdb is minor=64
  Secondary:  ide1, port 0x170; major=22; hdc is minor=0; hdd is minor=64
  Secondary:  ide1, port 0x170; major=22; hdc is minor=0; hdd is minor=64
@@ -80,12 +81,15 @@ seldom occurs. Be careful, and if in doubt, don't do it!


Drives are normally found by auto-probing and/or examining the CMOS/BIOS data.
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
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:
on the kernel "command line" using LILO.  The format of such lines is::


	ide_core.chs=[interface_number.device_number]:cyls,heads,sects
	ide_core.chs=[interface_number.device_number]:cyls,heads,sects
or	ide_core.cdrom=[interface_number.device_number]


For example:
or::

	ide_core.cdrom=[interface_number.device_number]

For example::


	ide_core.chs=1.0:1050,32,64  ide_core.cdrom=1.1
	ide_core.chs=1.0:1050,32,64  ide_core.cdrom=1.1


@@ -96,10 +100,12 @@ geometry for partitioning purposes (fdisk).
If the auto-probing during boot time confuses a drive (ie. the drive works
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
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
for each drive for which you'd like the drive to skip the hardware
probe/identification sequence.  For example:
probe/identification sequence.  For example::


	ide_core.noprobe=0.1
	ide_core.noprobe=0.1
or

or::

	ide_core.chs=1.0:768,16,32
	ide_core.chs=1.0:768,16,32
	ide_core.noprobe=1.0
	ide_core.noprobe=1.0


@@ -115,22 +121,24 @@ Such drives will be identified at boot time, just like a hard disk.


If for some reason your cdrom drive is *not* found at boot time, you can force
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
the probe to look harder by supplying a kernel command line parameter
via LILO, such as:
via LILO, such as:::


	ide_core.cdrom=1.0	/* "master" on second interface (hdc) */
	ide_core.cdrom=1.0	/* "master" on second interface (hdc) */
or

or::

	ide_core.cdrom=1.1	/* "slave" on second interface (hdd) */
	ide_core.cdrom=1.1	/* "slave" on second interface (hdd) */


For example, a GW2000 system might have a hard drive on the primary
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
interface (/dev/hda) and an IDE cdrom drive on the secondary interface
(/dev/hdc).  To mount a CD in the cdrom drive, one would use something like:
(/dev/hdc).  To mount a CD in the cdrom drive, one would use something like::


	ln -sf /dev/hdc /dev/cdrom
	ln -sf /dev/hdc /dev/cdrom
	mkdir /mnt/cdrom
	mkdir /mnt/cdrom
	mount /dev/cdrom /mnt/cdrom -t iso9660 -o ro
	mount /dev/cdrom /mnt/cdrom -t iso9660 -o ro


If, after doing all of the above, mount doesn't work and you see
If, after doing all of the above, mount doesn't work and you see
errors from the driver (with dmesg) complaining about `status=0xff',
errors from the driver (with dmesg) complaining about `status=0xff`,
this means that the hardware is not responding to the driver's attempts
this means that the hardware is not responding to the driver's attempts
to read it.  One of the following is probably the problem:
to read it.  One of the following is probably the problem:


@@ -165,7 +173,7 @@ 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
can only be compiled into the kernel, and the core code (ide.c) can be
compiled as a loadable module provided no chipset support is needed.
compiled as a loadable module provided no chipset support is needed.


When using ide.c as a module in combination with kmod, add:
When using ide.c as a module in combination with kmod, add::


	alias block-major-3 ide-probe
	alias block-major-3 ide-probe


@@ -176,10 +184,8 @@ driver using the "options=" keyword to insmod, while replacing any ',' with
';'.
';'.




================================================================================

Summary of ide driver parameters for kernel command line
Summary of ide driver parameters for kernel command line
--------------------------------------------------------
========================================================


For legacy IDE VLB host drivers (ali14xx/dtc2278/ht6560b/qd65xx/umc8672)
For legacy IDE VLB host drivers (ali14xx/dtc2278/ht6560b/qd65xx/umc8672)
you need to explicitly enable probing by using "probe" kernel parameter,
you need to explicitly enable probing by using "probe" kernel parameter,
@@ -226,28 +232,31 @@ Other kernel parameters for ide_core are:


* "chs=[interface_number.device_number]" to force device as a disk (using CHS)
* "chs=[interface_number.device_number]" to force device as a disk (using CHS)


================================================================================


Some Terminology
Some Terminology
----------------
================
IDE = Integrated Drive Electronics, meaning that each drive has a built-in

IDE
  Integrated Drive Electronics, meaning that each drive has a built-in
  controller, which is why an "IDE interface card" is not a "controller card".
  controller, which is why an "IDE interface card" is not a "controller card".


ATA = AT (the old IBM 286 computer) Attachment Interface, a draft American
ATA
  AT (the old IBM 286 computer) Attachment Interface, a draft American
  National Standard for connecting hard drives to PCs.  This is the official
  National Standard for connecting hard drives to PCs.  This is the official
  name for "IDE".
  name for "IDE".


  The latest standards define some enhancements, known as the ATA-6 spec,
  The latest standards define some enhancements, known as the ATA-6 spec,
  which grew out of vendor-specific "Enhanced IDE" (EIDE) implementations.
  which grew out of vendor-specific "Enhanced IDE" (EIDE) implementations.


ATAPI = ATA Packet Interface, a new protocol for controlling the drives,
ATAPI
  ATA Packet Interface, a new protocol for controlling the drives,
  similar to SCSI protocols, created at the same time as the ATA2 standard.
  similar to SCSI protocols, created at the same time as the ATA2 standard.
  ATAPI is currently used for controlling CDROM, TAPE and FLOPPY (ZIP or
  ATAPI is currently used for controlling CDROM, TAPE and FLOPPY (ZIP or
  LS120/240) devices, removable R/W cartridges, and for high capacity hard disk
  LS120/240) devices, removable R/W cartridges, and for high capacity hard disk
  drives.
  drives.


mlord@pobox.com
mlord@pobox.com
--



Wed Apr 17 22:52:44 CEST 2002 edited by Marcin Dalecki, the current
Wed Apr 17 22:52:44 CEST 2002 edited by Marcin Dalecki, the current
maintainer.
maintainer.
Loading