OSDN Git Service

LDP: Update original to LDP v3.67
[linuxjm/LDP_man-pages.git] / original / man7 / bootparam.7
1 .\" Copyright (c) 1995,1997 Paul Gortmaker and Andries Brouwer
2 .\"
3 .\" %%%LICENSE_START(GPLv2+_DOC_FULL)
4 .\" This is free documentation; you can redistribute it and/or
5 .\" modify it under the terms of the GNU General Public License as
6 .\" published by the Free Software Foundation; either version 2 of
7 .\" the License, or (at your option) any later version.
8 .\"
9 .\" The GNU General Public License's references to "object code"
10 .\" and "executables" are to be interpreted as the output of any
11 .\" document formatting or typesetting system, including
12 .\" intermediate and printed output.
13 .\"
14 .\" This manual is distributed in the hope that it will be useful,
15 .\" but WITHOUT ANY WARRANTY; without even the implied warranty of
16 .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17 .\" GNU General Public License for more details.
18 .\"
19 .\" You should have received a copy of the GNU General Public
20 .\" License along with this manual; if not, see
21 .\" <http://www.gnu.org/licenses/>.
22 .\" %%%LICENSE_END
23 .\"
24 .\" This man page written 950814 by aeb, based on Paul Gortmaker's HOWTO
25 .\" (dated v1.0.1, 15/08/95).
26 .\" Major update, aeb, 970114.
27 .\" FIXME ? The use of quotes on this page is inconsistent with the
28 .\" rest of man-pages.
29 .\"
30 .TH BOOTPARAM 7 2013-08-01 "Linux" "Linux Programmer's Manual"
31 .SH NAME
32 bootparam \- introduction to boot time parameters of the Linux kernel
33 .SH DESCRIPTION
34 The Linux kernel accepts certain 'command-line options' or 'boot time
35 parameters' at the moment it is started.
36 In general this is used to
37 supply the kernel with information about hardware parameters that
38 the kernel would not be able to determine on its own, or to avoid/override
39 the values that the kernel would otherwise detect.
40
41 When the kernel is booted directly by the BIOS (say from a floppy to
42 which you copied a kernel using 'cp zImage /dev/fd0'),
43 you have no opportunity to specify any parameters.
44 So, in order to take advantage of this possibility you have to
45 use a boot loader that is able to pass parameters, such as GRUB.
46
47 .\" The LILO program (LInux LOader) written by Werner Almesberger is the
48 .\" most commonly used.
49 .\" It has the ability to boot various kernels, and
50 .\" stores the configuration information in a plain text file.
51 .\" (See
52 .\" .BR lilo (8)
53 .\" and
54 .\" .BR lilo.conf (5).)
55 .\" LILO can boot DOS, OS/2, Linux, FreeBSD, UnixWare, etc., and is quite flexible.
56 .\"
57 .\" The other commonly used Linux loader is 'LoadLin', which is a DOS
58 .\" program that has the capability to launch a Linux kernel from the DOS
59 .\" prompt (with boot-args) assuming that certain resources are available.
60 .\" This is good for people that want to launch Linux from DOS.
61 .\"
62 .\" It is also very useful if you have certain hardware which relies on
63 .\" the supplied DOS driver to put the hardware into a known state.
64 .\" A common example is 'SoundBlaster Compatible' sound cards that require
65 .\" the DOS driver to twiddle a few mystical registers to put the card
66 .\" into a SB compatible mode.
67 .\" Booting DOS with the supplied driver, and
68 .\" then loading Linux from the DOS prompt with loadlin avoids the reset
69 .\" of the card that happens if one rebooted instead.
70 .SS The argument list
71 The kernel command line is parsed into a list of strings
72 (boot arguments) separated by spaces.
73 Most of the boot arguments take have the form:
74
75 .in +4n
76 .nf
77 name[=value_1][,value_2]...[,value_10]
78 .fi
79 .in
80 .LP
81 where 'name' is a unique keyword that is used to identify what part of
82 the kernel the associated values (if any) are to be given to.
83 Note the limit of 10 is real, as the present code handles only 10 comma
84 separated parameters per keyword.
85 (However, you can reuse the same
86 keyword with up to an additional 10 parameters in unusually
87 complicated situations, assuming the setup function supports it.)
88
89 Most of the sorting is coded in the kernel source file
90 .IR init/main.c .
91 First, the kernel
92 checks to see if the argument is any of the special arguments 'root=',
93 \&'nfsroot=', 'nfsaddrs=', 'ro', 'rw', 'debug' or 'init'.
94 The meaning of these special arguments is described below.
95
96 Then it walks a list of setup functions (contained in the bootsetups
97 array) to see if the specified argument string (such as 'foo') has
98 been associated with a setup function ('foo_setup()') for a particular
99 device or part of the kernel.
100 If you passed the kernel the line
101 foo=3,4,5,6 then the kernel would search the bootsetups array to see
102 if 'foo' was registered.
103 If it was, then it would call the setup
104 function associated with 'foo' (foo_setup()) and hand it the arguments
105 3, 4, 5, and 6 as given on the kernel command line.
106
107 Anything of the form 'foo=bar' that is not accepted as a setup function
108 as described above is then interpreted as an environment variable to
109 be set.
110 A (useless?) example would be to use 'TERM=vt100' as a boot
111 argument.
112
113 Any remaining arguments that were not picked up by the kernel and were
114 not interpreted as environment variables are then passed onto process
115 one, which is usually the
116 .BR init (1)
117 program.
118 The most common argument that
119 is passed to the
120 .I init
121 process is the word 'single' which instructs it
122 to boot the computer in single user mode, and not launch all the usual
123 daemons.
124 Check the manual page for the version of
125 .BR init (1)
126 installed on
127 your system to see what arguments it accepts.
128 .SS General non-device-specific boot arguments
129 .TP
130 .B "'init=...'"
131 This sets the initial command to be executed by the kernel.
132 If this is not set, or cannot be found, the kernel will try
133 .IR /sbin/init ,
134 then
135 .IR /etc/init ,
136 then
137 .IR /bin/init ,
138 then
139 .I /bin/sh
140 and panic if all of this fails.
141 .TP
142 .B "'nfsaddrs=...'"
143 This sets the nfs boot address to the given string.
144 This boot address is used in case of a net boot.
145 .TP
146 .B "'nfsroot=...'"
147 This sets the nfs root name to the given string.
148 If this string
149 does not begin with '/' or ',' or a digit, then it is prefixed by
150 \&'/tftpboot/'.
151 This root name is used in case of a net boot.
152 .TP
153 .B  "'no387'"
154 (Only when
155 .B CONFIG_BUGi386
156 is defined.)
157 Some i387 coprocessor chips have bugs that show up when used in 32 bit
158 protected mode.
159 For example, some of the early ULSI-387 chips would
160 cause solid lockups while performing floating-point calculations.
161 Using the 'no387' boot argument causes Linux to ignore the maths
162 coprocessor even if you have one.
163 Of course you must then have your
164 kernel compiled with math emulation support!
165 .TP
166 .B "'no-hlt'"
167 (Only when
168 .B CONFIG_BUGi386
169 is defined.)
170 Some of the early i486DX-100 chips have a problem with the 'hlt'
171 instruction, in that they can't reliably return to operating mode
172 after this instruction is used.
173 Using the 'no-hlt' instruction tells
174 Linux to just run an infinite loop when there is nothing else to do,
175 and to not halt the CPU.
176 This allows people with these broken chips
177 to use Linux.
178 .TP
179 .B "'root=...'"
180 This argument tells the kernel what device is to be used as the root
181 filesystem while booting.
182 The default of this setting is determined
183 at compile time, and usually is the value of the root device of the
184 system that the kernel was built on.
185 To override this value, and
186 select the second floppy drive as the root device, one would
187 use 'root=/dev/fd1'.
188
189 The root device can be specified symbolically or numerically.
190 A symbolic specification has the form
191 .IR /dev/XXYN ,
192 where XX designates
193 the device type ('hd' for ST-506 compatible hard disk, with Y in
194 \&'a'-'d'; 'sd' for SCSI compatible disk, with Y in 'a'-'e';
195 \&'ad' for Atari ACSI disk, with Y in 'a'-'e',
196 \&'ez' for a Syquest EZ135 parallel port removable drive, with Y='a',
197 \&'xd' for XT compatible disk, with Y either 'a' or 'b'; 'fd' for
198 floppy disk, with Y the floppy drive number\(emfd0 would be
199 the DOS 'A:' drive, and fd1 would be 'B:'), Y the driver letter or
200 number, and N the number (in decimal) of the partition on this device
201 (absent in the case of floppies).
202 Recent kernels allow many other
203 types, mostly for CD-ROMs: nfs, ram, scd, mcd, cdu535, aztcd, cm206cd,
204 gscd, sbpcd, sonycd, bpcd.
205 (The type nfs specifies a net boot; ram refers to a ram disk.)
206
207 Note that this has nothing to do with the designation of these
208 devices on your filesystem.
209 The '/dev/' part is purely conventional.
210
211 The more awkward and less portable numeric specification of the above
212 possible root devices in major/minor format is also accepted.
213 (For example,
214 .I /dev/sda3
215 is major 8, minor 3, so you could use 'root=0x803' as an
216 alternative.)
217 .TP
218 .BR "'rootfstype=...'"
219 The 'rootfstype' option tells the kernel to mount the root filesystem as
220 if it where of the type specified.
221 This can be useful (for example) to
222 mount an ext3 filesystem as ext2 and then remove the journal in the root
223 filesystem, in fact reverting its format from ext3 to ext2 without the
224 need to boot the box from alternate media.
225 .TP
226 .BR 'ro' " and " 'rw'
227 The 'ro' option tells the kernel to mount the root filesystem
228 as 'read-only' so that filesystem consistency check programs (fsck)
229 can do their work on a quiescent filesystem.
230 No processes can
231 write to files on the filesystem in question until it is 'remounted'
232 as read/write capable, for example, by 'mount \-w \-n \-o remount /'.
233 (See also
234 .BR mount (8).)
235
236 The 'rw' option tells the kernel to mount the root filesystem read/write.
237 This is the default.
238
239 .TP
240 .B "'resume=...'"
241 This tells the kernel the location of the suspend-to-disk data that you want the machine to resume from after hibernation.
242 Usually, it is the same as your swap partition or file. Example:
243
244 .in +4n
245 .nf
246 resume=/dev/hda2
247 .fi
248 .in
249 .TP
250 .B "'reserve=...'"
251 This is used to protect I/O port regions from probes.
252 The form of the command is:
253
254 .in +4n
255 .nf
256 .BI reserve= iobase,extent[,iobase,extent]...
257 .fi
258 .in
259 .sp
260 In some machines it may be necessary to prevent device drivers from
261 checking for devices (auto-probing) in a specific region.
262 This may be
263 because of hardware that reacts badly to the probing, or hardware
264 that would be mistakenly identified, or merely
265 hardware you don't want the kernel to initialize.
266
267 The reserve boot-time argument specifies an I/O port region that
268 shouldn't be probed.
269 A device driver will not probe a reserved region,
270 unless another boot argument explicitly specifies that it do so.
271
272 For example, the boot line
273
274 .in +4n
275 .nf
276 reserve=0x300,32  blah=0x300
277 .fi
278 .in
279 .IP
280 keeps all device drivers except the driver for 'blah' from probing
281 0x300\-0x31f.
282 .TP
283 .B "'mem=...'"
284 The BIOS call defined in the PC specification that returns
285 the amount of installed memory was designed only to be able
286 to report up to 64MB.
287 Linux uses this BIOS call at boot to
288 determine how much memory is installed.
289 If you have more than 64MB of
290 RAM installed, you can use this boot argument to tell Linux how much memory
291 you have.
292 The value is in decimal or hexadecimal (prefix 0x),
293 and the suffixes 'k' (times 1024) or 'M' (times 1048576) can be used.
294 Here is a quote from Linus on usage of the 'mem=' parameter.
295
296 .in +0.5i
297 The kernel will accept any 'mem=xx' parameter you give it, and if it
298 turns out that you lied to it, it will crash horribly sooner or later.
299 The parameter indicates the highest addressable RAM address, so
300 \&'mem=0x1000000' means you have 16MB of memory, for example.
301 For a 96MB machine this would be 'mem=0x6000000'.
302
303 .BR NOTE :
304 some machines might use the top of memory for BIOS
305 caching or whatever, so you might not actually have up to the full
306 96MB addressable.
307 The reverse is also true: some chipsets will map
308 the physical memory that is covered by the BIOS area into the area
309 just past the top of memory, so the top-of-mem might actually be 96MB
310 + 384kB for example.
311 If you tell linux that it has more memory than
312 it actually does have, bad things will happen: maybe not at once, but
313 surely eventually.
314 .in
315
316 You can also use the boot argument 'mem=nopentium' to turn off 4 MB
317 page tables on kernels configured for IA32 systems with a pentium or newer
318 CPU.
319 .TP
320 .B "'panic=N'"
321 By default the kernel will not reboot after a panic, but this option
322 will cause a kernel reboot after N seconds (if N is greater than zero).
323 This panic timeout can also be set by
324
325 .in +4n
326 .nf
327 echo N > /proc/sys/kernel/panic
328 .fi
329 .in
330 .TP
331 .B "'reboot=[warm|cold][,[bios|hard]]'"
332 (Only when
333 .B CONFIG_BUGi386
334 is defined.)
335 Since 2.0.22 a reboot is by default a cold reboot.
336 One asks for the old default with 'reboot=warm'.
337 (A cold reboot may be required to reset certain hardware,
338 but might destroy not yet written data in a disk cache.
339 A warm reboot may be faster.)
340 By default a reboot is hard, by asking the keyboard controller
341 to pulse the reset line low, but there is at least one type
342 of motherboard where that doesn't work.
343 The option 'reboot=bios' will
344 instead jump through the BIOS.
345 .TP
346 .BR 'nosmp' " and " 'maxcpus=N'
347 (Only when __SMP__ is defined.)
348 A command-line option of 'nosmp' or 'maxcpus=0' will disable SMP
349 activation entirely; an option 'maxcpus=N' limits the maximum number
350 of CPUs activated in SMP mode to N.
351 .SS Boot arguments for use by kernel developers
352 .TP
353 .B "'debug'"
354 Kernel messages are handed off to the kernel log daemon klogd so that they
355 may be logged to disk.
356 Messages with a priority above
357 .I console_loglevel
358 are also printed on the console.
359 (For these levels, see
360 .IR <linux/kernel.h> .)
361 By default this variable is set to log anything more important than
362 debug messages.
363 This boot argument will cause the kernel to also
364 print the messages of DEBUG priority.
365 The console loglevel can also be set at run time via an option
366 to klogd.
367 See
368 .BR klogd (8).
369 .TP
370 .B "'profile=N'"
371 It is possible to enable a kernel profiling function,
372 if one wishes to find out where the kernel is spending its CPU cycles.
373 Profiling is enabled by setting the variable
374 .I prof_shift
375 to a nonzero value.
376 This is done either by specifying
377 .B CONFIG_PROFILE
378 at compile time, or by giving the 'profile=' option.
379 Now the value that
380 .I prof_shift
381 gets will be N, when given, or
382 .BR CONFIG_PROFILE_SHIFT ,
383 when that is given, or 2, the default.
384 The significance of this variable is that it
385 gives the granularity of the profiling: each clock tick, if the
386 system was executing kernel code, a counter is incremented:
387
388 .in +4n
389 .nf
390 profile[address >> prof_shift]++;
391 .fi
392 .in
393 .sp
394 The raw profiling information can be read from
395 .IR /proc/profile .
396 Probably you'll want to use a tool such as readprofile.c to digest it.
397 Writing to
398 .I /proc/profile
399 will clear the counters.
400 .TP
401 .B "'swap=N1,N2,N3,N4,N5,N6,N7,N8'"
402 Set the eight parameters max_page_age, page_advance, page_decline,
403 page_initial_age, age_cluster_fract, age_cluster_min, pageout_weight,
404 bufferout_weight that control the kernel swap algorithm.
405 For kernel tuners only.
406 .TP
407 .B "'buff=N1,N2,N3,N4,N5,N6'"
408 Set the six parameters max_buff_age, buff_advance, buff_decline,
409 buff_initial_age, bufferout_weight, buffermem_grace that control
410 kernel buffer memory management.
411 For kernel tuners only.
412 .SS Boot arguments for ramdisk use
413 (Only if the kernel was compiled with
414 .BR CONFIG_BLK_DEV_RAM .)
415 In general it is a bad idea to use a ramdisk under Linux\(emthe
416 system will use available memory more efficiently itself.
417 But while booting (or while constructing boot floppies)
418 it is often useful to load the floppy contents into a
419 ramdisk.
420 One might also have a system in which first
421 some modules (for filesystem or hardware) must be loaded
422 before the main disk can be accessed.
423
424 In Linux 1.3.48, ramdisk handling was changed drastically.
425 Earlier, the memory was allocated statically, and there was
426 a 'ramdisk=N' parameter to tell its size.
427 (This could also be set in the kernel image at compile time.)
428 These days ram disks use the buffer cache, and grow dynamically.
429 For a lot of information in conjunction with the new ramdisk
430 setup, see the kernel source file
431 .IR Documentation/blockdev/ramdisk.txt
432 .RI ( Documentation/ramdisk.txt
433 in older kernels).
434
435 There are four parameters, two boolean and two integral.
436 .TP
437 .B "'load_ramdisk=N'"
438 If N=1, do load a ramdisk.
439 If N=0, do not load a ramdisk.
440 (This is the default.)
441 .TP
442 .B "'prompt_ramdisk=N'"
443 If N=1, do prompt for insertion of the floppy.
444 (This is the default.)
445 If N=0, do not prompt.
446 (Thus, this parameter is never needed.)
447 .TP
448 .BR 'ramdisk_size=N' " or (obsolete) " 'ramdisk=N'
449 Set the maximal size of the ramdisk(s) to N kB.
450 The default is 4096 (4 MB).
451 .TP
452 .B "'ramdisk_start=N'"
453 Sets the starting block number (the offset on the floppy where
454 the ramdisk starts) to N.
455 This is needed in case the ramdisk follows a kernel image.
456 .TP
457 .B "'noinitrd'"
458 (Only if the kernel was compiled with
459 .B CONFIG_BLK_DEV_RAM
460 and
461 .BR CONFIG_BLK_DEV_INITRD .)
462 These days it is possible to compile the kernel to use initrd.
463 When this feature is enabled, the boot process will load the kernel
464 and an initial ramdisk; then the kernel converts initrd into
465 a "normal" ramdisk, which is mounted read-write as root device;
466 then
467 .I /linuxrc
468 is executed; afterward the "real" root filesystem is mounted,
469 and the initrd filesystem is moved over to
470 .IR /initrd ;
471 finally
472 the usual boot sequence (e.g., invocation of
473 .IR /sbin/init )
474 is performed.
475
476 For a detailed description of the initrd feature, see the kernel source file
477 .IR Documentation/initrd.txt .
478
479 The 'noinitrd' option tells the kernel that although it was compiled for
480 operation with initrd, it should not go through the above steps, but
481 leave the initrd data under
482 .IR /dev/initrd .
483 (This device can be used only once: the data is freed as soon as
484 the last process that used it has closed
485 .IR /dev/initrd .)
486 .SS Boot arguments for SCSI devices
487 General notation for this section:
488
489 .I iobase
490 -- the first I/O port that the SCSI host occupies.
491 These are specified in hexadecimal notation,
492 and usually lie in the range from 0x200 to 0x3ff.
493
494 .I irq
495 -- the hardware interrupt that the card is configured to use.
496 Valid values will be dependent on the card in question, but will
497 usually be 5, 7, 9, 10, 11, 12, and 15.
498 The other values are usually
499 used for common peripherals like IDE hard disks, floppies, serial
500 ports, and so on.
501
502 .I scsi-id
503 -- the ID that the host adapter uses to identify itself on the
504 SCSI bus.
505 Only some host adapters allow you to change this value, as
506 most have it permanently specified internally.
507 The usual default value
508 is 7, but the Seagate and Future Domain TMC-950 boards use 6.
509
510 .I parity
511 -- whether the SCSI host adapter expects the attached devices
512 to supply a parity value with all information exchanges.
513 Specifying a one indicates parity checking is enabled,
514 and a zero disables parity checking.
515 Again, not all adapters will support selection of parity
516 behavior as a boot argument.
517 .TP
518 .B "'max_scsi_luns=...'"
519 A SCSI device can have a number of 'subdevices' contained within
520 itself.
521 The most common example is one of the new SCSI CD-ROMs that
522 handle more than one disk at a time.
523 Each CD is addressed as a
524 \&'Logical Unit Number' (LUN) of that particular device.
525 But most
526 devices, such as hard disks, tape drives and such are only one device,
527 and will be assigned to LUN zero.
528
529 Some poorly designed SCSI devices cannot handle being probed for
530 LUNs not equal to zero.
531 Therefore, if the compile-time flag
532 .B CONFIG_SCSI_MULTI_LUN
533 is not set, newer kernels will by default only probe LUN zero.
534
535 To specify the number of probed LUNs at boot, one enters
536 \&'max_scsi_luns=n' as a boot arg, where n is a number between one and
537 eight.
538 To avoid problems as described above, one would use n=1 to
539 avoid upsetting such broken devices.
540 .TP
541 .B "SCSI tape configuration"
542 Some boot time configuration of the SCSI tape driver can be achieved
543 by using the following:
544
545 .in +4n
546 .nf
547 .BI st= buf_size[,write_threshold[,max_bufs]]
548 .fi
549 .in
550 .sp
551 The first two numbers are specified in units of kB.
552 The default
553 .I buf_size
554 is 32kB, and the maximum size that can be specified is a
555 ridiculous 16384kB.
556 The
557 .I write_threshold
558 is the value at which the buffer is committed to tape, with a
559 default value of 30kB.
560 The maximum number of buffers varies
561 with the number of drives detected, and has a default of two.
562 An example usage would be:
563
564 .in +4n
565 .nf
566 st=32,30,2
567 .fi
568 .in
569 .IP
570 Full details can be found in the file
571 .I Documentation/scsi/st.txt
572 (or
573 .I drivers/scsi/README.st
574 for older kernels) in the Linux kernel source.
575 .TP
576 .B "Adaptec aha151x, aha152x, aic6260, aic6360, SB16-SCSI configuration"
577 The aha numbers refer to cards and the aic numbers refer to the actual
578 SCSI chip on these type of cards, including the Soundblaster-16 SCSI.
579
580 The probe code for these SCSI hosts looks for an installed BIOS, and
581 if none is present, the probe will not find your card.
582 Then you will
583 have to use a boot argument of the form:
584
585 .in +4n
586 .nf
587 .BI aha152x= iobase[,irq[,scsi-id[,reconnect[,parity]]]]
588 .fi
589 .in
590 .IP
591 If the driver was compiled with debugging enabled, a sixth
592 value can be specified to set the debug level.
593
594 All the parameters are as described at the top of this section, and the
595 .I reconnect
596 value will allow device disconnect/reconnect if a nonzero value
597 is used.
598 An example usage is as follows:
599
600 .in +4n
601 .nf
602 aha152x=0x340,11,7,1
603 .fi
604 .in
605 .IP
606 Note that the parameters must be specified in order, meaning that if
607 you want to specify a parity setting, then you will have to specify an
608 iobase, irq, scsi-id and reconnect value as well.
609 .TP
610 .B "Adaptec aha154x configuration"
611 The aha1542 series cards have an i82077 floppy controller onboard,
612 while the aha1540 series cards do not.
613 These are busmastering cards,
614 and have parameters to set the "fairness" that is used to share
615 the bus with other devices.
616 The boot argument looks like the following.
617
618 .in +4n
619 .nf
620 .BI aha1542= iobase[,buson,busoff[,dmaspeed]]
621 .fi
622 .in
623 .IP
624 Valid iobase values are usually one of: 0x130, 0x134, 0x230, 0x234,
625 0x330, 0x334.
626 Clone cards may permit other values.
627
628 The
629 .IR buson ", " busoff
630 values refer to the number of microseconds that the
631 card dominates the ISA bus.
632 The defaults are 11us on, and 4us off, so
633 that other cards (such as an ISA LANCE Ethernet card) have a chance to
634 get access to the ISA bus.
635
636 The
637 .I dmaspeed
638 value refers to the rate (in MB/s) at which the DMA
639 (Direct Memory Access) transfers proceed.
640 The default is 5MB/s.
641 Newer revision cards allow you to select this value as part of the
642 soft-configuration, older cards use jumpers.
643 You can use values up to
644 10MB/s assuming that your motherboard is capable of handling it.
645 Experiment with caution if using values over 5MB/s.
646 .TP
647 .B "Adaptec aha274x, aha284x, aic7xxx configuration"
648 These boards can accept an argument of the form:
649
650 .in +4n
651 .nf
652 .BI aic7xxx= extended,no_reset
653 .fi
654 .in
655 .IP
656 The
657 .I extended
658 value, if nonzero, indicates that extended translation for large
659 disks is enabled.
660 The
661 .I no_reset
662 value, if nonzero, tells the driver not to reset the SCSI bus when
663 setting up the host adapter at boot.
664 .TP
665 .B "AdvanSys SCSI Hosts configuration ('advansys=')"
666 The AdvanSys driver can accept up to four I/O addresses that will be
667 probed for an AdvanSys SCSI card.
668 Note that these values (if used) do
669 not effect EISA or PCI probing in any way.
670 They are used only for
671 probing ISA and VLB cards.
672 In addition, if the driver has been
673 compiled with debugging enabled, the level of debugging output can be
674 set by adding an 0xdeb[0-f] parameter.
675 The 0-f allows setting the
676 level of the debugging messages to any of 16 levels of verbosity.
677 .TP
678 .B "AM53C974"
679 Syntax:
680
681 .in +4n
682 .nf
683 .BI AM53C974= host-scsi-id,target-scsi-id,max-rate,max-offset
684 .fi
685 .in
686 .TP
687 .B "BusLogic SCSI Hosts configuration ('BusLogic=')"
688
689 Syntax:
690 .in +4n
691 .nf
692 .BI BusLogic= N1,N2,N3,N4,N5,S1,S2,...
693 .fi
694 .in
695 .IP
696 For an extensive discussion of the BusLogic command line parameters,
697 see the kernel source file
698 .IR drivers/scsi/BusLogic.c .
699 .\" (lines 3149-3270 in the kernel version I am looking at).
700 The text
701 below is a very much abbreviated extract.
702
703 The parameters N1-N5 are integers.
704 The parameters S1,... are strings.
705 N1 is the I/O Address at which the Host Adapter is located.
706 N2 is the Tagged Queue Depth to use for Target Devices that support
707 Tagged Queuing.
708 N3 is the Bus Settle Time in seconds.
709 This is the amount of time
710 to wait between a Host Adapter Hard Reset which
711 initiates a SCSI Bus Reset and issuing any SCSI Commands.
712 N4 is the Local Options (for one Host Adapter).
713 N5 is the Global Options (for all Host Adapters).
714
715 The string options are used to provide control over Tagged Queuing
716 (TQ:Default, TQ:Enable, TQ:Disable, TQ:<Per-Target-Spec>), over
717 Error Recovery (ER:Default, ER:HardReset, ER:BusDeviceReset,
718 ER:None, ER:<Per-Target-Spec>), and over Host Adapter Probing
719 (NoProbe, NoProbeISA, NoSortPCI).
720 .TP
721 .B "EATA/DMA configuration"
722 The default list of I/O ports to be probed can be changed by
723
724 .in +4n
725 .nf
726 .BI eata= iobase,iobase,... .
727 .fi
728 .in
729 .TP
730 .B "Future Domain TMC-16x0 configuration"
731 Syntax:
732
733 .in +4n
734 .nf
735 .BI fdomain= iobase,irq[,adapter_id]
736 .fi
737 .in
738 .TP
739 .B "Great Valley Products (GVP) SCSI controller configuration"
740 Syntax:
741
742 .in +4n
743 .nf
744 .BI gvp11= dma_transfer_bitmask
745 .fi
746 .in
747 .TP
748 .B "Future Domain TMC-8xx, TMC-950 configuration"
749 Syntax:
750
751 .in +4n
752 .nf
753 .BI tmc8xx= mem_base,irq
754 .fi
755 .in
756 .IP
757 The
758 .I mem_base
759 value is the value of the memory-mapped I/O region that
760 the card uses.
761 This will usually be one of the following values:
762 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000.
763 .TP
764 .B "IN2000 configuration"
765 Syntax:
766
767 .in +4n
768 .nf
769 .BI in2000= S
770 .fi
771 .in
772 .IP
773 where S is a comma-separated string of items keyword[:value].
774 Recognized keywords (possibly with value) are:
775 ioport:addr, noreset, nosync:x, period:ns, disconnect:x,
776 debug:x, proc:x.
777 For the function of these parameters, see the kernel source file
778 .IR drivers/scsi/in2000.c .
779 .TP
780 .B "NCR5380 and NCR53C400 configuration"
781 The boot argument is of the form
782
783 .in +4n
784 .nf
785 .BI ncr5380= iobase,irq,dma
786 .fi
787 .in
788 .IP
789 or
790
791 .in +4n
792 .nf
793 .BI ncr53c400= iobase,irq
794 .fi
795 .in
796 .IP
797 If the card doesn't use interrupts, then an IRQ value of 255 (0xff) will
798 disable interrupts.
799 An IRQ value of 254 means to autoprobe.
800 More details can be found in the file
801 .I Documentation/scsi/g_NCR5380.txt
802 (or
803 .I drivers/scsi/README.g_NCR5380
804 for older kernels) in the Linux kernel source.
805 .TP
806 .B "NCR53C8xx configuration"
807 Syntax:
808
809 .in +4n
810 .nf
811 .BI ncr53c8xx= S
812 .fi
813 .in
814 .IP
815 where S is a comma-separated string of items keyword:value.
816 Recognized keywords are: mpar (master_parity), spar (scsi_parity),
817 disc (disconnection), specf (special_features), ultra (ultra_scsi),
818 fsn (force_sync_nego), tags (default_tags), sync (default_sync),
819 verb (verbose), debug (debug), burst (burst_max).
820 For the function of the assigned values, see the kernel source file
821 .IR drivers/scsi/ncr53c8xx.c .
822 .TP
823 .B "NCR53c406a configuration"
824 Syntax:
825
826 .in +4n
827 .nf
828 .BI ncr53c406a= iobase[,irq[,fastpio]]
829 .fi
830 .in
831 .IP
832 Specify irq = 0 for noninterrupt driven mode.
833 Set fastpio = 1 for fast pio mode, 0 for slow mode.
834 .TP
835 .B "Pro Audio Spectrum configuration"
836 The PAS16 uses a NC5380 SCSI chip, and newer models support
837 jumperless configuration.
838 The boot argument is of the form:
839
840 .in +4n
841 .nf
842 .BI pas16= iobase,irq
843 .fi
844 .in
845 .IP
846 The only difference is that you can specify an IRQ value of 255, which
847 will tell the driver to work without using interrupts, albeit at a
848 performance loss.
849 The iobase is usually 0x388.
850 .TP
851 .B "Seagate ST-0x configuration"
852 If your card is not detected at boot time,
853 you will then have to use a boot argument of the form:
854
855 .in +4n
856 .nf
857 .BI st0x= mem_base,irq
858 .fi
859 .in
860 .IP
861 The
862 .I mem_base
863 value is the value of the memory-mapped I/O region that
864 the card uses.
865 This will usually be one of the following values:
866 0xc8000, 0xca000, 0xcc000, 0xce000, 0xdc000, 0xde000.
867 .TP
868 .B "Trantor T128 configuration"
869 These cards are also based on the NCR5380 chip, and accept the
870 following options:
871
872 .in +4n
873 .nf
874 .BI t128= mem_base,irq
875 .fi
876 .in
877 .IP
878 The valid values for
879 .I mem_base
880 are as follows: 0xcc000, 0xc8000, 0xdc000, 0xd8000.
881 .TP
882 .B "UltraStor 14F/34F configuration"
883 The default list of I/O ports to be probed can be changed by
884
885 .in +4n
886 .nf
887 .BI eata= iobase,iobase,... .
888 .fi
889 .in
890 .TP
891 .B "WD7000 configuration"
892 Syntax:
893
894 .in +4n
895 .nf
896 .BI wd7000= irq,dma,iobase
897 .fi
898 .in
899 .TP
900 .B "Commodore Amiga A2091/590 SCSI controller configuration"
901 Syntax:
902
903 .in +4n
904 .nf
905 .BI wd33c93= S
906 .fi
907 .in
908 .IP
909 where S is a comma-separated string of options.
910 Recognized options are
911 nosync:bitmask, nodma:x, period:ns, disconnect:x, debug:x,
912 clock:x, next.
913 For details, see the kernel source file
914 .IR drivers/scsi/wd33c93.c .
915 .SS Hard disks
916 .TP
917 .B "IDE Disk/CD-ROM Driver Parameters"
918 The IDE driver accepts a number of parameters, which range from disk
919 geometry specifications, to support for broken controller chips.
920 Drive-specific options are specified by using 'hdX=' with X in 'a'-'h'.
921
922 Non-drive-specific options are specified with the prefix 'hd='.
923 Note that using a drive-specific prefix for a non-drive-specific option
924 will still work, and the option will just be applied as expected.
925
926 Also note that 'hd=' can be used to refer to the next unspecified
927 drive in the (a, ..., h) sequence.
928 For the following discussions,
929 the 'hd=' option will be cited for brevity.
930 See the file
931 .I Documentation/ide.txt
932 (or
933 .I drivers/block/README.ide
934 for older kernels) in the Linux kernel source for more details.
935 .TP
936 .B "The 'hd=cyls,heads,sects[,wpcom[,irq]]' options"
937 These options are used to specify the physical geometry of the disk.
938 Only the first three values are required.
939 The cylinder/head/sectors
940 values will be those used by fdisk.
941 The write precompensation value
942 is ignored for IDE disks.
943 The IRQ value specified will be the IRQ
944 used for the interface that the drive resides on, and is not really a
945 drive-specific parameter.
946 .TP
947 .B "The 'hd=serialize' option"
948 The dual IDE interface CMD-640 chip is broken as designed such that
949 when drives on the secondary interface are used at the same time as
950 drives on the primary interface, it will corrupt your data.
951 Using this
952 option tells the driver to make sure that both interfaces are never
953 used at the same time.
954 .TP
955 .B "The 'hd=dtc2278' option"
956 This option tells the driver that you have a DTC-2278D IDE interface.
957 The driver then tries to do DTC-specific operations to enable the
958 second interface and to enable faster transfer modes.
959 .TP
960 .B "The 'hd=noprobe' option"
961 Do not probe for this drive.
962 For example,
963
964 .in +4n
965 .nf
966 hdb=noprobe hdb=1166,7,17
967 .fi
968 .in
969 .IP
970 would disable the probe, but still specify the drive geometry so
971 that it would be registered as a valid block device, and hence
972 usable.
973 .TP
974 .B "The 'hd=nowerr' option"
975 Some drives apparently have the
976 .B WRERR_STAT
977 bit stuck on permanently.
978 This enables a work-around for these broken devices.
979 .TP
980 .B "The 'hd=cdrom' option"
981 This tells the IDE driver that there is an ATAPI compatible CD-ROM
982 attached in place of a normal IDE hard disk.
983 In most cases the CD-ROM
984 is identified automatically, but if it isn't then this may help.
985 .TP
986 .B "Standard ST-506 Disk Driver Options ('hd=')"
987 The standard disk driver can accept geometry arguments for the disks
988 similar to the IDE driver.
989 Note however that it expects only three
990 values (C/H/S); any more or any less and it will silently ignore you.
991 Also, it accepts only 'hd=' as an argument, that is, 'hda='
992 and so on are not valid here.
993 The format is as follows:
994
995 .in +4n
996 .nf
997 hd=cyls,heads,sects
998 .fi
999 .in
1000 .IP
1001 If there are two disks installed, the above is repeated with the
1002 geometry parameters of the second disk.
1003 .TP
1004 .B "XT Disk Driver Options ('xd=')"
1005 If you are unfortunate enough to be using one of these old 8-bit cards
1006 that move data at a whopping 125kB/s, then here is the scoop.
1007 If the card is not recognized,
1008 you will have to use a boot argument of the form:
1009
1010 .in +4n
1011 .nf
1012 xd=type,irq,iobase,dma_chan
1013 .fi
1014 .in
1015 .IP
1016 The type value specifies the particular manufacturer of the card,
1017 overriding autodetection.
1018 For the types to use, consult the
1019 .I drivers/block/xd.c
1020 source file of the kernel you are using.
1021 The type is an index in the list
1022 .I xd_sigs
1023 and in the course of time
1024 .\" 1.1.50, 1.3.81, 1.3.99, 2.0.34, 2.1.67, 2.1.78, 2.1.127
1025 types have been added to or deleted from the middle of the list,
1026 changing all type numbers.
1027 Today (Linux 2.5.0) the types are
1028 0=generic; 1=DTC 5150cx; 2,3=DTC 5150x; 4,5=Western Digital;
1029 6,7,8=Seagate; 9=Omti; 10=XEBEC, and where here several types are
1030 given with the same designation, they are equivalent.
1031
1032 The xd_setup() function does no checking on the values, and assumes
1033 that you entered all four values.
1034 Don't disappoint it.
1035 Here is an
1036 example usage for a WD1002 controller with the BIOS disabled/removed,
1037 using the 'default' XT controller parameters:
1038
1039 .in +4n
1040 .nf
1041 xd=2,5,0x320,3
1042 .fi
1043 .in
1044 .TP
1045 .B "Syquest's EZ* removable disks"
1046 Syntax:
1047
1048 .in +4n
1049 .nf
1050 .BI ez= iobase[,irq[,rep[,nybble]]]
1051 .fi
1052 .in
1053 .SS IBM MCA bus devices
1054 See also the kernel source file
1055 .IR Documentation/mca.txt .
1056 .TP
1057 .B "PS/2 ESDI hard disks"
1058 It is possible to specify the desired geometry at boot time:
1059
1060 .in +4n
1061 .nf
1062 .BI ed= cyls,heads,sectors.
1063 .fi
1064 .in
1065 .IP
1066 For a ThinkPad-720, add the option
1067
1068 .in +4n
1069 .nf
1070 .BR tp720=1 .
1071 .fi
1072 .in
1073 .TP
1074 .B "IBM Microchannel SCSI Subsystem configuration"
1075 Syntax:
1076
1077 .in +4n
1078 .nf
1079 .BI ibmmcascsi= N
1080 .fi
1081 .in
1082 .IP
1083 where N is the
1084 .I pun
1085 (SCSI ID) of the subsystem.
1086 .TP
1087 .B "The Aztech Interface"
1088 The syntax for this type of card is:
1089
1090 .in +4n
1091 .nf
1092 aztcd=iobase[,magic_number]
1093 .fi
1094 .in
1095 .IP
1096 If you set the magic_number to 0x79, then the driver will try and run
1097 anyway in the event of an unknown firmware version.
1098 All other values
1099 are ignored.
1100 .TP
1101 .B "Parallel port CD-ROM drives"
1102 Syntax:
1103
1104 .in +4n
1105 .nf
1106 pcd.driveN=prt,pro,uni,mod,slv,dly
1107 pcd.nice=nice
1108 .fi
1109 .in
1110 .IP
1111 where 'port' is the base address, 'pro' is the protocol number, 'uni'
1112 is the unit selector (for chained devices), 'mod' is the mode (or \-1
1113 to choose the best automatically), 'slv' is 1 if it should be a slave,
1114 and 'dly' is a small integer for slowing down port accesses.
1115 The 'nice' parameter controls the driver's use of idle CPU time, at the
1116 expense of some speed.
1117 .TP
1118 .B "The CDU-31A and CDU-33A Sony Interface"
1119 This CD-ROM interface is found on some of the Pro Audio Spectrum sound
1120 cards, and other Sony supplied interface cards.
1121 The syntax is as follows:
1122
1123 .in +4n
1124 .nf
1125 cdu31a=iobase,[irq[,is_pas_card]]
1126 .fi
1127 .in
1128 .IP
1129 Specifying an IRQ value of zero tells the driver that hardware
1130 interrupts aren't supported (as on some PAS cards).
1131 If your card
1132 supports interrupts, you should use them as it cuts down on the CPU
1133 usage of the driver.
1134
1135 The
1136 .I is_pas_card
1137 should be entered as 'PAS' if using a Pro Audio Spectrum card,
1138 and otherwise it should not be specified at all.
1139 .TP
1140 .B "The CDU-535 Sony Interface"
1141 The syntax for this CD-ROM interface is:
1142
1143 .in +4n
1144 .nf
1145 sonycd535=iobase[,irq]
1146 .fi
1147 .in
1148 .IP
1149 A zero can be used for the I/O base as a 'placeholder' if one wishes
1150 to specify an IRQ value.
1151 .TP
1152 .B "The GoldStar Interface"
1153 The syntax for this CD-ROM interface is:
1154
1155 .in +4n
1156 .nf
1157 gscd=iobase
1158 .fi
1159 .in
1160 .TP
1161 .B "The ISP16 CD-ROM Interface"
1162 Syntax:
1163
1164 .in +4n
1165 .nf
1166 isp16=[iobase[,irq[,dma[,type]]]]
1167 .fi
1168 .in
1169 .IP
1170 (Three integers and a string.)
1171 If the type is given as 'noisp16',
1172 the interface will not be configured.
1173 Other recognized types
1174 are: 'Sanyo", 'Sony', 'Panasonic' and 'Mitsumi'.
1175 .TP
1176 .B "The Mitsumi Standard Interface"
1177 The syntax for this CD-ROM interface is:
1178
1179 .in +4n
1180 .nf
1181 mcd=iobase,[irq[,wait_value]]
1182 .fi
1183 .in
1184 .IP
1185 The
1186 .I wait_value
1187 is used as an internal timeout value for people who are
1188 having problems with their drive, and may or may not be implemented
1189 depending on a compile-time #define.
1190 The Mitsumi FX400 is an IDE/ATAPI CD-ROM player and does not use
1191 the mcd driver.
1192 .TP
1193 .B "The Mitsumi XA/MultiSession Interface"
1194 This is for the same hardware as above, but the driver has extended features.
1195 Syntax:
1196
1197 .in +4n
1198 .nf
1199 mcdx=iobase[,irq]
1200 .fi
1201 .in
1202 .TP
1203 .B "The Optics Storage Interface"
1204 The syntax for this type of card is:
1205
1206 .in +4n
1207 .nf
1208 optcd=iobase
1209 .fi
1210 .in
1211 .TP
1212 .B "The Phillips CM206 Interface"
1213 The syntax for this type of card is:
1214
1215 .in +4n
1216 .nf
1217 cm206=[iobase][,irq]
1218 .fi
1219 .in
1220 .IP
1221 The driver assumes numbers between 3 and 11 are IRQ values, and
1222 numbers between 0x300 and 0x370 are I/O ports, so you can specify one,
1223 or both numbers, in any order.
1224 It also accepts 'cm206=auto' to enable
1225 autoprobing.
1226 .TP
1227 .B "The Sanyo Interface"
1228 The syntax for this type of card is:
1229
1230 .in +4n
1231 .nf
1232 sjcd=iobase[,irq[,dma_channel]]
1233 .fi
1234 .in
1235 .TP
1236 .B "The SoundBlaster Pro Interface"
1237 The syntax for this type of card is:
1238
1239 .in +4n
1240 .nf
1241 sbpcd=iobase,type
1242 .fi
1243 .in
1244 .IP
1245 where type is one of the following (case sensitive) strings:
1246 \&'SoundBlaster', 'LaserMate', or 'SPEA'.
1247 The I/O base is that of the
1248 CD-ROM interface, and not that of the sound portion of the card.
1249 .SS Ethernet devices
1250 Different drivers make use of different parameters, but they all at
1251 least share having an IRQ, an I/O port base value, and a name.
1252 In its most generic form, it looks something like this:
1253
1254 .in +4n
1255 .nf
1256 ether=irq,iobase[,param_1[,...param_8]],name
1257 .fi
1258 .in
1259
1260 The first nonnumeric argument is taken as the name.
1261 The param_n values (if applicable) usually have different meanings for each
1262 different card/driver.
1263 Typical param_n values are used to specify
1264 things like shared memory address, interface selection, DMA channel
1265 and the like.
1266
1267 The most common use of this parameter is to force probing for a second
1268 ethercard, as the default is to probe only for one.
1269 This can be accomplished with a simple:
1270
1271 .in +4n
1272 .nf
1273 ether=0,0,eth1
1274 .fi
1275 .in
1276
1277 Note that the values of zero for the IRQ and I/O base in the above
1278 example tell the driver(s) to autoprobe.
1279
1280 The Ethernet-HowTo has extensive documentation on using multiple
1281 cards and on the card/driver-specific implementation
1282 of the param_n values where used.
1283 Interested readers should refer to
1284 the section in that document on their particular card.
1285 .SS The floppy disk driver
1286 There are many floppy driver options, and they are all listed in
1287 .I Documentation/floppy.txt
1288 (or
1289 .I drivers/block/README.fd
1290 for older kernels) in the Linux kernel source.
1291 This information is taken directly
1292 from that file.
1293 .TP
1294 .B "floppy=mask,allowed_drive_mask"
1295 Sets the bit mask of allowed drives to mask.
1296 By default, only units 0
1297 and 1 of each floppy controller are allowed.
1298 This is done because
1299 certain nonstandard hardware (ASUS PCI motherboards) mess up the
1300 keyboard when accessing units 2 or 3.
1301 This option is somewhat
1302 obsoleted by the cmos option.
1303 .TP
1304 .B "floppy=all_drives"
1305 Sets the bit mask of allowed drives to all drives.
1306 Use this if you have
1307 more than two drives connected to a floppy controller.
1308 .TP
1309 .B "floppy=asus_pci"
1310 Sets the bit mask to allow only units 0 and 1.
1311 (The default)
1312 .TP
1313 .B "floppy=daring"
1314 Tells the floppy driver that you have a well behaved floppy
1315 controller.
1316 This allows more efficient and smoother operation, but
1317 may fail on certain controllers.
1318 This may speed up certain operations.
1319 .TP
1320 .B "floppy=0,daring"
1321 Tells the floppy driver that your floppy controller should be used
1322 with caution.
1323 .TP
1324 .B "floppy=one_fdc"
1325 Tells the floppy driver that you have only floppy controller (default)
1326 .TP
1327 .BR floppy=two_fdc " or " floppy=address,two_fdc
1328 Tells the floppy driver that you have two floppy controllers.
1329 The second floppy controller is assumed to be at address.
1330 If address is
1331 not given, 0x370 is assumed.
1332 .TP
1333 .B "floppy=thinkpad"
1334 Tells the floppy driver that you have a Thinkpad.
1335 Thinkpads use an
1336 inverted convention for the disk change line.
1337 .TP
1338 .B "floppy=0,thinkpad"
1339 Tells the floppy driver that you don't have a Thinkpad.
1340 .TP
1341 .B "floppy=drive,type,cmos"
1342 Sets the cmos type of drive to type.
1343 Additionally, this drive is
1344 allowed in the bit mask.
1345 This is useful if you have more than two
1346 floppy drives (only two can be described in the physical cmos), or if
1347 your BIOS uses nonstandard CMOS types.
1348 Setting the CMOS to 0 for the
1349 first two drives (default) makes the floppy driver read the physical
1350 cmos for those drives.
1351 .TP
1352 .B "floppy=unexpected_interrupts"
1353 Print a warning message when an unexpected interrupt is received
1354 (default behavior)
1355 .TP
1356 .BR floppy=no_unexpected_interrupts " or " floppy=L40SX
1357 Don't print a message when an unexpected interrupt is received.
1358 This is needed on IBM L40SX laptops in certain video modes.
1359 (There seems to
1360 be an interaction between video and floppy.
1361 The unexpected interrupts
1362 only affect performance, and can safely be ignored.)
1363 .SS The sound driver
1364 The sound driver can also accept boot arguments to override the compiled in
1365 values.
1366 This is not recommended, as it is rather complex.
1367 It is described in the Linux kernel source file
1368 .IR Documentation/sound/oss/README.OSS
1369 .RI ( drivers/sound/Readme.linux
1370 in older kernel versions).
1371 It accepts
1372 a boot argument of the form:
1373
1374 .in +4n
1375 .nf
1376 sound=device1[,device2[,device3...[,device10]]]
1377 .fi
1378 .in
1379 .IP
1380 where each deviceN value is of the following format 0xTaaaId and the
1381 bytes are used as follows:
1382
1383 T \- device type: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16,
1384 7=SB16-MPU401
1385
1386 aaa \- I/O address in hex.
1387
1388 I \- interrupt line in hex (i.e 10=a, 11=b, ...)
1389
1390 d \- DMA channel.
1391
1392 As you can see it gets pretty messy, and you are better off to compile
1393 in your own personal values as recommended.
1394 Using a boot argument of
1395 \&'sound=0' will disable the sound driver entirely.
1396 .SS ISDN drivers
1397 .TP
1398 .B "The ICN ISDN driver"
1399 Syntax:
1400
1401 .in +4n
1402 .nf
1403 icn=iobase,membase,icn_id1,icn_id2
1404 .fi
1405 .in
1406 .IP
1407 where icn_id1,icn_id2 are two strings used to identify the
1408 card in kernel messages.
1409 .TP
1410 .B "The PCBIT ISDN driver"
1411 Syntax:
1412
1413 .in +4n
1414 .nf
1415 pcbit=membase1,irq1[,membase2,irq2]
1416 .fi
1417 .in
1418 .IP
1419 where membaseN is the shared memory base of the N'th card, and irqN is
1420 the interrupt setting of the N'th card.
1421 The default is IRQ 5 and
1422 membase 0xD0000.
1423 .TP
1424 .B "The Teles ISDN driver"
1425 Syntax:
1426
1427 .in +4n
1428 .nf
1429 teles=iobase,irq,membase,protocol,teles_id
1430 .fi
1431 .in
1432 .IP
1433 where iobase is the I/O port address of the card, membase is the
1434 shared memory base address of the card, irq is the interrupt channel
1435 the card uses, and teles_id is the unique ASCII string identifier.
1436 .SS Serial port drivers
1437 .TP
1438 .B "The RISCom/8 Multiport Serial Driver ('riscom8=')"
1439 Syntax:
1440
1441 .in +4n
1442 .nf
1443 riscom=iobase1[,iobase2[,iobase3[,iobase4]]]
1444 .fi
1445 .in
1446 .IP
1447 More details can be found in the kernel source file
1448 .IR Documentation/riscom8.txt .
1449 .TP
1450 .B "The DigiBoard Driver ('digi=')"
1451 If this option is used, it should have precisely six parameters.
1452 Syntax:
1453
1454 .in +4n
1455 .nf
1456 digi=status,type,altpin,numports,iobase,membase
1457 .fi
1458 .in
1459 .IP
1460 The parameters maybe given as integers, or as strings.
1461 If strings are used, then iobase and membase should be given
1462 in hexadecimal.
1463 The integer arguments (fewer may be given) are in order:
1464 status (Enable(1) or Disable(0) this card),
1465 type (PC/Xi(0), PC/Xe(1), PC/Xeve(2), PC/Xem(3)),
1466 altpin (Enable(1) or Disable(0) alternate pin arrangement),
1467 numports (number of ports on this card),
1468 iobase (I/O Port where card is configured (in HEX)),
1469 membase (base of memory window (in HEX)).
1470 Thus, the following two boot prompt arguments are equivalent:
1471
1472 .in +4n
1473 .nf
1474 digi=E,PC/Xi,D,16,200,D0000
1475 digi=1,0,0,16,0x200,851968
1476 .fi
1477 .in
1478 .IP
1479 More details can be found in the kernel source file
1480 .IR Documentation/digiboard.txt .
1481 .TP
1482 .B "The Baycom Serial/Parallel Radio Modem"
1483 Syntax:
1484
1485 .in +4n
1486 .nf
1487 baycom=iobase,irq,modem
1488 .fi
1489 .in
1490 .IP
1491 There are precisely 3 parameters; for several cards, give
1492 several 'baycom=' commands.
1493 The modem parameter is a string
1494 that can take one of the values ser12, ser12*, par96, par96*.
1495 Here the * denotes that software DCD is to be used, and
1496 ser12/par96 chooses between the supported modem types.
1497 For more details, see the file
1498 .I Documentation/networking/baycom.txt
1499 (or
1500 .I drivers/net/README.baycom
1501 for older kernels) in the Linux kernel source.
1502 .TP
1503 .B "Soundcard radio modem driver"
1504 Syntax:
1505
1506 .in +4n
1507 .nf
1508 soundmodem=iobase,irq,dma[,dma2[,serio[,pario]]],0,mode
1509 .fi
1510 .in
1511 .IP
1512 All parameters except the last are integers;
1513 the dummy 0 is required because of a bug in the setup code.
1514 The mode parameter is a string with syntax hw:modem,
1515 where hw is one of sbc, wss, or wssfdx, and modem is one of
1516 afsk1200 or fsk9600.
1517 .SS The line printer driver
1518 .TP
1519 .B "'lp='"
1520 .br
1521 Syntax:
1522
1523 .in +4n
1524 .nf
1525 lp=0
1526 lp=auto
1527 lp=reset
1528 lp=port[,port...]
1529 .fi
1530 .in
1531 .IP
1532 You can tell the printer driver what ports to use and what ports not
1533 to use.
1534 The latter comes in handy if you don't want the printer driver
1535 to claim all available parallel ports, so that other drivers
1536 (e.g., PLIP, PPA) can use them instead.
1537
1538 The format of the argument is multiple port names.
1539 For example,
1540 lp=none,parport0 would use the first parallel port for lp1, and
1541 disable lp0.
1542 To disable the printer driver entirely, one can use
1543 lp=0.
1544 .TP
1545 .B "WDT500/501 driver"
1546 Syntax:
1547
1548 .in +4n
1549 .nf
1550 wdt=io,irq
1551 .fi
1552 .in
1553 .SS Mouse drivers
1554 .TP
1555 .B "'bmouse=irq'"
1556 The busmouse driver accepts only one parameter, that being the
1557 hardware IRQ value to be used.
1558 .TP
1559 .B "'msmouse=irq'"
1560 And precisely the same is true for the msmouse driver.
1561 .TP
1562 .B "ATARI mouse setup"
1563 Syntax:
1564
1565 .in +4n
1566 .nf
1567 atamouse=threshold[,y-threshold]
1568 .fi
1569 .in
1570 .IP
1571 If only one argument is given, it is used for both
1572 x-threshold and y-threshold.
1573 Otherwise, the first argument
1574 is the x-threshold, and the second the y-threshold.
1575 These values must lie between 1 and 20 (inclusive); the default is 2.
1576 .SS Video hardware
1577 .TP
1578 .B "'no-scroll'"
1579 This option tells the console driver not to use hardware scroll
1580 (where a scroll is effected by moving the screen origin in video
1581 memory, instead of moving the data).
1582 It is required by certain
1583 Braille machines.
1584 .\" .SH AUTHORS
1585 .\" Linus Torvalds (and many others)
1586 .SH SEE ALSO
1587 .BR klogd (8),
1588 .BR mount (8)
1589
1590 Large parts of this man page have been derived from the
1591 Boot Parameter HOWTO (version 1.0.1) written by Paul Gortmaker.
1592 More information may be found in this (or a more recent) HOWTO.
1593 An up-to-date source of information is the kernel source file
1594 .IR Documentation/kernel-parameters.txt .
1595 .SH COLOPHON
1596 This page is part of release 3.67 of the Linux
1597 .I man-pages
1598 project.
1599 A description of the project,
1600 information about reporting bugs,
1601 and the latest version of this page,
1602 can be found at
1603 \%http://www.kernel.org/doc/man\-pages/.