Hi all Sometime back I submitted a short manual contribution about the kernel.conf file. I note that this hasn't found its way into the handbook; I'm attaching it to this message in the hope that someone will add it and commit it. regards gram -- Dr Graham Wheeler E-mail: [EMAIL PROTECTED] Director, Research and Development WWW: http://www.cequrux.com CEQURUX Technologies Phone: +27(21)423-6065 Firewalls/VPN Specialists Fax: +27(21)424-3656
Configuring An Already Compiled Kernel If you don't want to create a custom kernel, you can configure many hardware settings for none Plug 'n' Play devices without doing so, by putting them in the /boot/kernel.conf file. This file contains a sequence of commands compatible with those that are supported by the kernel configuration editor (which you may have seen when you first installed FreeBSD, and which is also accessible by booting with a `-c' argument). Because the commands in this file are essentially fed to the kernel configuration editor, the last command in the file should be `q' for `quit'. The commands that the kernel configuration editor understands are: di(sable) <devicename> Disable device en(able) <devicename> Enable device dr(q) <devicename> <drq> Set DMA channel for device to <drq> ei(sa) <numslots> Set number of EISA slots to probe f(lags) <devicename> <flags> Set the device-specific flags for the device iom(em) <devicename> <address> Sets the base address of the I/O memory ios(ize) <devicename> <size> Sets the size of the I/O memory ir(q) <devicename> <irqnum> Set the IRQ for the device po(rt) <devicename> <port> Set the I/O port base address for the device ex Exit (quit) q Quit The commands are shown with their full names, and the optional parts parenthesised. Thus, for example, the "enable" command can be abbreviated to "en". There are other commands, for example to list the devices or reset the CPU, but these only make sense when using the interactive editor, and not when using kernel.conf. <irqnum>, <flags>, <drq>, <address>, <size> are all numeric arguments. They can be either decimal numbers, or hexadecimal numbers (in which case they must be prefixed by "0x"). Here is a simple example, which sets the interrupt and port for device ed0 to be irq 10, port 0x320: irq ed0 10 port ed0 0x320 q