summaryrefslogtreecommitdiffstats
path: root/Documentation/ide.txt
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>1997-04-29 21:13:14 +0000
committer <ralf@linux-mips.org>1997-04-29 21:13:14 +0000
commit19c9bba94152148523ba0f7ef7cffe3d45656b11 (patch)
tree40b1cb534496a7f1ca0f5c314a523c69f1fee464 /Documentation/ide.txt
parent7206675c40394c78a90e74812bbdbf8cf3cca1be (diff)
Import of Linux/MIPS 2.1.36
Diffstat (limited to 'Documentation/ide.txt')
-rw-r--r--Documentation/ide.txt38
1 files changed, 30 insertions, 8 deletions
diff --git a/Documentation/ide.txt b/Documentation/ide.txt
index 09a969f5c..f9ececdd5 100644
--- a/Documentation/ide.txt
+++ b/Documentation/ide.txt
@@ -66,6 +66,7 @@ NEW! - support for IDE ATAPI *floppy* drives
- the hdparm-3.1 package can be used to set PIO modes for some chipsets.
NEW! - support for the OPTi 82C621 chipset, courtesy of Jaromir Koutek.
NEW! - support for loadable modules
+NEW! - optional SCSI host adapter emulation for ATAPI devices
For work in progress, see the comments in ide.c, ide-cd.c, triton.c, ...
@@ -110,12 +111,12 @@ shell script: /usr/src/linux/scripts/MAKEDEV.ide
Apparently many releases of Slackware 2.2/2.3 have incorrect entries
in /dev for hdc* and hdd* -- this can also be corrected by running MAKEDEV.ide
-ide.c automatically probes for the primary and secondary interfaces,
+ide.c automatically probes for the standard four IDE interfaces,
for the drives/geometries attached to those interfaces, and for the
-IRQ numbers being used by the interfaces (normally IRQ14 & IRQ15).
+IRQ numbers being used by the interfaces (normally 14, 15, 11 and 10).
-Interfaces beyond the first two are not normally probed for, but may be
-specified using kernel "command line" options. For example,
+For special cases, interfaces may be specified using kernel "command line"
+options. For example,
ide3=0x168,0x36e,10 /* ioports 0x168-0x16f,0x36e, irq 10 */
@@ -234,6 +235,25 @@ 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 partly modularized. The high level disk/cdrom/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
+compiled as a loadable module provided no chipset support and no special
+partition table translations are needed.
+
+When using ide.c/ide-tape.c as modules in combination with kerneld, add:
+
+ alias block-major-3 ide-probe
+ alias char-major-37 ide-tape
+
+respectively to /etc/conf.modules.
+
+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 ide2=0x1e8;0x3ee;11"
+
mlord@pobox.com
snyder@fnald0.fnal.gov
================================================================================
@@ -256,6 +276,7 @@ Summary of ide driver parameters for kernel "command line":
older/odd IDE drives.
"hdx=slow" : insert a huge pause after each access to the data
port. Should be used only as a last resort.
+ "hdx=swapdata" : when the drive is a disk, byte swap all data
"idebus=xx" : inform IDE driver of VESA/PCI bus speed in MHz,
where "xx" is between 20 and 66 inclusive,
@@ -283,6 +304,7 @@ Summary of ide driver parameters for kernel "command line":
This is the default for most chipsets,
except the cmd640.
"idex=serialize" : do not overlap operations on idex and ide(x^1)
+ "idex=reset" : reset interface after probe
The following are valid ONLY on ide0,
and the defaults for the base,ctl ports must not be altered.
@@ -430,10 +452,10 @@ by doing the following after installing slackware (or whatever):
0. Boot from the "boot floppy" created during the installation
1. Mount your DOS partition as /dos (and stick it in /etc/fstab)
- 2. Move your kernel (/vmlinuz) to /dos/vmlinuz with: mv /vmlinuz /dos
- 3. Edit /etc/lilo.conf to change /vmlinuz to /dos/vmlinuz
- 4. Move /boot to /dos/boot with: cp -a /boot /dos ; rm -r /boot
- 5. Create a symlink for LILO to use with: ln -s /dos/boot /boot
+ 2. Move /boot to /dos/boot with: cp -a /boot /dos ; rm -r /boot
+ 3. Create a symlink for LILO to use with: ln -s /dos/boot /boot
+ 4. Move your kernel (/vmlinuz) to /boot/vmlinuz: mv /vmlinuz /boot
+ 5. Edit /etc/lilo.conf to change /vmlinuz to /boot/vmlinuz
6. Re-run LILO with: lilo
A danger with this approach is that whenever an MS-DOS "defragmentation"