Quote:
|
How do you find out which driver its trying to load?
|
Generally no one is *trying* to load a driver. You have to direct the kernel to load a driver.
The initrd ramdisk code has some drivers in it so it can handle the hard disk and some others. The /etc/init.d scripts load some drivers for the network basics and other kernel basic functionality. The startup scripts also execute and scripts called /etc/sysconfig/modules/*.modules and that is where you should add generic driver load commands (see below). As a special case *IF* you use the system-config-network RedHat system then when you execute "ifup eth0" (executed when you start at boot) then the driver for eth0 (see alias in /etc/modprobe.conf) is modprobe'd from the network-functions script. Normally eth0 is aliased to the real driver name in /etc/modprobe.conf .
To find which driver to load, you or anaconda must figure this out. You hunt through the kernel source code or google.com/linux ! Then YOU try to load the driver and see what "dmesg" or "ifconfig -a" reports as a result. It doesn't hurt to load a driver that isn't used, just try it.
Looking closer at your problem I see that your PCI Vend/part code should be
10d9 Macronix, Inc. [MXIC]
0531 MX987x5
(see /usr/share/hwdata/pci.ids)
And in the kernel source we have:
linux.../drivers/net/tulip/tulip_core.c:
{ 0x10d9, 0x0531, PCI_ANY_ID, PCI_ANY_ID, 0, 0, MX98715 },
So I guess it's the tulip driver not the ne2k-pci.
Try "su -; modprobe tulip"
then see what ifconfig -s reports.
If that works AND you want to use the redhat ifup stuff, then change modprobe.conf to
Quote:
|
What is modprobe.conf used for?
|
Several things - there is a blacklist of drivers that shouldn't be loaded and there are compound commands that pass options to driver like
Quote:
alias snd-card-0 snd-intel8x0
options snd-card-0 index=0
options snd-intel8x0 index=0
|
And it creates alias names for drivers.
Quote:
alias scsi_hostadapter libata
alias scsi_hostadapter1 ata_piix
|
As I said th eRH scripts try to load the drivers aliased to eth0 ,eth1 ... when you 'ifup' that interface, but you must have the correct driver aliesed or .... your problem occurs.
modprobe.conf does not directly cause any driver to load.
===
If you want a driver loaded at boot time you can create a script called something.modules in /etc/sysconfig/modules to do it like:
cat /etc/sysconfig/modules/tulip.modules
Quote:
#!/bin/sh
modprobe tulip >/dev/null 2>&1
|
Make the owner/perms like this: -rwxr-xr-x 1 root root