dm thin metadata: fix __udivdi3 undefined on 32-bit
[linux/fpc-iii.git] / Documentation / m68k / kernel-options.txt
blobeaf32a1fd0b1095f6c42b707476faf5c1636068c
3                                   Command Line Options for Linux/m68k
4                                   ===================================
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)
11 0) Introduction
12 ===============
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...
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.
24 1) Overview of the Kernel's Option Processing
25 =============================================
27 The kernel knows three kinds of options on its command line:
29   1) kernel options
30   2) environment settings
31   3) arguments for init
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.
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.
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.
52 2) General Kernel Options
53 =========================
55 2.1) root=
56 ----------
58 Syntax: root=/dev/<device>
59     or: root=<hex_number>
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.
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:
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)
84   The name must be followed by a decimal number, that stands for the
85 partition number. Internally, the value of the number is just
86 added to the device number mentioned in the table above. The
87 exceptions are /dev/ram and /dev/fd, where /dev/ram refers to an
88 initial ramdisk loaded by your bootstrap program (please consult the
89 instructions for your bootstrap program to find out how to load an
90 initial ramdisk). As of kernel version 2.0.18 you must specify
91 /dev/ram as the root device if you want to boot from an initial
92 ramdisk. For the floppy devices, /dev/fd, the number stands for the
93 floppy drive number (there are no partitions on floppy disks). I.e.,
94 /dev/fd0 stands for the first drive, /dev/fd1 for the second, and so
95 on. Since the number is just added, you can also force the disk format
96 by adding a number greater than 3. If you look into your /dev
97 directory, use can see the /dev/fd0D720 has major 2 and minor 16. You
98 can specify this device for the root FS by writing "root=/dev/fd16" on
99 the kernel command line.
101 [Strange and maybe uninteresting stuff ON]
103   This unusual translation of device names has some strange
104 consequences: If, for example, you have a symbolic link from /dev/fd
105 to /dev/fd0D720 as an abbreviation for floppy driver #0 in DD format,
106 you cannot use this name for specifying the root device, because the
107 kernel cannot see this symlink before mounting the root FS and it
108 isn't in the table above. If you use it, the root device will not be 
109 set at all, without an error message. Another example: You cannot use a
110 partition on e.g. the sixth SCSI disk as the root filesystem, if you
111 want to specify it by name. This is, because only the devices up to
112 /dev/sde are in the table above, but not /dev/sdf. Although, you can
113 use the sixth SCSI disk for the root FS, but you have to specify the
114 device by number... (see below). Or, even more strange, you can use the
115 fact that there is no range checking of the partition number, and your
116 knowledge that each disk uses 16 minors, and write "root=/dev/sde17"
117 (for /dev/sdf1).
119 [Strange and maybe uninteresting stuff OFF]
121   If the device containing your root partition isn't in the table
122 above, you can also specify it by major and minor numbers. These are
123 written in hex, with no prefix and no separator between. E.g., if you
124 have a CD with contents appropriate as a root filesystem in the first
125 SCSI CD-ROM drive, you boot from it by "root=0b00". Here, hex "0b" =
126 decimal 11 is the major of SCSI CD-ROMs, and the minor 0 stands for
127 the first of these. You can find out all valid major numbers by
128 looking into include/linux/major.h.
130 In addition to major and minor numbers, if the device containing your
131 root partition uses a partition table format with unique partition
132 identifiers, then you may use them.  For instance,
133 "root=PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF".  It is also
134 possible to reference another partition on the same device using a
135 known partition UUID as the starting point.  For example,
136 if partition 5 of the device has the UUID of
137 00112233-4455-6677-8899-AABBCCDDEEFF then partition 3 may be found as
138 follows:
139   PARTUUID=00112233-4455-6677-8899-AABBCCDDEEFF/PARTNROFF=-2
141 Authoritative information can be found in
142 "Documentation/kernel-parameters.txt".
145 2.2) ro, rw
146 -----------
148 Syntax: ro
149     or: rw
151 These two options tell the kernel whether it should mount the root
152 filesystem read-only or read-write. The default is read-only, except
153 for ramdisks, which default to read-write.
156 2.3) debug
157 ----------
159 Syntax: debug
161 This raises the kernel log level to 10 (the default is 7). This is the
162 same level as set by the "dmesg" command, just that the maximum level
163 selectable by dmesg is 8.
166 2.4) debug=
167 -----------
169 Syntax: debug=<device>
171 This option causes certain kernel messages be printed to the selected
172 debugging device. This can aid debugging the kernel, since the
173 messages can be captured and analyzed on some other machine. Which
174 devices are possible depends on the machine type. There are no checks
175 for the validity of the device name. If the device isn't implemented,
176 nothing happens.
178   Messages logged this way are in general stack dumps after kernel
179 memory faults or bad kernel traps, and kernel panics. To be exact: all
180 messages of level 0 (panic messages) and all messages printed while
181 the log level is 8 or more (their level doesn't matter). Before stack
182 dumps, the kernel sets the log level to 10 automatically. A level of
183 at least 8 can also be set by the "debug" command line option (see
184 2.3) and at run time with "dmesg -n 8".
186 Devices possible for Amiga:
188  - "ser": built-in serial port; parameters: 9600bps, 8N1
189  - "mem": Save the messages to a reserved area in chip mem. After
190           rebooting, they can be read under AmigaOS with the tool
191           'dmesg'.
193 Devices possible for Atari:
195  - "ser1": ST-MFP serial port ("Modem1"); parameters: 9600bps, 8N1
196  - "ser2": SCC channel B serial port ("Modem2"); parameters: 9600bps, 8N1
197  - "ser" : default serial port
198            This is "ser2" for a Falcon, and "ser1" for any other machine
199  - "midi": The MIDI port; parameters: 31250bps, 8N1
200  - "par" : parallel port
201            The printing routine for this implements a timeout for the
202            case there's no printer connected (else the kernel would
203            lock up). The timeout is not exact, but usually a few
204            seconds.
207 2.6) ramdisk_size=
208 -------------
210 Syntax: ramdisk_size=<size>
212   This option instructs the kernel to set up a ramdisk of the given
213 size in KBytes. Do not use this option if the ramdisk contents are
214 passed by bootstrap! In this case, the size is selected automatically
215 and should not be overwritten.
217   The only application is for root filesystems on floppy disks, that
218 should be loaded into memory. To do that, select the corresponding
219 size of the disk as ramdisk size, and set the root device to the disk
220 drive (with "root=").
223 2.7) swap=
224 2.8) buff=
225 -----------
227   I can't find any sign of these options in 2.2.6.
230 3) General Device Options (Amiga and Atari)
231 ===========================================
233 3.1) ether=
234 -----------
236 Syntax: ether=[<irq>[,<base_addr>[,<mem_start>[,<mem_end>]]]],<dev-name>
238   <dev-name> is the name of a net driver, as specified in
239 drivers/net/Space.c in the Linux source. Most prominent are eth0, ...
240 eth3, sl0, ... sl3, ppp0, ..., ppp3, dummy, and lo.
242   The non-ethernet drivers (sl, ppp, dummy, lo) obviously ignore the
243 settings by this options. Also, the existing ethernet drivers for
244 Linux/m68k (ariadne, a2065, hydra) don't use them because Zorro boards
245 are really Plug-'n-Play, so the "ether=" option is useless altogether
246 for Linux/m68k.
249 3.2) hd=
250 --------
252 Syntax: hd=<cylinders>,<heads>,<sectors>
254   This option sets the disk geometry of an IDE disk. The first hd=
255 option is for the first IDE disk, the second for the second one.
256 (I.e., you can give this option twice.) In most cases, you won't have
257 to use this option, since the kernel can obtain the geometry data
258 itself. It exists just for the case that this fails for one of your
259 disks.
262 3.3) max_scsi_luns=
263 -------------------
265 Syntax: max_scsi_luns=<n>
267   Sets the maximum number of LUNs (logical units) of SCSI devices to
268 be scanned. Valid values for <n> are between 1 and 8. Default is 8 if
269 "Probe all LUNs on each SCSI device" was selected during the kernel
270 configuration, else 1.
273 3.4) st=
274 --------
276 Syntax: st=<buffer_size>,[<write_thres>,[<max_buffers>]]
278   Sets several parameters of the SCSI tape driver. <buffer_size> is
279 the number of 512-byte buffers reserved for tape operations for each
280 device. <write_thres> sets the number of blocks which must be filled
281 to start an actual write operation to the tape. Maximum value is the
282 total number of buffers. <max_buffer> limits the total number of
283 buffers allocated for all tape devices.
286 3.5) dmasound=
287 --------------
289 Syntax: dmasound=[<buffers>,<buffer-size>[,<catch-radius>]]
291   This option controls some configurations of the Linux/m68k DMA sound
292 driver (Amiga and Atari): <buffers> is the number of buffers you want
293 to use (minimum 4, default 4), <buffer-size> is the size of each
294 buffer in kilobytes (minimum 4, default 32) and <catch-radius> says
295 how much percent of error will be tolerated when setting a frequency
296 (maximum 10, default 0). For example with 3% you can play 8000Hz
297 AU-Files on the Falcon with its hardware frequency of 8195Hz and thus
298 don't need to expand the sound.
302 4) Options for Atari Only
303 =========================
305 4.1) video=
306 -----------
308 Syntax: video=<fbname>:<sub-options...>
310 The <fbname> parameter specifies the name of the frame buffer,
311 eg. most atari users will want to specify `atafb' here. The
312 <sub-options> is a comma-separated list of the sub-options listed
313 below.
315 NB: Please notice that this option was renamed from `atavideo' to
316     `video' during the development of the 1.3.x kernels, thus you
317     might need to update your boot-scripts if upgrading to 2.x from
318     an 1.2.x kernel.
320 NBB: The behavior of video= was changed in 2.1.57 so the recommended
321 option is to specify the name of the frame buffer.
323 4.1.1) Video Mode
324 -----------------
326 This sub-option may be any of the predefined video modes, as listed
327 in atari/atafb.c in the Linux/m68k source tree. The kernel will
328 activate the given video mode at boot time and make it the default
329 mode, if the hardware allows. Currently defined names are:
331  - stlow           : 320x200x4
332  - stmid, default5 : 640x200x2
333  - sthigh, default4: 640x400x1
334  - ttlow           : 320x480x8, TT only
335  - ttmid, default1 : 640x480x4, TT only
336  - tthigh, default2: 1280x960x1, TT only
337  - vga2            : 640x480x1, Falcon only
338  - vga4            : 640x480x2, Falcon only
339  - vga16, default3 : 640x480x4, Falcon only
340  - vga256          : 640x480x8, Falcon only
341  - falh2           : 896x608x1, Falcon only
342  - falh16          : 896x608x4, Falcon only
344   If no video mode is given on the command line, the kernel tries the
345 modes names "default<n>" in turn, until one is possible with the
346 hardware in use.
348   A video mode setting doesn't make sense, if the external driver is
349 activated by a "external:" sub-option.
351 4.1.2) inverse
352 --------------
354 Invert the display. This affects both, text (consoles) and graphics
355 (X) display. Usually, the background is chosen to be black. With this
356 option, you can make the background white.
358 4.1.3) font
359 -----------
361 Syntax: font:<fontname>
363 Specify the font to use in text modes. Currently you can choose only
364 between `VGA8x8', `VGA8x16' and `PEARL8x8'. `VGA8x8' is default, if the
365 vertical size of the display is less than 400 pixel rows. Otherwise, the
366 `VGA8x16' font is the default.
368 4.1.4) hwscroll_
369 ----------------
371 Syntax: hwscroll_<n>
373 The number of additional lines of video memory to reserve for
374 speeding up the scrolling ("hardware scrolling"). Hardware scrolling
375 is possible only if the kernel can set the video base address in steps
376 fine enough. This is true for STE, MegaSTE, TT, and Falcon. It is not
377 possible with plain STs and graphics cards (The former because the
378 base address must be on a 256 byte boundary there, the latter because
379 the kernel doesn't know how to set the base address at all.)
381   By default, <n> is set to the number of visible text lines on the
382 display. Thus, the amount of video memory is doubled, compared to no
383 hardware scrolling. You can turn off the hardware scrolling altogether
384 by setting <n> to 0.
386 4.1.5) internal:
387 ----------------
389 Syntax: internal:<xres>;<yres>[;<xres_max>;<yres_max>;<offset>]
391 This option specifies the capabilities of some extended internal video
392 hardware, like e.g. OverScan. <xres> and <yres> give the (extended)
393 dimensions of the screen.
395   If your OverScan needs a black border, you have to write the last
396 three arguments of the "internal:". <xres_max> is the maximum line
397 length the hardware allows, <yres_max> the maximum number of lines.
398 <offset> is the offset of the visible part of the screen memory to its
399 physical start, in bytes.
401   Often, extended interval video hardware has to be activated somehow.
402 For this, see the "sw_*" options below.
404 4.1.6) external:
405 ----------------
407 Syntax:
408   external:<xres>;<yres>;<depth>;<org>;<scrmem>[;<scrlen>[;<vgabase>\
409            [;<colw>[;<coltype>[;<xres_virtual>]]]]]
411 [I had to break this line...]
413   This is probably the most complicated parameter... It specifies that
414 you have some external video hardware (a graphics board), and how to
415 use it under Linux/m68k. The kernel cannot know more about the hardware
416 than you tell it here! The kernel also is unable to set or change any
417 video modes, since it doesn't know about any board internal. So, you
418 have to switch to that video mode before you start Linux, and cannot
419 switch to another mode once Linux has started.
421   The first 3 parameters of this sub-option should be obvious: <xres>,
422 <yres> and <depth> give the dimensions of the screen and the number of
423 planes (depth). The depth is the logarithm to base 2 of the number
424 of colors possible. (Or, the other way round: The number of colors is
425 2^depth).
427   You have to tell the kernel furthermore how the video memory is
428 organized. This is done by a letter as <org> parameter:
430  'n': "normal planes", i.e. one whole plane after another
431  'i': "interleaved planes", i.e. 16 bit of the first plane, than 16 bit
432       of the next, and so on... This mode is used only with the
433           built-in Atari video modes, I think there is no card that
434           supports this mode.
435  'p': "packed pixels", i.e. <depth> consecutive bits stand for all
436           planes of one pixel; this is the most common mode for 8 planes
437           (256 colors) on graphic cards
438  't': "true color" (more or less packed pixels, but without a color
439           lookup table); usually depth is 24
441 For monochrome modes (i.e., <depth> is 1), the <org> letter has a
442 different meaning:
444  'n': normal colors, i.e. 0=white, 1=black
445  'i': inverted colors, i.e. 0=black, 1=white
447   The next important information about the video hardware is the base
448 address of the video memory. That is given in the <scrmem> parameter,
449 as a hexadecimal number with a "0x" prefix. You have to find out this
450 address in the documentation of your hardware.
452   The next parameter, <scrlen>, tells the kernel about the size of the
453 video memory. If it's missing, the size is calculated from <xres>,
454 <yres>, and <depth>. For now, it is not useful to write a value here.
455 It would be used only for hardware scrolling (which isn't possible
456 with the external driver, because the kernel cannot set the video base
457 address), or for virtual resolutions under X (which the X server
458 doesn't support yet). So, it's currently best to leave this field
459 empty, either by ending the "external:" after the video address or by
460 writing two consecutive semicolons, if you want to give a <vgabase>
461 (it is allowed to leave this parameter empty).
463   The <vgabase> parameter is optional. If it is not given, the kernel
464 cannot read or write any color registers of the video hardware, and
465 thus you have to set appropriate colors before you start Linux. But if
466 your card is somehow VGA compatible, you can tell the kernel the base
467 address of the VGA register set, so it can change the color lookup
468 table. You have to look up this address in your board's documentation.
469 To avoid misunderstandings: <vgabase> is the _base_ address, i.e. a 4k
470 aligned address. For read/writing the color registers, the kernel
471 uses the addresses vgabase+0x3c7...vgabase+0x3c9. The <vgabase>
472 parameter is written in hexadecimal with a "0x" prefix, just as
473 <scrmem>.
475   <colw> is meaningful only if <vgabase> is specified. It tells the
476 kernel how wide each of the color register is, i.e. the number of bits
477 per single color (red/green/blue). Default is 6, another quite usual
478 value is 8.
480   Also <coltype> is used together with <vgabase>. It tells the kernel
481 about the color register model of your gfx board. Currently, the types
482 "vga" (which is also the default) and "mv300" (SANG MV300) are
483 implemented.
485   Parameter <xres_virtual> is required for ProMST or ET4000 cards where
486 the physical linelength differs from the visible length. With ProMST, 
487 xres_virtual must be set to 2048. For ET4000, xres_virtual depends on the
488 initialisation of the video-card.
489 If you're missing a corresponding yres_virtual: the external part is legacy,
490 therefore we don't support hardware-dependent functions like hardware-scroll,
491 panning or blanking.
493 4.1.7) eclock:
494 --------------
496 The external pixel clock attached to the Falcon VIDEL shifter. This
497 currently works only with the ScreenWonder!
499 4.1.8) monitorcap:
500 -------------------
502 Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax>
504 This describes the capabilities of a multisync monitor. Don't use it
505 with a fixed-frequency monitor! For now, only the Falcon frame buffer
506 uses the settings of "monitorcap:".
508   <vmin> and <vmax> are the minimum and maximum, resp., vertical frequencies
509 your monitor can work with, in Hz. <hmin> and <hmax> are the same for
510 the horizontal frequency, in kHz.
512   The defaults are 58;62;31;32 (VGA compatible).
514   The defaults for TV/SC1224/SC1435 cover both PAL and NTSC standards.
516 4.1.9) keep
517 ------------
519 If this option is given, the framebuffer device doesn't do any video
520 mode calculations and settings on its own. The only Atari fb device
521 that does this currently is the Falcon.
523   What you reach with this: Settings for unknown video extensions
524 aren't overridden by the driver, so you can still use the mode found
525 when booting, when the driver doesn't know to set this mode itself.
526 But this also means, that you can't switch video modes anymore...
528   An example where you may want to use "keep" is the ScreenBlaster for
529 the Falcon.
532 4.2) atamouse=
533 --------------
535 Syntax: atamouse=<x-threshold>,[<y-threshold>]
537   With this option, you can set the mouse movement reporting threshold.
538 This is the number of pixels of mouse movement that have to accumulate
539 before the IKBD sends a new mouse packet to the kernel. Higher values
540 reduce the mouse interrupt load and thus reduce the chance of keyboard
541 overruns. Lower values give a slightly faster mouse responses and
542 slightly better mouse tracking.
544   You can set the threshold in x and y separately, but usually this is
545 of little practical use. If there's just one number in the option, it
546 is used for both dimensions. The default value is 2 for both
547 thresholds.
550 4.3) ataflop=
551 -------------
553 Syntax: ataflop=<drive type>[,<trackbuffering>[,<steprateA>[,<steprateB>]]]
555    The drive type may be 0, 1, or 2, for DD, HD, and ED, resp. This
556    setting affects how many buffers are reserved and which formats are
557    probed (see also below). The default is 1 (HD). Only one drive type
558    can be selected. If you have two disk drives, select the "better"
559    type.
561    The second parameter <trackbuffer> tells the kernel whether to use
562    track buffering (1) or not (0). The default is machine-dependent:
563    no for the Medusa and yes for all others.
565    With the two following parameters, you can change the default
566    steprate used for drive A and B, resp. 
569 4.4) atascsi=
570 -------------
572 Syntax: atascsi=<can_queue>[,<cmd_per_lun>[,<scat-gat>[,<host-id>[,<tagged>]]]]
574   This option sets some parameters for the Atari native SCSI driver.
575 Generally, any number of arguments can be omitted from the end. And
576 for each of the numbers, a negative value means "use default". The
577 defaults depend on whether TT-style or Falcon-style SCSI is used.
578 Below, defaults are noted as n/m, where the first value refers to
579 TT-SCSI and the latter to Falcon-SCSI. If an illegal value is given
580 for one parameter, an error message is printed and that one setting is
581 ignored (others aren't affected).
583   <can_queue>:
584     This is the maximum number of SCSI commands queued internally to the
585     Atari SCSI driver. A value of 1 effectively turns off the driver
586     internal multitasking (if it causes problems). Legal values are >=
587     1. <can_queue> can be as high as you like, but values greater than
588     <cmd_per_lun> times the number of SCSI targets (LUNs) you have
589     don't make sense. Default: 16/8.
591   <cmd_per_lun>:
592     Maximum number of SCSI commands issued to the driver for one
593     logical unit (LUN, usually one SCSI target). Legal values start
594     from 1. If tagged queuing (see below) is not used, values greater
595     than 2 don't make sense, but waste memory. Otherwise, the maximum
596     is the number of command tags available to the driver (currently
597     32). Default: 8/1. (Note: Values > 1 seem to cause problems on a
598     Falcon, cause not yet known.)
600       The <cmd_per_lun> value at a great part determines the amount of
601     memory SCSI reserves for itself. The formula is rather
602     complicated, but I can give you some hints:
603       no scatter-gather  : cmd_per_lun * 232 bytes
604       full scatter-gather: cmd_per_lun * approx. 17 Kbytes
606   <scat-gat>:
607     Size of the scatter-gather table, i.e. the number of requests
608     consecutive on the disk that can be merged into one SCSI command.
609     Legal values are between 0 and 255. Default: 255/0. Note: This
610     value is forced to 0 on a Falcon, since scatter-gather isn't
611     possible with the ST-DMA. Not using scatter-gather hurts
612     performance significantly.
614   <host-id>:
615     The SCSI ID to be used by the initiator (your Atari). This is
616     usually 7, the highest possible ID. Every ID on the SCSI bus must
617     be unique. Default: determined at run time: If the NV-RAM checksum
618     is valid, and bit 7 in byte 30 of the NV-RAM is set, the lower 3
619     bits of this byte are used as the host ID. (This method is defined
620     by Atari and also used by some TOS HD drivers.) If the above
621     isn't given, the default ID is 7. (both, TT and Falcon).
623   <tagged>:
624     0 means turn off tagged queuing support, all other values > 0 mean
625     use tagged queuing for targets that support it. Default: currently
626     off, but this may change when tagged queuing handling has been
627     proved to be reliable.
629     Tagged queuing means that more than one command can be issued to
630     one LUN, and the SCSI device itself orders the requests so they
631     can be performed in optimal order. Not all SCSI devices support
632     tagged queuing (:-().
634 4.5 switches=
635 -------------
637 Syntax: switches=<list of switches>
639   With this option you can switch some hardware lines that are often
640 used to enable/disable certain hardware extensions. Examples are
641 OverScan, overclocking, ...
643   The <list of switches> is a comma-separated list of the following
644 items:
646   ikbd: set RTS of the keyboard ACIA high
647   midi: set RTS of the MIDI ACIA high
648   snd6: set bit 6 of the PSG port A
649   snd7: set bit 6 of the PSG port A
651 It doesn't make sense to mention a switch more than once (no
652 difference to only once), but you can give as many switches as you
653 want to enable different features. The switch lines are set as early
654 as possible during kernel initialization (even before determining the
655 present hardware.)
657   All of the items can also be prefixed with "ov_", i.e. "ov_ikbd",
658 "ov_midi", ... These options are meant for switching on an OverScan
659 video extension. The difference to the bare option is that the
660 switch-on is done after video initialization, and somehow synchronized
661 to the HBLANK. A speciality is that ov_ikbd and ov_midi are switched
662 off before rebooting, so that OverScan is disabled and TOS boots
663 correctly.
665   If you give an option both, with and without the "ov_" prefix, the
666 earlier initialization ("ov_"-less) takes precedence. But the
667 switching-off on reset still happens in this case.
669 5) Options for Amiga Only:
670 ==========================
672 5.1) video=
673 -----------
675 Syntax: video=<fbname>:<sub-options...>
677 The <fbname> parameter specifies the name of the frame buffer, valid
678 options are `amifb', `cyber', 'virge', `retz3' and `clgen', provided
679 that the respective frame buffer devices have been compiled into the
680 kernel (or compiled as loadable modules). The behavior of the <fbname>
681 option was changed in 2.1.57 so it is now recommended to specify this
682 option.
684 The <sub-options> is a comma-separated list of the sub-options listed
685 below. This option is organized similar to the Atari version of the
686 "video"-option (4.1), but knows fewer sub-options.
688 5.1.1) video mode
689 -----------------
691 Again, similar to the video mode for the Atari (see 4.1.1). Predefined
692 modes depend on the used frame buffer device.
694 OCS, ECS and AGA machines all use the color frame buffer. The following
695 predefined video modes are available:
697 NTSC modes:
698  - ntsc            : 640x200, 15 kHz, 60 Hz
699  - ntsc-lace       : 640x400, 15 kHz, 60 Hz interlaced
700 PAL modes:
701  - pal             : 640x256, 15 kHz, 50 Hz
702  - pal-lace        : 640x512, 15 kHz, 50 Hz interlaced
703 ECS modes:
704  - multiscan       : 640x480, 29 kHz, 57 Hz
705  - multiscan-lace  : 640x960, 29 kHz, 57 Hz interlaced
706  - euro36          : 640x200, 15 kHz, 72 Hz
707  - euro36-lace     : 640x400, 15 kHz, 72 Hz interlaced
708  - euro72          : 640x400, 29 kHz, 68 Hz
709  - euro72-lace     : 640x800, 29 kHz, 68 Hz interlaced
710  - super72         : 800x300, 23 kHz, 70 Hz
711  - super72-lace    : 800x600, 23 kHz, 70 Hz interlaced
712  - dblntsc-ff      : 640x400, 27 kHz, 57 Hz
713  - dblntsc-lace    : 640x800, 27 kHz, 57 Hz interlaced
714  - dblpal-ff       : 640x512, 27 kHz, 47 Hz
715  - dblpal-lace     : 640x1024, 27 kHz, 47 Hz interlaced
716  - dblntsc         : 640x200, 27 kHz, 57 Hz doublescan
717  - dblpal          : 640x256, 27 kHz, 47 Hz doublescan
718 VGA modes:
719  - vga             : 640x480, 31 kHz, 60 Hz
720  - vga70           : 640x400, 31 kHz, 70 Hz
722 Please notice that the ECS and VGA modes require either an ECS or AGA
723 chipset, and that these modes are limited to 2-bit color for the ECS
724 chipset and 8-bit color for the AGA chipset.
726 5.1.2) depth
727 ------------
729 Syntax: depth:<nr. of bit-planes>
731 Specify the number of bit-planes for the selected video-mode.
733 5.1.3) inverse
734 --------------
736 Use inverted display (black on white). Functionally the same as the
737 "inverse" sub-option for the Atari.
739 5.1.4) font
740 -----------
742 Syntax: font:<fontname>
744 Specify the font to use in text modes. Functionally the same as the
745 "font" sub-option for the Atari, except that `PEARL8x8' is used instead
746 of `VGA8x8' if the vertical size of the display is less than 400 pixel
747 rows.
749 5.1.5) monitorcap:
750 -------------------
752 Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax>
754 This describes the capabilities of a multisync monitor. For now, only
755 the color frame buffer uses the settings of "monitorcap:".
757   <vmin> and <vmax> are the minimum and maximum, resp., vertical frequencies
758 your monitor can work with, in Hz. <hmin> and <hmax> are the same for
759 the horizontal frequency, in kHz.
761   The defaults are 50;90;15;38 (Generic Amiga multisync monitor).
764 5.2) fd_def_df0=
765 ----------------
767 Syntax: fd_def_df0=<value>
769 Sets the df0 value for "silent" floppy drives. The value should be in
770 hexadecimal with "0x" prefix.
773 5.3) wd33c93=
774 -------------
776 Syntax: wd33c93=<sub-options...>
778 These options affect the A590/A2091, A3000 and GVP Series II SCSI
779 controllers.
781 The <sub-options> is a comma-separated list of the sub-options listed
782 below.
784 5.3.1) nosync
785 -------------
787 Syntax: nosync:bitmask
789   bitmask is a byte where the 1st 7 bits correspond with the 7
790 possible SCSI devices. Set a bit to prevent sync negotiation on that
791 device. To maintain backwards compatibility, a command-line such as
792 "wd33c93=255" will be automatically translated to
793 "wd33c93=nosync:0xff". The default is to disable sync negotiation for
794 all devices, eg. nosync:0xff.
796 5.3.2) period
797 -------------
799 Syntax: period:ns
801   `ns' is the minimum # of nanoseconds in a SCSI data transfer
802 period. Default is 500; acceptable values are 250 - 1000.
804 5.3.3) disconnect
805 -----------------
807 Syntax: disconnect:x
809   Specify x = 0 to never allow disconnects, 2 to always allow them.
810 x = 1 does 'adaptive' disconnects, which is the default and generally
811 the best choice.
813 5.3.4) debug
814 ------------
816 Syntax: debug:x
818   If `DEBUGGING_ON' is defined, x is a bit mask that causes various
819 types of debug output to printed - see the DB_xxx defines in
820 wd33c93.h.
822 5.3.5) clock
823 ------------
825 Syntax: clock:x
827   x = clock input in MHz for WD33c93 chip. Normal values would be from
828 8 through 20. The default value depends on your hostadapter(s),
829 default for the A3000 internal controller is 14, for the A2091 it's 8
830 and for the GVP hostadapters it's either 8 or 14, depending on the
831 hostadapter and the SCSI-clock jumper present on some GVP
832 hostadapters.
834 5.3.6) next
835 -----------
837   No argument. Used to separate blocks of keywords when there's more
838 than one wd33c93-based host adapter in the system.
840 5.3.7) nodma
841 ------------
843 Syntax: nodma:x
845   If x is 1 (or if the option is just written as "nodma"), the WD33c93
846 controller will not use DMA (= direct memory access) to access the
847 Amiga's memory.  This is useful for some systems (like A3000's and
848 A4000's with the A3640 accelerator, revision 3.0) that have problems
849 using DMA to chip memory.  The default is 0, i.e. to use DMA if
850 possible.
853 5.4) gvp11=
854 -----------
856 Syntax: gvp11=<addr-mask>
858   The earlier versions of the GVP driver did not handle DMA
859 address-mask settings correctly which made it necessary for some
860 people to use this option, in order to get their GVP controller
861 running under Linux. These problems have hopefully been solved and the
862 use of this option is now highly unrecommended!
864   Incorrect use can lead to unpredictable behavior, so please only use
865 this option if you *know* what you are doing and have a reason to do
866 so. In any case if you experience problems and need to use this
867 option, please inform us about it by mailing to the Linux/68k kernel
868 mailing list.
870   The address mask set by this option specifies which addresses are
871 valid for DMA with the GVP Series II SCSI controller. An address is
872 valid, if no bits are set except the bits that are set in the mask,
873 too.
875   Some versions of the GVP can only DMA into a 24 bit address range,
876 some can address a 25 bit address range while others can use the whole
877 32 bit address range for DMA. The correct setting depends on your
878 controller and should be autodetected by the driver. An example is the
879 24 bit region which is specified by a mask of 0x00fffffe.
882 /* Local Variables: */
883 /* mode: text       */
884 /* End:             */