kernel-options.txt 33 KB

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