diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-18 11:39:24 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-18 11:39:24 -0400 |
commit | 188da98800893691e47eea9335a234378e32aceb (patch) | |
tree | 57dbf491d23676e011b4946ec1867a6d55a02eef /Documentation | |
parent | 07fe944e87d79f8d7e1b090913fe9f2ace78f41d (diff) | |
parent | 273b8385e5817a4765f82257004c5ec661a6a5b2 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (58 commits)
ide: remove ide_init_default_irq() macro
ide: move default IDE ports setup to ide_generic host driver
ide: remove obsoleted "idex=noprobe" kernel parameter (take 2)
ide: remove needless hwif->irq check from ide_hwif_configure()
ide: init hwif->{io_ports,irq} explicitly in legacy VLB host drivers
ide: limit legacy VLB host drivers to alpha, x86 and mips
cmd640: init hwif->{io_ports,irq} explicitly
cmd640: cleanup setup_device_ptrs()
ide: add ide-4drives host driver (take 3)
ide: remove ppc ifdef from init_ide_data()
ide: remove ide_default_io_ctl() macro
ide: remove CONFIG_IDE_ARCH_OBSOLETE_INIT
ide: add CONFIG_IDE_ARCH_OBSOLETE_DEFAULTS (take 2)
ppc/pmac: remove no longer needed IDE quirk
ppc: don't include <linux/ide.h>
ppc: remove ppc_ide_md
ppc/pplus: remove ppc_ide_md.ide_init_hwif hook
ppc/sandpoint: remove ppc_ide_md hooks
ppc/lopec: remove ppc_ide_md hooks
ppc/mpc8xx: remove ppc_ide_md hooks
...
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/ide/ide.txt | 47 | ||||
-rw-r--r-- | Documentation/ide/warm-plug-howto.txt | 13 | ||||
-rw-r--r-- | Documentation/kernel-parameters.txt | 4 |
3 files changed, 19 insertions, 45 deletions
diff --git a/Documentation/ide/ide.txt b/Documentation/ide/ide.txt index 818676aad45a..486c699f4aea 100644 --- a/Documentation/ide/ide.txt +++ b/Documentation/ide/ide.txt | |||
@@ -71,29 +71,6 @@ This driver automatically probes for most IDE interfaces (including all PCI | |||
71 | ones), for the drives/geometries attached to those interfaces, and for the IRQ | 71 | ones), for the drives/geometries attached to those interfaces, and for the IRQ |
72 | lines being used by the interfaces (normally 14, 15 for ide0/ide1). | 72 | lines being used by the interfaces (normally 14, 15 for ide0/ide1). |
73 | 73 | ||
74 | For special cases, interfaces may be specified using kernel "command line" | ||
75 | options. For example, | ||
76 | |||
77 | ide3=0x168,0x36e,10 /* ioports 0x168-0x16f,0x36e, irq 10 */ | ||
78 | |||
79 | Normally the irq number need not be specified, as ide.c will probe for it: | ||
80 | |||
81 | ide3=0x168,0x36e /* ioports 0x168-0x16f,0x36e */ | ||
82 | |||
83 | The standard port, and irq values are these: | ||
84 | |||
85 | ide0=0x1f0,0x3f6,14 | ||
86 | ide1=0x170,0x376,15 | ||
87 | ide2=0x1e8,0x3ee,11 | ||
88 | ide3=0x168,0x36e,10 | ||
89 | |||
90 | Note that the first parameter reserves 8 contiguous ioports, whereas the | ||
91 | second value denotes a single ioport. If in doubt, do a 'cat /proc/ioports'. | ||
92 | |||
93 | In all probability the device uses these ports and IRQs if it is attached | ||
94 | to the appropriate ide channel. Pass the parameter for the correct ide | ||
95 | channel to the kernel, as explained above. | ||
96 | |||
97 | Any number of interfaces may share a single IRQ if necessary, at a slight | 74 | Any number of interfaces may share a single IRQ if necessary, at a slight |
98 | performance penalty, whether on separate cards or a single VLB card. | 75 | performance penalty, whether on separate cards or a single VLB card. |
99 | The IDE driver automatically detects and handles this. However, this may | 76 | The IDE driver automatically detects and handles this. However, this may |
@@ -184,13 +161,6 @@ provided it is mounted with the default block size of 1024 (as above). | |||
184 | Please pass on any feedback on any of this stuff to the maintainer, | 161 | Please pass on any feedback on any of this stuff to the maintainer, |
185 | whose address can be found in linux/MAINTAINERS. | 162 | whose address can be found in linux/MAINTAINERS. |
186 | 163 | ||
187 | Note that if BOTH hd.c and ide.c are configured into the kernel, | ||
188 | hd.c will normally be allowed to control the primary IDE interface. | ||
189 | This is useful for older hardware that may be incompatible with ide.c, | ||
190 | and still allows newer hardware to run on the 2nd/3rd/4th IDE ports | ||
191 | under control of ide.c. To have ide.c also "take over" the primary | ||
192 | IDE port in this situation, use the "command line" parameter: ide0=0x1f0 | ||
193 | |||
194 | The IDE driver is modularized. The high level disk/CD-ROM/tape/floppy | 164 | The IDE driver is modularized. The high level disk/CD-ROM/tape/floppy |
195 | drivers can always be compiled as loadable modules, the chipset drivers | 165 | drivers can always be compiled as loadable modules, the chipset drivers |
196 | can only be compiled into the kernel, and the core code (ide.c) can be | 166 | can only be compiled into the kernel, and the core code (ide.c) can be |
@@ -206,7 +176,7 @@ When ide.c is used as a module, you can pass command line parameters to the | |||
206 | driver using the "options=" keyword to insmod, while replacing any ',' with | 176 | driver using the "options=" keyword to insmod, while replacing any ',' with |
207 | ';'. For example: | 177 | ';'. For example: |
208 | 178 | ||
209 | insmod ide.o options="ide0=serialize ide1=serialize ide2=0x1e8;0x3ee;11" | 179 | insmod ide.o options="hda=nodma hdb=nodma" |
210 | 180 | ||
211 | 181 | ||
212 | ================================================================================ | 182 | ================================================================================ |
@@ -247,21 +217,11 @@ Summary of ide driver parameters for kernel command line | |||
247 | As for VLB, it is safest to not specify it. | 217 | As for VLB, it is safest to not specify it. |
248 | Bigger values are safer than smaller ones. | 218 | Bigger values are safer than smaller ones. |
249 | 219 | ||
250 | "idex=base" : probe for an interface at the addr specified, | ||
251 | where "base" is usually 0x1f0 or 0x170 | ||
252 | and "ctl" is assumed to be "base"+0x206 | ||
253 | |||
254 | "idex=base,ctl" : specify both base and ctl | ||
255 | |||
256 | "idex=base,ctl,irq" : specify base, ctl, and irq number | ||
257 | |||
258 | "idex=serialize" : do not overlap operations on idex. Please note | 220 | "idex=serialize" : do not overlap operations on idex. Please note |
259 | that you will have to specify this option for | 221 | that you will have to specify this option for |
260 | both the respective primary and secondary channel | 222 | both the respective primary and secondary channel |
261 | to take effect. | 223 | to take effect. |
262 | 224 | ||
263 | "idex=four" : four drives on idex and ide(x^1) share same ports | ||
264 | |||
265 | "idex=reset" : reset interface after probe | 225 | "idex=reset" : reset interface after probe |
266 | 226 | ||
267 | "idex=ata66" : informs the interface that it has an 80c cable | 227 | "idex=ata66" : informs the interface that it has an 80c cable |
@@ -269,8 +229,6 @@ Summary of ide driver parameters for kernel command line | |||
269 | ability to bit test for detection is currently | 229 | ability to bit test for detection is currently |
270 | unknown. | 230 | unknown. |
271 | 231 | ||
272 | "ide=reverse" : formerly called to pci sub-system, but now local. | ||
273 | |||
274 | "ide=doubler" : probe/support IDE doublers on Amiga | 232 | "ide=doubler" : probe/support IDE doublers on Amiga |
275 | 233 | ||
276 | There may be more options than shown -- use the source, Luke! | 234 | There may be more options than shown -- use the source, Luke! |
@@ -290,6 +248,9 @@ Also for legacy CMD640 host driver (cmd640) you need to use "probe_vlb" | |||
290 | kernel paremeter to enable probing for VLB version of the chipset (PCI ones | 248 | kernel paremeter to enable probing for VLB version of the chipset (PCI ones |
291 | are detected automatically). | 249 | are detected automatically). |
292 | 250 | ||
251 | You also need to use "probe" kernel parameter for ide-4drives driver | ||
252 | (support for IDE generic chipset with four drives on one port). | ||
253 | |||
293 | ================================================================================ | 254 | ================================================================================ |
294 | 255 | ||
295 | Some Terminology | 256 | Some Terminology |
diff --git a/Documentation/ide/warm-plug-howto.txt b/Documentation/ide/warm-plug-howto.txt new file mode 100644 index 000000000000..d5885468b072 --- /dev/null +++ b/Documentation/ide/warm-plug-howto.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | |||
2 | IDE warm-plug HOWTO | ||
3 | =================== | ||
4 | |||
5 | To warm-plug devices on a port 'idex': | ||
6 | |||
7 | # echo -n "1" > /sys/class/ide_port/idex/delete_devices | ||
8 | |||
9 | unplug old device(s) and plug new device(s) | ||
10 | |||
11 | # echo -n "1" > /sys/class/ide_port/idex/scan | ||
12 | |||
13 | done | ||
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt index c867f506366d..cd6f464b919c 100644 --- a/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt | |||
@@ -763,11 +763,11 @@ and is between 256 and 4096 characters. It is defined in the file | |||
763 | Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]] | 763 | Format: <io>[,<membase>[,<icn_id>[,<icn_id2>]]] |
764 | 764 | ||
765 | ide= [HW] (E)IDE subsystem | 765 | ide= [HW] (E)IDE subsystem |
766 | Format: ide=nodma or ide=doubler or ide=reverse | 766 | Format: ide=nodma or ide=doubler |
767 | See Documentation/ide/ide.txt. | 767 | See Documentation/ide/ide.txt. |
768 | 768 | ||
769 | ide?= [HW] (E)IDE subsystem | 769 | ide?= [HW] (E)IDE subsystem |
770 | Format: ide?=noprobe or chipset specific parameters. | 770 | Format: ide?=ata66 or chipset specific parameters. |
771 | See Documentation/ide/ide.txt. | 771 | See Documentation/ide/ide.txt. |
772 | 772 | ||
773 | idebus= [HW] (E)IDE subsystem - VLB/PCI bus speed | 773 | idebus= [HW] (E)IDE subsystem - VLB/PCI bus speed |