其它任何不适合放在上面分类中的设备都堆在这里。
不同的驱动程序使用不同的参数, 但它们至少都共用 IRQ, I/O 埠位址值以及名称。最标准的格式看起来像:
ether=irq,iobase[,param_1[,param_2,...param_8]]],name
第一个不是数字的参数被当作名称。param_n
的值(如果配得起来)对每张不同的界面卡/驱动程序通常都代表不同的意义。
典型的 param_n
值是用来指定像共享内存位址,界面的选择,
DMA 通道等等诸如此类的东东。
此参数最常见的用法是在预设值仅侦测到一张网路卡的时候强制侦测第二张乙太网路卡。 可以用这个简单的指令达成:
ether=0,0,eth1
注意,上述范例中 IRQ 与 I/O 位址零告诉驱动程序自动去侦测。
模块使用者者请注意:
如果驱动程序作为执行期间可载入模块(不编译到核心里)
使用则上述指令不会强制侦测第二张界面卡。
大部份的 Linux
发行套件都使用一个基本的核心配合许许多多做成模块的驱动程序。
此 ether=
参数只对直接编译在核心里的驱动程序有效。
在乙太网路说明(Ethernet-HowTo)中对使用多张网路卡以及 param_n
值的使用场合,网路卡/驱动程序对这些值的实作等等有更完整、更广泛的文件。
有兴趣的读者应该参考该文件中有关自己网路卡的章节。
Ethernet-HowTo
软盘驱动程序有许多选项,
全部都列在 linux/drivers/block
里的 README.fd
中。
这是直接从该档取得的信息。
floppy=mask,allowed_drive_mask
设定允许使用之磁盘机位元遮罩为 mask
。
依预设,只允许每个软盘控制器的第零及第一个单元。
这样做是因为有些非标准的硬件(华硕的 PCI 主机板)
在存取第二或第三个单元时会当掉键盘。此选项差不多已经被 cmos 选项给取代了。
floppy=all_drives
设定允许使用之磁盘机位元遮罩为所有磁盘机。 如果你在软盘控制器上接了两个以上的磁盘机的话可以使用。
floppy=asus_pci
设定位元遮罩为只允许第零及第一个单元。(预设值)
floppy=daring
告诉软盘驱动程序你有个行为良好的软盘控制器。 这样运作上会比较有效率、比较平顺,但有些控制器可能无法使用。 这可以加速某些部份的运作。
floppy=0,daring
告诉软盘驱动程序你的软盘控制器得小心看管。
floppy=one_fdc
告诉软盘驱动程序你只有一个软盘控制器。(预设值)
floppy=two_fdc or floppy=address,two_fdc
告诉软盘驱动程序你有两个软盘控制器。 第二个软盘控制器假设位于 address 指定的地方。 如果没有给 address,假设为 0x370 。
floppy=thinkpad
告诉软盘驱动程序你有一台 Thinkpad。 Thinkpads 的磁盘变更侦测线路(disk change line)之使用与一般相反。
floppy=0,thinkpad
告诉软盘驱动程序你没有 Thinkpad。
floppy=drive,type,cmos
设定 drive
的 cmos 类型为 type
。
条件是,这个磁盘机在位元遮罩中必须是可用的。
如果你有两个以上的磁盘机(实体 cmos 只能指定两个)
或是你的基本输出入系统使用非标准的 CMOS 类型那这就有用了。
把前两个磁盘机的 cmos 设为 0(预设值)
会使得软盘驱动程序为这些磁盘机读取实体 cmos。
floppy=unexpected_interrupts
接收到非预期之中断时印出警告信息(预设)
floppy=no_unexpected_interrupts or floppy=L40SX
接收到非预期之中断时不印出警告信息。 IBM L40SX 膝上型电脑在某些显示模式下需要它。 (这看来是影像与软盘之间的某种相互关系。 此非预期之中断只会影响效率,可以安全地忽略。)
音效驱动程序也可以接受启动参数以变更编译时的值。
不过并不建议这样做,因为这样会更复杂。
相关说明放在(曾经?)Readme.Linux 中,
位于 linux/drivers/sound
里。它接受这种型式的参数:
sound=device1[,device2[,device3...[,device11]]]
其中每个 deviceN
值的格式为下列的 0xTaaaId
而每个位元组的使用如下:
T - 设备种类: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16, 7=SB16-MPU401
aaa - 十六进位的输出入位址。
I - 十六进位之中断线 (i.e 10=a, 11=b, ...)
d - 内存直接存取通道。
如你所见,这相当杂乱,建议你最好把自己设备的值编译进去。 使用启动参数 `sound=0' 将会玩全关闭音效驱动程序。
汇流排鼠标驱动程序只接受一个参数,就是硬件所使用的 IRQ 值。
微软鼠标驱动程序只接受一个参数,就是硬件所使用的 IRQ 值。
在高于 1.3.75 以上的核心上你可以告诉印表机驱动程序使用那个埠以及不使用那个埠。 如果你不想让印表机驱动程序拿到所有可用的并列埠那么后者很方便, 这样其它的驱动程序(e.g. PLIP, PPA)就可以使用它们。
这个参数的格式是多个 i/o, IRQ 的组合。
例如,
lp=0x3bc,0,0x378,7
会以不需 IRQ(polling) 的模式使用位于 0x3bc 的埠,
并且对位于 0x378 的埠使用 IRQ 7。
位于 0x278 的埠(如果有的话)将不会被侦测到,
因为自动侦测只用于没有 `lp=' 参数的情况下。
可以使用 lp=0
关闭整个印表机驱动程序。
这个整体服务数位网路驱动参数的启动参数格式为:
icn=iobase,membase,icn_id1,icn_id2
其中 iobase
是该卡的输出入埠位址,
membase
是该卡的共享内存基底位址,
而那两个 icn_id
是唯一识别的 ASCII 辨识字串。
这个启动参数格式使用一对整数参数:
pcbit=membase1,irq1[,membase2,irq2]
其中 membaseN
是第 N 张卡的共享内存基底,
而 irqN
是第 N 张卡的中断设定。
预设值是 IRQ 5 以及 membase 0xD000
。
这个 ISDN 驱动程序的启动参数格式为:
teles=iobase,irq,membase,protocol,teles_id
其中 iobase
是该卡的 i/o 埠位址,
membase
是该卡的共享内存基底位址,irq
是该卡使用的中断,
而 teles_id
是唯一识别的 ASCII 辨识字串。
DigiBoard 驱动程序接受由六个逗号隔开之的辨识字串或整数。 六个值依序为:
打开/关闭该卡 卡的种类: PC/Xi(0), PC/Xe(1), PC/Xeve(2), PC/Xem(3) 打开/关闭其它针脚排列(alternate pin arrangement) 该卡上的埠数 该卡设定的输出入埠(如果以字串指定则为十六进位) 记忆窗的基底(如果以字串指定则为十六进位)
正确的启动参数之范例(字串以及整数格式)如:
digi=E,PC/Xi,D,16,200,D0000 digi=1,0,0,16,512,851968
注意,这个驱动程序若无 digi=
启动参数其预设输出入为 0x200
,
共享内存基底为 0xD0000
。不执行自动侦测。
更进一步的细节可以在 linux/Documentation/digiboard.txt
文档里找到。
Up to four boards can be supported by supplying four
unique i/o port values for each individual board installed.
Other details can be found in the file
linux/Documentation/riscom8.txt
.
可以支持达四张卡,须提供四个唯一的输出入埠给每张卡。
其余细节可以在 linux/Documentation/riscom8.txt
文档里找到。
这些设备的启动参数格式如下。
baycom=modem,io,irq,options[,modem,io,irq,options]
使用 modem=1 表示你有 ser12 设备,modem=2 表示你有 par96 设备。
使用 options=0 表示使用硬件 DCD,options=1 则表示使用软件 DCD。
io
以及 irq
跟往常一样是输出入埠以及中断设定。
在 /linux/drivers/char/
目录下的 README.baycom
文档里有更多的细节。