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