Next Previous Contents

## 11. Other Hardware Devices

Any other devices that didn't fit into any of the above categories got lumped together here.

## 11.1 Ethernet Devices (`ether=', `netdev=')

Different drivers make use of different parameters, but they all at least share having an IRQ, an I/O port base value, and a name. In its most generic form, it looks something like this:

            ether=irq,iobase[,param_1[,param_2,...param_8]]],name

The first non-numeric argument is taken as the name. The `param_n` values (if applicable) usually have different meanings for each different card/driver. Typical `param_n` values are used to specify things like shared memory address, interface selection, DMA channel and the like.

The most common use of this parameter is to force probing for a second ethercard, as the default is to only probe for one (with 2.4 and older kernels). This can be accomplished with a simple:

            ether=0,0,eth1

Note that the values of zero for the IRQ and I/O base in the above example tell the driver(s) to autoprobe.

IMPORTANT NOTE TO MODULE USERS: The above will not force a probe for a second card if you are using the driver(s) as run time loadable modules (instead of having them complied into the kernel). Most Linux distributions use a bare bones kernel combined with a large selection of modular drivers. The `ether=` only applies to drivers compiled directly into the kernel.

The Ethernet-HowTo has complete and extensive documentation on using multiple cards and on the card/driver specific implementation of the `param_n` values where used. Interested readers should refer to the section in that document on their particular card for more complete information. Ethernet-HowTo

## 11.2 The Floppy Disk Driver (`floppy=')

There are many floppy driver options, and they are all listed in `floppy.txt` in `linux/Documentation`. There are too many options in that file to list here. Instead, only those options that may be required to get a Linux install to proceed on less than normal hardware are reprinted here.

`floppy=0,daring` Tells the floppy driver that your floppy controller should be used with caution (disables all daring operations).

`floppy=thinkpad` Tells the floppy driver that you have a Thinkpad. Thinkpads use an inverted convention for the disk change line.

`floppy=nodma` Tells the floppy driver not to use DMA for data transfers. This is needed on HP Omnibooks, which don't have a workable DMA channel for the floppy driver. This option is also useful if you frequently get `Unable to allocate DMA memory' messages. Use of `nodma' is not recommended if you have a FDC without a FIFO (8272A or 82072). 82072A and later are OK). The FDC model is reported at boot. You also need at least a 486 to use nodma.

`floppy=nofifo` Disables the FIFO entirely. This is needed if you get `Bus master arbitration error' messages from your Ethernet card (or from other devices) while accessing the floppy.

`floppy=broken_dcl` Don't use the disk change line, but assume that the disk was changed whenever the device node is reopened. Needed on some boxes where the disk change line is broken or unsupported. This should be regarded as a stopgap measure, indeed it makes floppy operation less efficient due to unneeded cache flushings, and slightly more unreliable. Please verify your cable connection and jumper settings if you have any DCL problems. However, some older drives, and also some Laptops are known not to have a DCL.

`floppy=debug` Print (additional) debugging messages.

`floppy=messages` Print informational messages for some operations (disk change notifications, warnings about over and underruns, and about autodetection).

## 11.3 The Bus Mouse Driver (`bmouse=')

The busmouse driver only accepts one parameter, that being the hardware IRQ value to be used.

## 11.4 The MS Bus Mouse Driver (`msmouse=')

The MS mouse driver only accepts one parameter, that being the hardware IRQ value to be used.

## 11.5 The Printer Driver (`lp=')

With this boot argument you can tell the printer driver what ports to use and what ports not to use. The latter comes in handy if you don't want the printer driver to claim all available parallel ports, so that other drivers (e.g. PLIP, PPA) can use them instead.

The format of the argument is multiple i/o, IRQ pairs. For example, `lp=0x3bc,0,0x378,7` would use the port at `0x3bc` in IRQ-less (polling) mode, and use IRQ 7 for the port at `0x378`. The port at `0x278` (if any) would not be probed, since autoprobing only takes place in the absence of a `lp=` argument. To disable the printer driver entirely, one can use `lp=0`.

## 11.6 The Parallel port IP driver (`plip=')

Using `plip=timid` will tell the plip driver to avoid any ports that appear to be in use by other parallel port devices. Otherwise you can use `plip=parportN` where `N` is a non-zero integer indicating the parallel port to use. (Using `N`=0 will disable the plip driver.)

Next Previous Contents