A device is conflicting with another or doesn't match the kernel's compiled-in IRQ or address.
While most device drivers in FreeBSD are now smart enough to match themselves to your hardware settings dynamically, there are a few that still require fairly rigid configuration parameters to be compiled in (and matched by the hardware) before they'll work. We're working hard to eliminate as many of these last hold-outs as we can, but it's not always as easy as it looks.
There are several possible
solutions. The first, and easiest, is to boot the kernel
with the -c
flag. When you see the initial boot prompt
(from floppy or hard disk), type:
/kernel -c
This will boot just past the memory sizing code and then
drop into a dynamic kernel configuration utility. Type
`?
' at the prompt to see a list of commands.
You can use this utility to reset the IRQ, memory
address, IO address or a number of other device
configuration parameters. You can also disable a device
entirely if it's causing problems for other devices you'd
much rather have work.
Another solution is, obviously, to remove the offending hardware or simply strip the system down to the bare essentials until the problem (hopefully) goes away. Once you're up, you can do the same thing mentioned above---compile a kernel more suited to your hardware, or incrementally try to figure out what it was about your original hardware configuration that didn't work.