Pull bugzilla-8171 into release branch
[linux-2.6] / Documentation / m68k / kernel-options.txt
1
2
3                                   Command Line Options for Linux/m68k
4                                   ===================================
5
6 Last Update: 2 May 1999
7 Linux/m68k version: 2.2.6
8 Author: Roman.Hodek@informatik.uni-erlangen.de (Roman Hodek)
9 Update: jds@kom.auc.dk (Jes Sorensen) and faq@linux-m68k.org (Chris Lawrence)
10
11 0) Introduction
12 ===============
13
14   Often I've been asked which command line options the Linux/m68k
15 kernel understands, or how the exact syntax for the ... option is, or
16 ... about the option ... . I hope, this document supplies all the
17 answers...
18
19   Note that some options might be outdated, their descriptions being
20 incomplete or missing. Please update the information and send in the
21 patches.
22
23
24 1) Overview of the Kernel's Option Processing
25 =============================================
26
27 The kernel knows three kinds of options on its command line:
28
29   1) kernel options
30   2) environment settings
31   3) arguments for init
32
33 To which of these classes an argument belongs is determined as
34 follows: If the option is known to the kernel itself, i.e. if the name
35 (the part before the '=') or, in some cases, the whole argument string
36 is known to the kernel, it belongs to class 1. Otherwise, if the
37 argument contains an '=', it is of class 2, and the definition is put
38 into init's environment. All other arguments are passed to init as
39 command line options.
40
41   This document describes the valid kernel options for Linux/m68k in
42 the version mentioned at the start of this file. Later revisions may
43 add new such options, and some may be missing in older versions.
44
45   In general, the value (the part after the '=') of an option is a
46 list of values separated by commas. The interpretation of these values
47 is up to the driver that "owns" the option. This association of
48 options with drivers is also the reason that some are further
49 subdivided.
50
51
52 2) General Kernel Options
53 =========================
54
55 2.1) root=
56 ----------
57
58 Syntax: root=/dev/<device>
59     or: root=<hex_number>
60
61 This tells the kernel which device it should mount as the root
62 filesystem. The device must be a block device with a valid filesystem
63 on it.
64
65   The first syntax gives the device by name. These names are converted
66 into a major/minor number internally in the kernel in an unusual way.
67 Normally, this "conversion" is done by the device files in /dev, but
68 this isn't possible here, because the root filesystem (with /dev)
69 isn't mounted yet... So the kernel parses the name itself, with some
70 hardcoded name to number mappings. The name must always be a
71 combination of two or three letters, followed by a decimal number.
72 Valid names are:
73
74   /dev/ram: -> 0x0100 (initial ramdisk)
75   /dev/hda: -> 0x0300 (first IDE disk)
76   /dev/hdb: -> 0x0340 (second IDE disk)
77   /dev/sda: -> 0x0800 (first SCSI disk)
78   /dev/sdb: -> 0x0810 (second SCSI disk)
79   /dev/sdc: -> 0x0820 (third SCSI disk)
80   /dev/sdd: -> 0x0830 (forth SCSI disk)
81   /dev/sde: -> 0x0840 (fifth SCSI disk)
82   /dev/fd : -> 0x0200 (floppy disk)
83   /dev/xda: -> 0x0c00 (first XT disk, unused in Linux/m68k)
84   /dev/xdb: -> 0x0c40 (second XT disk, unused in Linux/m68k)
85   /dev/ada: -> 0x1c00 (first ACSI device)
86   /dev/adb: -> 0x1c10 (second ACSI device)
87   /dev/adc: -> 0x1c20 (third ACSI device)
88   /dev/add: -> 0x1c30 (forth ACSI device)
89
90 The last four names are available only if the kernel has been compiled
91 with Atari and ACSI support.
92
93   The name must be followed by a decimal number, that stands for the
94 partition number. Internally, the value of the number is just
95 added to the device number mentioned in the table above. The
96 exceptions are /dev/ram and /dev/fd, where /dev/ram refers to an
97 initial ramdisk loaded by your bootstrap program (please consult the
98 instructions for your bootstrap program to find out how to load an
99 initial ramdisk). As of kernel version 2.0.18 you must specify
100 /dev/ram as the root device if you want to boot from an initial
101 ramdisk. For the floppy devices, /dev/fd, the number stands for the
102 floppy drive number (there are no partitions on floppy disks). I.e.,
103 /dev/fd0 stands for the first drive, /dev/fd1 for the second, and so
104 on. Since the number is just added, you can also force the disk format
105 by adding a number greater than 3. If you look into your /dev
106 directory, use can see the /dev/fd0D720 has major 2 and minor 16. You
107 can specify this device for the root FS by writing "root=/dev/fd16" on
108 the kernel command line.
109
110 [Strange and maybe uninteresting stuff ON]
111
112   This unusual translation of device names has some strange
113 consequences: If, for example, you have a symbolic link from /dev/fd
114 to /dev/fd0D720 as an abbreviation for floppy driver #0 in DD format,
115 you cannot use this name for specifying the root device, because the
116 kernel cannot see this symlink before mounting the root FS and it
117 isn't in the table above. If you use it, the root device will not be 
118 set at all, without an error message. Another example: You cannot use a
119 partition on e.g. the sixth SCSI disk as the root filesystem, if you
120 want to specify it by name. This is, because only the devices up to
121 /dev/sde are in the table above, but not /dev/sdf. Although, you can
122 use the sixth SCSI disk for the root FS, but you have to specify the
123 device by number... (see below). Or, even more strange, you can use the
124 fact that there is no range checking of the partition number, and your
125 knowledge that each disk uses 16 minors, and write "root=/dev/sde17"
126 (for /dev/sdf1).
127
128 [Strange and maybe uninteresting stuff OFF]
129
130   If the device containing your root partition isn't in the table
131 above, you can also specify it by major and minor numbers. These are
132 written in hex, with no prefix and no separator between. E.g., if you
133 have a CD with contents appropriate as a root filesystem in the first
134 SCSI CD-ROM drive, you boot from it by "root=0b00". Here, hex "0b" =
135 decimal 11 is the major of SCSI CD-ROMs, and the minor 0 stands for
136 the first of these. You can find out all valid major numbers by
137 looking into include/linux/major.h.
138
139
140 2.2) ro, rw
141 -----------
142
143 Syntax: ro
144     or: rw
145
146 These two options tell the kernel whether it should mount the root
147 filesystem read-only or read-write. The default is read-only, except
148 for ramdisks, which default to read-write.
149
150
151 2.3) debug
152 ----------
153
154 Syntax: debug
155
156 This raises the kernel log level to 10 (the default is 7). This is the
157 same level as set by the "dmesg" command, just that the maximum level
158 selectable by dmesg is 8.
159
160
161 2.4) debug=
162 -----------
163
164 Syntax: debug=<device>
165
166 This option causes certain kernel messages be printed to the selected
167 debugging device. This can aid debugging the kernel, since the
168 messages can be captured and analyzed on some other machine. Which
169 devices are possible depends on the machine type. There are no checks
170 for the validity of the device name. If the device isn't implemented,
171 nothing happens.
172
173   Messages logged this way are in general stack dumps after kernel
174 memory faults or bad kernel traps, and kernel panics. To be exact: all
175 messages of level 0 (panic messages) and all messages printed while
176 the log level is 8 or more (their level doesn't matter). Before stack
177 dumps, the kernel sets the log level to 10 automatically. A level of
178 at least 8 can also be set by the "debug" command line option (see
179 2.3) and at run time with "dmesg -n 8".
180
181 Devices possible for Amiga:
182
183  - "ser": built-in serial port; parameters: 9600bps, 8N1
184  - "mem": Save the messages to a reserved area in chip mem. After
185           rebooting, they can be read under AmigaOS with the tool
186           'dmesg'.
187
188 Devices possible for Atari:
189
190  - "ser1": ST-MFP serial port ("Modem1"); parameters: 9600bps, 8N1
191  - "ser2": SCC channel B serial port ("Modem2"); parameters: 9600bps, 8N1
192  - "ser" : default serial port
193            This is "ser2" for a Falcon, and "ser1" for any other machine
194  - "midi": The MIDI port; parameters: 31250bps, 8N1
195  - "par" : parallel port
196            The printing routine for this implements a timeout for the
197            case there's no printer connected (else the kernel would
198            lock up). The timeout is not exact, but usually a few
199            seconds.
200
201
202 2.6) ramdisk=
203 -------------
204
205 Syntax: ramdisk=<size>
206
207   This option instructs the kernel to set up a ramdisk of the given
208 size in KBytes. Do not use this option if the ramdisk contents are
209 passed by bootstrap! In this case, the size is selected automatically
210 and should not be overwritten.
211
212   The only application is for root filesystems on floppy disks, that
213 should be loaded into memory. To do that, select the corresponding
214 size of the disk as ramdisk size, and set the root device to the disk
215 drive (with "root=").
216
217
218 2.7) swap=
219 2.8) buff=
220 -----------
221
222   I can't find any sign of these options in 2.2.6.
223
224
225 3) General Device Options (Amiga and Atari)
226 ===========================================
227
228 3.1) ether=
229 -----------
230
231 Syntax: ether=[<irq>[,<base_addr>[,<mem_start>[,<mem_end>]]]],<dev-name>
232
233   <dev-name> is the name of a net driver, as specified in
234 drivers/net/Space.c in the Linux source. Most prominent are eth0, ...
235 eth3, sl0, ... sl3, ppp0, ..., ppp3, dummy, and lo.
236
237   The non-ethernet drivers (sl, ppp, dummy, lo) obviously ignore the
238 settings by this options. Also, the existing ethernet drivers for
239 Linux/m68k (ariadne, a2065, hydra) don't use them because Zorro boards
240 are really Plug-'n-Play, so the "ether=" option is useless altogether
241 for Linux/m68k.
242
243
244 3.2) hd=
245 --------
246
247 Syntax: hd=<cylinders>,<heads>,<sectors>
248
249   This option sets the disk geometry of an IDE disk. The first hd=
250 option is for the first IDE disk, the second for the second one.
251 (I.e., you can give this option twice.) In most cases, you won't have
252 to use this option, since the kernel can obtain the geometry data
253 itself. It exists just for the case that this fails for one of your
254 disks.
255
256
257 3.3) max_scsi_luns=
258 -------------------
259
260 Syntax: max_scsi_luns=<n>
261
262   Sets the maximum number of LUNs (logical units) of SCSI devices to
263 be scanned. Valid values for <n> are between 1 and 8. Default is 8 if
264 "Probe all LUNs on each SCSI device" was selected during the kernel
265 configuration, else 1.
266
267
268 3.4) st=
269 --------
270
271 Syntax: st=<buffer_size>,[<write_thres>,[<max_buffers>]]
272
273   Sets several parameters of the SCSI tape driver. <buffer_size> is
274 the number of 512-byte buffers reserved for tape operations for each
275 device. <write_thres> sets the number of blocks which must be filled
276 to start an actual write operation to the tape. Maximum value is the
277 total number of buffers. <max_buffer> limits the total number of
278 buffers allocated for all tape devices.
279
280
281 3.5) dmasound=
282 --------------
283
284 Syntax: dmasound=[<buffers>,<buffer-size>[,<catch-radius>]]
285
286   This option controls some configurations of the Linux/m68k DMA sound
287 driver (Amiga and Atari): <buffers> is the number of buffers you want
288 to use (minimum 4, default 4), <buffer-size> is the size of each
289 buffer in kilobytes (minimum 4, default 32) and <catch-radius> says
290 how much percent of error will be tolerated when setting a frequency
291 (maximum 10, default 0). For example with 3% you can play 8000Hz
292 AU-Files on the Falcon with its hardware frequency of 8195Hz and thus
293 don't need to expand the sound.
294
295
296
297 4) Options for Atari Only
298 =========================
299
300 4.1) video=
301 -----------
302
303 Syntax: video=<fbname>:<sub-options...>
304
305 The <fbname> parameter specifies the name of the frame buffer,
306 eg. most atari users will want to specify `atafb' here. The
307 <sub-options> is a comma-separated list of the sub-options listed
308 below.
309
310 NB: Please notice that this option was renamed from `atavideo' to
311     `video' during the development of the 1.3.x kernels, thus you
312     might need to update your boot-scripts if upgrading to 2.x from
313     an 1.2.x kernel.
314
315 NBB: The behavior of video= was changed in 2.1.57 so the recommended
316 option is to specify the name of the frame buffer.
317
318 4.1.1) Video Mode
319 -----------------
320
321 This sub-option may be any of the predefined video modes, as listed
322 in atari/atafb.c in the Linux/m68k source tree. The kernel will
323 activate the given video mode at boot time and make it the default
324 mode, if the hardware allows. Currently defined names are:
325
326  - stlow           : 320x200x4
327  - stmid, default5 : 640x200x2
328  - sthigh, default4: 640x400x1
329  - ttlow           : 320x480x8, TT only
330  - ttmid, default1 : 640x480x4, TT only
331  - tthigh, default2: 1280x960x1, TT only
332  - vga2            : 640x480x1, Falcon only
333  - vga4            : 640x480x2, Falcon only
334  - vga16, default3 : 640x480x4, Falcon only
335  - vga256          : 640x480x8, Falcon only
336  - falh2           : 896x608x1, Falcon only
337  - falh16          : 896x608x4, Falcon only
338
339   If no video mode is given on the command line, the kernel tries the
340 modes names "default<n>" in turn, until one is possible with the
341 hardware in use.
342
343   A video mode setting doesn't make sense, if the external driver is
344 activated by a "external:" sub-option.
345
346 4.1.2) inverse
347 --------------
348
349 Invert the display. This affects both, text (consoles) and graphics
350 (X) display. Usually, the background is chosen to be black. With this
351 option, you can make the background white.
352
353 4.1.3) font
354 -----------
355
356 Syntax: font:<fontname>
357
358 Specify the font to use in text modes. Currently you can choose only
359 between `VGA8x8', `VGA8x16' and `PEARL8x8'. `VGA8x8' is default, if the
360 vertical size of the display is less than 400 pixel rows. Otherwise, the
361 `VGA8x16' font is the default.
362
363 4.1.4) hwscroll_
364 ----------------
365
366 Syntax: hwscroll_<n>
367
368 The number of additional lines of video memory to reserve for
369 speeding up the scrolling ("hardware scrolling"). Hardware scrolling
370 is possible only if the kernel can set the video base address in steps
371 fine enough. This is true for STE, MegaSTE, TT, and Falcon. It is not
372 possible with plain STs and graphics cards (The former because the
373 base address must be on a 256 byte boundary there, the latter because
374 the kernel doesn't know how to set the base address at all.)
375
376   By default, <n> is set to the number of visible text lines on the
377 display. Thus, the amount of video memory is doubled, compared to no
378 hardware scrolling. You can turn off the hardware scrolling altogether
379 by setting <n> to 0.
380
381 4.1.5) internal:
382 ----------------
383
384 Syntax: internal:<xres>;<yres>[;<xres_max>;<yres_max>;<offset>]
385
386 This option specifies the capabilities of some extended internal video
387 hardware, like e.g. OverScan. <xres> and <yres> give the (extended)
388 dimensions of the screen.
389
390   If your OverScan needs a black border, you have to write the last
391 three arguments of the "internal:". <xres_max> is the maximum line
392 length the hardware allows, <yres_max> the maximum number of lines.
393 <offset> is the offset of the visible part of the screen memory to its
394 physical start, in bytes.
395
396   Often, extended interval video hardware has to be activated somehow.
397 For this, see the "sw_*" options below.
398
399 4.1.6) external:
400 ----------------
401
402 Syntax:
403   external:<xres>;<yres>;<depth>;<org>;<scrmem>[;<scrlen>[;<vgabase>\
404            [;<colw>[;<coltype>[;<xres_virtual>]]]]]
405
406 [I had to break this line...]
407
408   This is probably the most complicated parameter... It specifies that
409 you have some external video hardware (a graphics board), and how to
410 use it under Linux/m68k. The kernel cannot know more about the hardware
411 than you tell it here! The kernel also is unable to set or change any
412 video modes, since it doesn't know about any board internal. So, you
413 have to switch to that video mode before you start Linux, and cannot
414 switch to another mode once Linux has started.
415
416   The first 3 parameters of this sub-option should be obvious: <xres>,
417 <yres> and <depth> give the dimensions of the screen and the number of
418 planes (depth). The depth is the logarithm to base 2 of the number
419 of colors possible. (Or, the other way round: The number of colors is
420 2^depth).
421
422   You have to tell the kernel furthermore how the video memory is
423 organized. This is done by a letter as <org> parameter:
424
425  'n': "normal planes", i.e. one whole plane after another
426  'i': "interleaved planes", i.e. 16 bit of the first plane, than 16 bit
427       of the next, and so on... This mode is used only with the
428           built-in Atari video modes, I think there is no card that
429           supports this mode.
430  'p': "packed pixels", i.e. <depth> consecutive bits stand for all
431           planes of one pixel; this is the most common mode for 8 planes
432           (256 colors) on graphic cards
433  't': "true color" (more or less packed pixels, but without a color
434           lookup table); usually depth is 24
435
436 For monochrome modes (i.e., <depth> is 1), the <org> letter has a
437 different meaning:
438
439  'n': normal colors, i.e. 0=white, 1=black
440  'i': inverted colors, i.e. 0=black, 1=white
441
442   The next important information about the video hardware is the base
443 address of the video memory. That is given in the <scrmem> parameter,
444 as a hexadecimal number with a "0x" prefix. You have to find out this
445 address in the documentation of your hardware.
446
447   The next parameter, <scrlen>, tells the kernel about the size of the
448 video memory. If it's missing, the size is calculated from <xres>,
449 <yres>, and <depth>. For now, it is not useful to write a value here.
450 It would be used only for hardware scrolling (which isn't possible
451 with the external driver, because the kernel cannot set the video base
452 address), or for virtual resolutions under X (which the X server
453 doesn't support yet). So, it's currently best to leave this field
454 empty, either by ending the "external:" after the video address or by
455 writing two consecutive semicolons, if you want to give a <vgabase>
456 (it is allowed to leave this parameter empty).
457
458   The <vgabase> parameter is optional. If it is not given, the kernel
459 cannot read or write any color registers of the video hardware, and
460 thus you have to set appropriate colors before you start Linux. But if
461 your card is somehow VGA compatible, you can tell the kernel the base
462 address of the VGA register set, so it can change the color lookup
463 table. You have to look up this address in your board's documentation.
464 To avoid misunderstandings: <vgabase> is the _base_ address, i.e. a 4k
465 aligned address. For read/writing the color registers, the kernel
466 uses the addresses vgabase+0x3c7...vgabase+0x3c9. The <vgabase>
467 parameter is written in hexadecimal with a "0x" prefix, just as
468 <scrmem>.
469
470   <colw> is meaningful only if <vgabase> is specified. It tells the
471 kernel how wide each of the color register is, i.e. the number of bits
472 per single color (red/green/blue). Default is 6, another quite usual
473 value is 8.
474
475   Also <coltype> is used together with <vgabase>. It tells the kernel
476 about the color register model of your gfx board. Currently, the types
477 "vga" (which is also the default) and "mv300" (SANG MV300) are
478 implemented.
479
480   Parameter <xres_virtual> is required for ProMST or ET4000 cards where
481 the physical linelength differs from the visible length. With ProMST, 
482 xres_virtual must be set to 2048. For ET4000, xres_virtual depends on the
483 initialisation of the video-card.
484 If you're missing a corresponding yres_virtual: the external part is legacy,
485 therefore we don't support hardware-dependent functions like hardware-scroll,
486 panning or blanking.
487
488 4.1.7) eclock:
489 --------------
490
491 The external pixel clock attached to the Falcon VIDEL shifter. This
492 currently works only with the ScreenWonder!
493
494 4.1.8) monitorcap:
495 -------------------
496
497 Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax>
498
499 This describes the capabilities of a multisync monitor. Don't use it
500 with a fixed-frequency monitor! For now, only the Falcon frame buffer
501 uses the settings of "monitorcap:".
502
503   <vmin> and <vmax> are the minimum and maximum, resp., vertical frequencies
504 your monitor can work with, in Hz. <hmin> and <hmax> are the same for
505 the horizontal frequency, in kHz.
506
507   The defaults are 58;62;31;32 (VGA compatible).
508
509   The defaults for TV/SC1224/SC1435 cover both PAL and NTSC standards.
510
511 4.1.9) keep
512 ------------
513
514 If this option is given, the framebuffer device doesn't do any video
515 mode calculations and settings on its own. The only Atari fb device
516 that does this currently is the Falcon.
517
518   What you reach with this: Settings for unknown video extensions
519 aren't overridden by the driver, so you can still use the mode found
520 when booting, when the driver doesn't know to set this mode itself.
521 But this also means, that you can't switch video modes anymore...
522
523   An example where you may want to use "keep" is the ScreenBlaster for
524 the Falcon.
525
526
527 4.2) atamouse=
528 --------------
529
530 Syntax: atamouse=<x-threshold>,[<y-threshold>]
531
532   With this option, you can set the mouse movement reporting threshold.
533 This is the number of pixels of mouse movement that have to accumulate
534 before the IKBD sends a new mouse packet to the kernel. Higher values
535 reduce the mouse interrupt load and thus reduce the chance of keyboard
536 overruns. Lower values give a slightly faster mouse responses and
537 slightly better mouse tracking.
538
539   You can set the threshold in x and y separately, but usually this is
540 of little practical use. If there's just one number in the option, it
541 is used for both dimensions. The default value is 2 for both
542 thresholds.
543
544
545 4.3) ataflop=
546 -------------
547
548 Syntax: ataflop=<drive type>[,<trackbuffering>[,<steprateA>[,<steprateB>]]]
549
550    The drive type may be 0, 1, or 2, for DD, HD, and ED, resp. This
551    setting affects how many buffers are reserved and which formats are
552    probed (see also below). The default is 1 (HD). Only one drive type
553    can be selected. If you have two disk drives, select the "better"
554    type.
555
556    The second parameter <trackbuffer> tells the kernel whether to use
557    track buffering (1) or not (0). The default is machine-dependent:
558    no for the Medusa and yes for all others.
559
560    With the two following parameters, you can change the default
561    steprate used for drive A and B, resp. 
562
563
564 4.4) atascsi=
565 -------------
566
567 Syntax: atascsi=<can_queue>[,<cmd_per_lun>[,<scat-gat>[,<host-id>[,<tagged>]]]]
568
569   This option sets some parameters for the Atari native SCSI driver.
570 Generally, any number of arguments can be omitted from the end. And
571 for each of the numbers, a negative value means "use default". The
572 defaults depend on whether TT-style or Falcon-style SCSI is used.
573 Below, defaults are noted as n/m, where the first value refers to
574 TT-SCSI and the latter to Falcon-SCSI. If an illegal value is given
575 for one parameter, an error message is printed and that one setting is
576 ignored (others aren't affected).
577
578   <can_queue>:
579     This is the maximum number of SCSI commands queued internally to the
580     Atari SCSI driver. A value of 1 effectively turns off the driver
581     internal multitasking (if it causes problems). Legal values are >=
582     1. <can_queue> can be as high as you like, but values greater than
583     <cmd_per_lun> times the number of SCSI targets (LUNs) you have
584     don't make sense. Default: 16/8.
585
586   <cmd_per_lun>:
587     Maximum number of SCSI commands issued to the driver for one
588     logical unit (LUN, usually one SCSI target). Legal values start
589     from 1. If tagged queuing (see below) is not used, values greater
590     than 2 don't make sense, but waste memory. Otherwise, the maximum
591     is the number of command tags available to the driver (currently
592     32). Default: 8/1. (Note: Values > 1 seem to cause problems on a
593     Falcon, cause not yet known.)
594
595       The <cmd_per_lun> value at a great part determines the amount of
596     memory SCSI reserves for itself. The formula is rather
597     complicated, but I can give you some hints:
598       no scatter-gather  : cmd_per_lun * 232 bytes
599       full scatter-gather: cmd_per_lun * approx. 17 Kbytes
600
601   <scat-gat>:
602     Size of the scatter-gather table, i.e. the number of requests
603     consecutive on the disk that can be merged into one SCSI command.
604     Legal values are between 0 and 255. Default: 255/0. Note: This
605     value is forced to 0 on a Falcon, since scatter-gather isn't
606     possible with the ST-DMA. Not using scatter-gather hurts
607     performance significantly.
608
609   <host-id>:
610     The SCSI ID to be used by the initiator (your Atari). This is
611     usually 7, the highest possible ID. Every ID on the SCSI bus must
612     be unique. Default: determined at run time: If the NV-RAM checksum
613     is valid, and bit 7 in byte 30 of the NV-RAM is set, the lower 3
614     bits of this byte are used as the host ID. (This method is defined
615     by Atari and also used by some TOS HD drivers.) If the above
616     isn't given, the default ID is 7. (both, TT and Falcon).
617
618   <tagged>:
619     0 means turn off tagged queuing support, all other values > 0 mean
620     use tagged queuing for targets that support it. Default: currently
621     off, but this may change when tagged queuing handling has been
622     proved to be reliable.
623
624     Tagged queuing means that more than one command can be issued to
625     one LUN, and the SCSI device itself orders the requests so they
626     can be performed in optimal order. Not all SCSI devices support
627     tagged queuing (:-().
628
629 4.5 switches=
630 -------------
631
632 Syntax: switches=<list of switches>
633
634   With this option you can switch some hardware lines that are often
635 used to enable/disable certain hardware extensions. Examples are
636 OverScan, overclocking, ...
637
638   The <list of switches> is a comma-separated list of the following
639 items:
640
641   ikbd: set RTS of the keyboard ACIA high
642   midi: set RTS of the MIDI ACIA high
643   snd6: set bit 6 of the PSG port A
644   snd7: set bit 6 of the PSG port A
645
646 It doesn't make sense to mention a switch more than once (no
647 difference to only once), but you can give as many switches as you
648 want to enable different features. The switch lines are set as early
649 as possible during kernel initialization (even before determining the
650 present hardware.)
651
652   All of the items can also be prefixed with "ov_", i.e. "ov_ikbd",
653 "ov_midi", ... These options are meant for switching on an OverScan
654 video extension. The difference to the bare option is that the
655 switch-on is done after video initialization, and somehow synchronized
656 to the HBLANK. A speciality is that ov_ikbd and ov_midi are switched
657 off before rebooting, so that OverScan is disabled and TOS boots
658 correctly.
659
660   If you give an option both, with and without the "ov_" prefix, the
661 earlier initialization ("ov_"-less) takes precedence. But the
662 switching-off on reset still happens in this case.
663
664 5) Options for Amiga Only:
665 ==========================
666
667 5.1) video=
668 -----------
669
670 Syntax: video=<fbname>:<sub-options...>
671
672 The <fbname> parameter specifies the name of the frame buffer, valid
673 options are `amifb', `cyber', 'virge', `retz3' and `clgen', provided
674 that the respective frame buffer devices have been compiled into the
675 kernel (or compiled as loadable modules). The behavior of the <fbname>
676 option was changed in 2.1.57 so it is now recommended to specify this
677 option.
678
679 The <sub-options> is a comma-separated list of the sub-options listed
680 below. This option is organized similar to the Atari version of the
681 "video"-option (4.1), but knows fewer sub-options.
682
683 5.1.1) video mode
684 -----------------
685
686 Again, similar to the video mode for the Atari (see 4.1.1). Predefined
687 modes depend on the used frame buffer device.
688
689 OCS, ECS and AGA machines all use the color frame buffer. The following
690 predefined video modes are available:
691
692 NTSC modes:
693  - ntsc            : 640x200, 15 kHz, 60 Hz
694  - ntsc-lace       : 640x400, 15 kHz, 60 Hz interlaced
695 PAL modes:
696  - pal             : 640x256, 15 kHz, 50 Hz
697  - pal-lace        : 640x512, 15 kHz, 50 Hz interlaced
698 ECS modes:
699  - multiscan       : 640x480, 29 kHz, 57 Hz
700  - multiscan-lace  : 640x960, 29 kHz, 57 Hz interlaced
701  - euro36          : 640x200, 15 kHz, 72 Hz
702  - euro36-lace     : 640x400, 15 kHz, 72 Hz interlaced
703  - euro72          : 640x400, 29 kHz, 68 Hz
704  - euro72-lace     : 640x800, 29 kHz, 68 Hz interlaced
705  - super72         : 800x300, 23 kHz, 70 Hz
706  - super72-lace    : 800x600, 23 kHz, 70 Hz interlaced
707  - dblntsc-ff      : 640x400, 27 kHz, 57 Hz
708  - dblntsc-lace    : 640x800, 27 kHz, 57 Hz interlaced
709  - dblpal-ff       : 640x512, 27 kHz, 47 Hz
710  - dblpal-lace     : 640x1024, 27 kHz, 47 Hz interlaced
711  - dblntsc         : 640x200, 27 kHz, 57 Hz doublescan
712  - dblpal          : 640x256, 27 kHz, 47 Hz doublescan
713 VGA modes:
714  - vga             : 640x480, 31 kHz, 60 Hz
715  - vga70           : 640x400, 31 kHz, 70 Hz
716
717 Please notice that the ECS and VGA modes require either an ECS or AGA
718 chipset, and that these modes are limited to 2-bit color for the ECS
719 chipset and 8-bit color for the AGA chipset.
720
721 5.1.2) depth
722 ------------
723
724 Syntax: depth:<nr. of bit-planes>
725
726 Specify the number of bit-planes for the selected video-mode.
727
728 5.1.3) inverse
729 --------------
730
731 Use inverted display (black on white). Functionally the same as the
732 "inverse" sub-option for the Atari.
733
734 5.1.4) font
735 -----------
736
737 Syntax: font:<fontname>
738
739 Specify the font to use in text modes. Functionally the same as the
740 "font" sub-option for the Atari, except that `PEARL8x8' is used instead
741 of `VGA8x8' if the vertical size of the display is less than 400 pixel
742 rows.
743
744 5.1.5) monitorcap:
745 -------------------
746
747 Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax>
748
749 This describes the capabilities of a multisync monitor. For now, only
750 the color frame buffer uses the settings of "monitorcap:".
751
752   <vmin> and <vmax> are the minimum and maximum, resp., vertical frequencies
753 your monitor can work with, in Hz. <hmin> and <hmax> are the same for
754 the horizontal frequency, in kHz.
755
756   The defaults are 50;90;15;38 (Generic Amiga multisync monitor).
757
758
759 5.2) fd_def_df0=
760 ----------------
761
762 Syntax: fd_def_df0=<value>
763
764 Sets the df0 value for "silent" floppy drives. The value should be in
765 hexadecimal with "0x" prefix.
766
767
768 5.3) wd33c93=
769 -------------
770
771 Syntax: wd33c93=<sub-options...>
772
773 These options affect the A590/A2091, A3000 and GVP Series II SCSI
774 controllers.
775
776 The <sub-options> is a comma-separated list of the sub-options listed
777 below.
778
779 5.3.1) nosync
780 -------------
781
782 Syntax: nosync:bitmask
783
784   bitmask is a byte where the 1st 7 bits correspond with the 7
785 possible SCSI devices. Set a bit to prevent sync negotiation on that
786 device. To maintain backwards compatibility, a command-line such as
787 "wd33c93=255" will be automatically translated to
788 "wd33c93=nosync:0xff". The default is to disable sync negotiation for
789 all devices, eg. nosync:0xff.
790
791 5.3.2) period
792 -------------
793
794 Syntax: period:ns
795
796   `ns' is the minimum # of nanoseconds in a SCSI data transfer
797 period. Default is 500; acceptable values are 250 - 1000.
798
799 5.3.3) disconnect
800 -----------------
801
802 Syntax: disconnect:x
803
804   Specify x = 0 to never allow disconnects, 2 to always allow them.
805 x = 1 does 'adaptive' disconnects, which is the default and generally
806 the best choice.
807
808 5.3.4) debug
809 ------------
810
811 Syntax: debug:x
812
813   If `DEBUGGING_ON' is defined, x is a bit mask that causes various
814 types of debug output to printed - see the DB_xxx defines in
815 wd33c93.h.
816
817 5.3.5) clock
818 ------------
819
820 Syntax: clock:x
821
822   x = clock input in MHz for WD33c93 chip. Normal values would be from
823 8 through 20. The default value depends on your hostadapter(s),
824 default for the A3000 internal controller is 14, for the A2091 it's 8
825 and for the GVP hostadapters it's either 8 or 14, depending on the
826 hostadapter and the SCSI-clock jumper present on some GVP
827 hostadapters.
828
829 5.3.6) next
830 -----------
831
832   No argument. Used to separate blocks of keywords when there's more
833 than one wd33c93-based host adapter in the system.
834
835 5.3.7) nodma
836 ------------
837
838 Syntax: nodma:x
839
840   If x is 1 (or if the option is just written as "nodma"), the WD33c93
841 controller will not use DMA (= direct memory access) to access the
842 Amiga's memory.  This is useful for some systems (like A3000's and
843 A4000's with the A3640 accelerator, revision 3.0) that have problems
844 using DMA to chip memory.  The default is 0, i.e. to use DMA if
845 possible.
846
847
848 5.4) gvp11=
849 -----------
850
851 Syntax: gvp11=<addr-mask>
852
853   The earlier versions of the GVP driver did not handle DMA
854 address-mask settings correctly which made it necessary for some
855 people to use this option, in order to get their GVP controller
856 running under Linux. These problems have hopefully been solved and the
857 use of this option is now highly unrecommended!
858
859   Incorrect use can lead to unpredictable behavior, so please only use
860 this option if you *know* what you are doing and have a reason to do
861 so. In any case if you experience problems and need to use this
862 option, please inform us about it by mailing to the Linux/68k kernel
863 mailing list.
864
865   The address mask set by this option specifies which addresses are
866 valid for DMA with the GVP Series II SCSI controller. An address is
867 valid, if no bits are set except the bits that are set in the mask,
868 too.
869
870   Some versions of the GVP can only DMA into a 24 bit address range,
871 some can address a 25 bit address range while others can use the whole
872 32 bit address range for DMA. The correct setting depends on your
873 controller and should be autodetected by the driver. An example is the
874 24 bit region which is specified by a mask of 0x00fffffe.
875
876
877 5.5) 53c7xx=
878 ------------
879
880 Syntax: 53c7xx=<sub-options...>
881
882 These options affect the A4000T, A4091, WarpEngine, Blizzard 603e+,
883 and GForce 040/060 SCSI controllers on the Amiga, as well as the
884 builtin MVME 16x SCSI controller.
885
886 The <sub-options> is a comma-separated list of the sub-options listed
887 below.
888
889 5.5.1) nosync
890 -------------
891
892 Syntax: nosync:0
893
894   Disables sync negotiation for all devices.  Any value after the
895   colon is acceptable (and has the same effect).
896
897 5.5.2) noasync
898 --------------
899
900 Syntax: noasync:0
901
902   Disables async and sync negotiation for all devices.  Any value
903   after the colon is acceptable (and has the same effect).
904
905 5.5.3) nodisconnect
906 -------------------
907
908 Syntax: nodisconnect:0
909
910   Disables SCSI disconnects.  Any value after the colon is acceptable
911   (and has the same effect).
912
913 5.5.4) validids
914 ---------------
915
916 Syntax: validids:0xNN
917
918   Specify which SCSI ids the driver should pay attention to.  This is
919   a bitmask (i.e. to only pay attention to ID#4, you'd use 0x10).
920   Default is 0x7f (devices 0-6).
921
922 5.5.5) opthi
923 5.5.6) optlo
924 ------------
925
926 Syntax: opthi:M,optlo:N
927
928   Specify options for "hostdata->options".  The acceptable definitions
929   are listed in drivers/scsi/53c7xx.h; the 32 high bits should be in
930   opthi and the 32 low bits in optlo.  They must be specified in the
931   order opthi=M,optlo=N.
932
933 5.5.7) next
934 -----------
935
936   No argument. Used to separate blocks of keywords when there's more
937   than one 53c7xx host adapter in the system.
938
939
940 /* Local Variables: */
941 /* mode: text       */
942 /* End:             */