Commit | Line | Data |
---|---|---|
1da177e4 LT |
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) | |
1da177e4 LT |
83 | |
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. | |
100 | ||
101 | [Strange and maybe uninteresting stuff ON] | |
102 | ||
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). | |
118 | ||
119 | [Strange and maybe uninteresting stuff OFF] | |
120 | ||
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. | |
129 | ||
f2d34fd9 WD |
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 | |
140 | ||
141 | Authoritative information can be found in | |
142 | "Documentation/kernel-parameters.txt". | |
143 | ||
1da177e4 LT |
144 | |
145 | 2.2) ro, rw | |
146 | ----------- | |
147 | ||
148 | Syntax: ro | |
149 | or: rw | |
150 | ||
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. | |
154 | ||
155 | ||
156 | 2.3) debug | |
157 | ---------- | |
158 | ||
159 | Syntax: debug | |
160 | ||
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. | |
164 | ||
165 | ||
166 | 2.4) debug= | |
167 | ----------- | |
168 | ||
169 | Syntax: debug=<device> | |
170 | ||
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. | |
177 | ||
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". | |
185 | ||
186 | Devices possible for Amiga: | |
187 | ||
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'. | |
192 | ||
193 | Devices possible for Atari: | |
194 | ||
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. | |
205 | ||
206 | ||
fac8b209 | 207 | 2.6) ramdisk_size= |
1da177e4 LT |
208 | ------------- |
209 | ||
fac8b209 | 210 | Syntax: ramdisk_size=<size> |
1da177e4 LT |
211 | |
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. | |
216 | ||
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="). | |
221 | ||
222 | ||
223 | 2.7) swap= | |
224 | 2.8) buff= | |
225 | ----------- | |
226 | ||
227 | I can't find any sign of these options in 2.2.6. | |
228 | ||
229 | ||
230 | 3) General Device Options (Amiga and Atari) | |
231 | =========================================== | |
232 | ||
233 | 3.1) ether= | |
234 | ----------- | |
235 | ||
236 | Syntax: ether=[<irq>[,<base_addr>[,<mem_start>[,<mem_end>]]]],<dev-name> | |
237 | ||
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. | |
241 | ||
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. | |
247 | ||
248 | ||
249 | 3.2) hd= | |
250 | -------- | |
251 | ||
252 | Syntax: hd=<cylinders>,<heads>,<sectors> | |
253 | ||
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. | |
260 | ||
261 | ||
262 | 3.3) max_scsi_luns= | |
263 | ------------------- | |
264 | ||
265 | Syntax: max_scsi_luns=<n> | |
266 | ||
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. | |
271 | ||
272 | ||
273 | 3.4) st= | |
274 | -------- | |
275 | ||
276 | Syntax: st=<buffer_size>,[<write_thres>,[<max_buffers>]] | |
277 | ||
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. | |
284 | ||
285 | ||
286 | 3.5) dmasound= | |
287 | -------------- | |
288 | ||
289 | Syntax: dmasound=[<buffers>,<buffer-size>[,<catch-radius>]] | |
290 | ||
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. | |
299 | ||
300 | ||
301 | ||
302 | 4) Options for Atari Only | |
303 | ========================= | |
304 | ||
305 | 4.1) video= | |
306 | ----------- | |
307 | ||
308 | Syntax: video=<fbname>:<sub-options...> | |
309 | ||
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. | |
314 | ||
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. | |
319 | ||
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. | |
322 | ||
323 | 4.1.1) Video Mode | |
324 | ----------------- | |
325 | ||
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: | |
330 | ||
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 | |
343 | ||
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. | |
347 | ||
348 | A video mode setting doesn't make sense, if the external driver is | |
349 | activated by a "external:" sub-option. | |
350 | ||
351 | 4.1.2) inverse | |
352 | -------------- | |
353 | ||
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. | |
357 | ||
358 | 4.1.3) font | |
359 | ----------- | |
360 | ||
361 | Syntax: font:<fontname> | |
362 | ||
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. | |
367 | ||
368 | 4.1.4) hwscroll_ | |
369 | ---------------- | |
370 | ||
371 | Syntax: hwscroll_<n> | |
372 | ||
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.) | |
380 | ||
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. | |
385 | ||
386 | 4.1.5) internal: | |
387 | ---------------- | |
388 | ||
389 | Syntax: internal:<xres>;<yres>[;<xres_max>;<yres_max>;<offset>] | |
390 | ||
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. | |
394 | ||
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. | |
400 | ||
401 | Often, extended interval video hardware has to be activated somehow. | |
402 | For this, see the "sw_*" options below. | |
403 | ||
404 | 4.1.6) external: | |
405 | ---------------- | |
406 | ||
407 | Syntax: | |
408 | external:<xres>;<yres>;<depth>;<org>;<scrmem>[;<scrlen>[;<vgabase>\ | |
409 | [;<colw>[;<coltype>[;<xres_virtual>]]]]] | |
410 | ||
411 | [I had to break this line...] | |
412 | ||
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. | |
420 | ||
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 | |
670e9f34 | 423 | planes (depth). The depth is the logarithm to base 2 of the number |
1da177e4 LT |
424 | of colors possible. (Or, the other way round: The number of colors is |
425 | 2^depth). | |
426 | ||
427 | You have to tell the kernel furthermore how the video memory is | |
428 | organized. This is done by a letter as <org> parameter: | |
429 | ||
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 | |
440 | ||
441 | For monochrome modes (i.e., <depth> is 1), the <org> letter has a | |
442 | different meaning: | |
443 | ||
444 | 'n': normal colors, i.e. 0=white, 1=black | |
445 | 'i': inverted colors, i.e. 0=black, 1=white | |
446 | ||
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. | |
451 | ||
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). | |
462 | ||
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>. | |
474 | ||
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. | |
479 | ||
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. | |
484 | ||
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. | |
492 | ||
493 | 4.1.7) eclock: | |
494 | -------------- | |
495 | ||
496 | The external pixel clock attached to the Falcon VIDEL shifter. This | |
497 | currently works only with the ScreenWonder! | |
498 | ||
499 | 4.1.8) monitorcap: | |
500 | ------------------- | |
501 | ||
502 | Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax> | |
503 | ||
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:". | |
507 | ||
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. | |
511 | ||
512 | The defaults are 58;62;31;32 (VGA compatible). | |
513 | ||
514 | The defaults for TV/SC1224/SC1435 cover both PAL and NTSC standards. | |
515 | ||
516 | 4.1.9) keep | |
517 | ------------ | |
518 | ||
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. | |
522 | ||
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... | |
527 | ||
528 | An example where you may want to use "keep" is the ScreenBlaster for | |
529 | the Falcon. | |
530 | ||
531 | ||
532 | 4.2) atamouse= | |
533 | -------------- | |
534 | ||
535 | Syntax: atamouse=<x-threshold>,[<y-threshold>] | |
536 | ||
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. | |
543 | ||
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. | |
548 | ||
549 | ||
550 | 4.3) ataflop= | |
551 | ------------- | |
552 | ||
553 | Syntax: ataflop=<drive type>[,<trackbuffering>[,<steprateA>[,<steprateB>]]] | |
554 | ||
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. | |
560 | ||
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. | |
564 | ||
565 | With the two following parameters, you can change the default | |
566 | steprate used for drive A and B, resp. | |
567 | ||
568 | ||
569 | 4.4) atascsi= | |
570 | ------------- | |
571 | ||
572 | Syntax: atascsi=<can_queue>[,<cmd_per_lun>[,<scat-gat>[,<host-id>[,<tagged>]]]] | |
573 | ||
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). | |
582 | ||
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. | |
590 | ||
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.) | |
599 | ||
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 | |
605 | ||
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. | |
613 | ||
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). | |
622 | ||
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. | |
628 | ||
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 (:-(). | |
633 | ||
f9c98d02 | 634 | 4.5 switches= |
1da177e4 LT |
635 | ------------- |
636 | ||
637 | Syntax: switches=<list of switches> | |
638 | ||
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, ... | |
642 | ||
643 | The <list of switches> is a comma-separated list of the following | |
644 | items: | |
645 | ||
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 | |
650 | ||
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.) | |
656 | ||
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. | |
664 | ||
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. | |
668 | ||
1da177e4 LT |
669 | 5) Options for Amiga Only: |
670 | ========================== | |
671 | ||
672 | 5.1) video= | |
673 | ----------- | |
674 | ||
675 | Syntax: video=<fbname>:<sub-options...> | |
676 | ||
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. | |
683 | ||
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. | |
687 | ||
688 | 5.1.1) video mode | |
689 | ----------------- | |
690 | ||
691 | Again, similar to the video mode for the Atari (see 4.1.1). Predefined | |
692 | modes depend on the used frame buffer device. | |
693 | ||
694 | OCS, ECS and AGA machines all use the color frame buffer. The following | |
695 | predefined video modes are available: | |
696 | ||
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 | |
721 | ||
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. | |
725 | ||
726 | 5.1.2) depth | |
727 | ------------ | |
728 | ||
729 | Syntax: depth:<nr. of bit-planes> | |
730 | ||
731 | Specify the number of bit-planes for the selected video-mode. | |
732 | ||
733 | 5.1.3) inverse | |
734 | -------------- | |
735 | ||
736 | Use inverted display (black on white). Functionally the same as the | |
737 | "inverse" sub-option for the Atari. | |
738 | ||
739 | 5.1.4) font | |
740 | ----------- | |
741 | ||
742 | Syntax: font:<fontname> | |
743 | ||
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. | |
748 | ||
749 | 5.1.5) monitorcap: | |
750 | ------------------- | |
751 | ||
752 | Syntax: monitorcap:<vmin>;<vmax>;<hmin>;<hmax> | |
753 | ||
754 | This describes the capabilities of a multisync monitor. For now, only | |
755 | the color frame buffer uses the settings of "monitorcap:". | |
756 | ||
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. | |
760 | ||
761 | The defaults are 50;90;15;38 (Generic Amiga multisync monitor). | |
762 | ||
763 | ||
764 | 5.2) fd_def_df0= | |
765 | ---------------- | |
766 | ||
767 | Syntax: fd_def_df0=<value> | |
768 | ||
769 | Sets the df0 value for "silent" floppy drives. The value should be in | |
770 | hexadecimal with "0x" prefix. | |
771 | ||
772 | ||
773 | 5.3) wd33c93= | |
774 | ------------- | |
775 | ||
776 | Syntax: wd33c93=<sub-options...> | |
777 | ||
778 | These options affect the A590/A2091, A3000 and GVP Series II SCSI | |
779 | controllers. | |
780 | ||
781 | The <sub-options> is a comma-separated list of the sub-options listed | |
782 | below. | |
783 | ||
784 | 5.3.1) nosync | |
785 | ------------- | |
786 | ||
787 | Syntax: nosync:bitmask | |
788 | ||
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. | |
795 | ||
796 | 5.3.2) period | |
797 | ------------- | |
798 | ||
799 | Syntax: period:ns | |
800 | ||
801 | `ns' is the minimum # of nanoseconds in a SCSI data transfer | |
802 | period. Default is 500; acceptable values are 250 - 1000. | |
803 | ||
804 | 5.3.3) disconnect | |
805 | ----------------- | |
806 | ||
807 | Syntax: disconnect:x | |
808 | ||
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. | |
812 | ||
813 | 5.3.4) debug | |
814 | ------------ | |
815 | ||
816 | Syntax: debug:x | |
817 | ||
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. | |
821 | ||
822 | 5.3.5) clock | |
823 | ------------ | |
824 | ||
825 | Syntax: clock:x | |
826 | ||
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. | |
833 | ||
834 | 5.3.6) next | |
835 | ----------- | |
836 | ||
837 | No argument. Used to separate blocks of keywords when there's more | |
838 | than one wd33c93-based host adapter in the system. | |
839 | ||
840 | 5.3.7) nodma | |
841 | ------------ | |
842 | ||
843 | Syntax: nodma:x | |
844 | ||
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. | |
851 | ||
852 | ||
853 | 5.4) gvp11= | |
854 | ----------- | |
855 | ||
856 | Syntax: gvp11=<addr-mask> | |
857 | ||
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! | |
863 | ||
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. | |
869 | ||
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. | |
874 | ||
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. | |
880 | ||
881 | ||
1da177e4 LT |
882 | /* Local Variables: */ |
883 | /* mode: text */ | |
884 | /* End: */ |