Linux - HardwareThis forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
Is there anything I'm missing here. I have an Intel SE7505VB2 Server board with two built-in NICs. One's 10/100 and one's GB. Up until recently (when I purchased a GB switch), I was just using the 10/100 port. Now I'm trying to get the GB working.
I have the NIC enabled in the BIOS (but not sure if there's any other BIOS settings that might affect it). Once the system comes up (RHEL 3 / 2.4.21-27.0.2.ELsmp), it is not displayed in lspci. Where should I look for solutions? lspci displays the direct output of detected hardware right...it isn't affected by drivers or modules, etc, correct? If it's not in lspci, then could it be a hardware problem?
I have a virtually identical machine (same mainboard) and the GB NIC is working fine. I have it enabled in BIOS and it shows up in lspci, that's how I know what I'm looking for. I've included the lspci output from the working machine to show what's missing on the other.
I'm just wondering if I'm missing any steps that may be my problem or is there any other way of checking for the cause of the problem.
The problem may be in the kernel, i.e., the proper module/option isn't compiled into the kernel. You are using the 2.4 kernel, but I'm not sure if gigabit was supported back then, although I assume it was. I think lspci is effected by the kernel. Has the nic ever worked under another distro of linux, or can you try a new live cd (slax is good) and see if picks it up? It's just a thought, but I'd google around and check your kernel.
I've got the exact same kernel revision on the other identical server where it's working. Gigabit is supported in the 2.4 kernel. This Intel chipset uses the e1000 module. I may try a live CD sometime, but it's a production server so I'm not extremely anxious to take it offline .
I've never tried the NIC before now, so I don't know if it ever worked.
I'm thinking it may either be hardware or a BIOS setting. Anybody know of anything in an Intel Server board BIOS would might do something like that? (How's that for an obscure question )
Usually the kernel (hotplug) probes just for one card (there are some lucky exceptions)
Try by dmesg to check if the kernel can see the second card. If it does you're done, otherwise it is a little complicate.
You can also try as root
it should give you an output like
If you can see an "eth1" device in the output it means the kernel can see the second card.
If no eth1 can be seen then you should check if the correct module for the second card has been loaded (few chance)
Do a google search to find out what is the module you should use, install and/or load it.
Once the module is in the memory, start configuring your card manually by
ifconfig eth1 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255
Ip addresses can be set according to your requirements of course, they are just an example.
route add -net 192.168.1.0 dev eth1
at this point
ifconfig -a should give an output with an eth1 somewhere.
If it does, edit your network startup script including the above commands. (according to your distro requirements)
Chance are you can do this in your rc.local script.
If this doesn' work you are in a bad position.
You must know what memory address/es and IRQ can be assigned to your card by doing an extra google search. The manufacturer web site can be a good starting point. Windows if installed on the same box can be helpful for this purpose.
Once you get the necessary informations edit your /etc/module.conf (modprobe.conf) adding
alias eth1 module_name (this is your module name literally)
options module_name io=0x330 irq=8 (put proper io and irq here of course)
You can also tell LILO, passing a command line at boot, to reserve memory address and irq but at the moment I do not remember the syntax.
Hope this helps
Long shot here, but on my system ifconfig outputs only the loopback device. However, if you type ifconfig eth0 it displays my nic which is set to eth0. What does ifconfig tell you? Again, I am no linux expert but it would be the first or second thing I'd do.
I tried specifying some commandline parameters, but to no avail.
# insmod e1000 irq=52
Warning: ignoring irq=52, no such parameter in this module
/lib/modules/2.4.21-27.0.2.ELsmp/kernel/drivers/net/e1000/e1000.o: init_module: No such device
IRQ 52 is what that NIC uses on the other identical machine we have, so I tried it. If I try it without the parameter, it prints the same, without the middle line of output.
# ifconfig eth0
eth0: error fetching interface information: Device not found
No I haven't...still using the 10/100 NIC at the moment. My next step would be to try a Live CD, like Knoppix. If it detects it there, I'd copy down all the IO & IRQ parameters it's using, and try to force those back into RHEL. I just can't bring the machine down at any given time, so I haven't tried it yet. It worked for getting my WLAN card working in my laptop though.
I got it to work. I found out that for most of these PRO100/1000 adapters you have to disable the Intel Boot Agent under Linux.
Install the PROBOOT.exe file from Intel on a Win pc, create a DOS boot floppy, copy the IBAUtil.exe file from the c:\IntePRO\Boot Agent to the floppy, boot the linux pc from the floppy, run "IBAUtil.exe -all -FD" to disable the boot agent for all installed adapters.
Reboot, run modprobe e1000, run kudzu, add the following to /etc/modules.conf
"alias eth0 e1000" - incrementing eth* for each adapter one line after the other