[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Discovering what devices are already detected by kernel



Hi,

I did a potato install demo to a couple of dozen people, mostly newbies,
at our LUG meeting yesterday.  It was a success!  People were impressed by
how simple it was to just follow the dboostrap dialog and mostly just use
defaults.  And it went off without any glitches ... well, almost ...

It wasn't obvious that the ne2k-pci was detected by the kernel, especially
since all the kernel messages flew by while we (the presenters) were
distracted by explaining the install process and what was next.  Well, we
got to the "configure modules" step and were baffled that "ne" appeared in
the list, but not "ne2k-pci".  We hypothesized that the "compact"  drivers
disk didn't contain it, and that we were supposed to use "ne"  instead. 
Using "ne" gave us resource conflicts: "device already configured" or some
such. 

After poking about with /proc/pci and seeing that yes, the devices is
there, and the io port was listed, we went back to try to specify "io="
when installing the module.  Still no go.  Aha!  So let's look at dmesg
... doh!  There it is.  We should have known that.  After recovering our
dignity, we promised that we'd ask the boot floppy folks if this process
couldn't be made a bit easier for newbies, who don't know to look in
dmesg, nor how to interpret what is there.

I figure there needs to be a step before the modules config to list stuff
already detected by the kernel.

Something simpler for now might be to just list the hardware that the
kernel *could* detect and point out that you don't need to install modules
for any of these.  However, docs will go out of date, and the list is
rather imprecise because it doesn't say what hardware *actually was*
detected by the kernel (which is not necessarily the same thing as "should
be" :)

Unfortunately, the output from dmesg is very hard to grok in a general
way.  Perhaps a better way to approach it is to summarize it from
/var/log/dmesg, /proc/devices, /proc/interrupts, and /proc/ioports (or
just list these verbatim).  Something like: 

"The linux kernel successfully detected and configured the following
devices, so you will not need to configure modules for them:"

I'd prefer something distilled from these sources rather than
the just listing the files themselves.  If this step merely searched for:

eth
ide
hd
scsi
sd
ttyS

that would probably suffice.  After a while, it could be made smarter to
list other devices.  (You guys know better than I do what is actually in
the boot-floppy kernel ... I never bothered to check.)

So there you have it.  I'm not on this list, so please CC me in
replies.  Is there something that can be done (presumably for woody)
to make it easier for the newbie when they come to this step?

Thanks,
Ben
-- 
    nSLUG       http://www.nslug.ns.ca      synrg@sanctuary.nslug.ns.ca
    Debian      http://www.debian.org       synrg@debian.org
[ pgp key fingerprint = 7F DA 09 4B BA 2C 0D E0  1B B1 31 ED C6 A9 39 4F ]
[ gpg key fingerprint = 395C F3A4 35D3 D247 1387  2D9E 5A94 F3CA 0B27 13C8 ]


Reply to: