big post today. I’ve finally updated my Ubuntu machine to the latest version, 11.04 Natty Narval…everything works out pretty well except for the wired ethernet controller… I’m using the
“Intel Corporation 82573L Gigabit Ethernet Controller”
this controller isn’t manageable via the usual Ubuntu Network Manager, nor it’s listed in the output of the ifconfig and its status is unclaimed
$ sudo lshw -C network
description: Ethernet controller
product: 82573L Gigabit Ethernet Controller
There is no problem at all with Windows 7 or with my old Ubuntu release 8.x , the card is fully working.
In the meantime, I have noticed a long recurring error (it was there for a long time before 11.04) at the computer boot time (BIOS time), looking like a bootstrap error :
“Initializing Intel Boot Agent GE v.1.2.28 PXE-E05: LAN adapter’s configuration is corrupted or has not been initialized. The Boot Agent cannot continue.”
the Linux log messages helped me a little
$ dmesg | grep e1000
[ 0.267811] pci 0000:01:00.0: reg 18 32bit mmio: [0xee100000-0xee10ffff]
[ 0.268161] pci 0000:00:01.0: bridge 32bit mmio: [0xee100000-0xee1fffff]
[ 0.346430] pci 0000:00:01.0: MEM window: 0xee100000-0xee1fffff
[ 0.346978] pci_bus 0000:01: resource 1 mem: [0xee100000-0xee1fffff]
[ 0.918428] e1000e: Intel(R) PRO/1000 Network Driver – 1.0.2-k2
[ 0.918432] e1000e: Copyright (c) 1999-2008 Intel Corporation.
[ 0.918486] e1000e 0000:02:00.0: Disabling L1 ASPM
[ 0.918510] e1000e 0000:02:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 0.918554] e1000e 0000:02:00.0: setting latency timer to 64
[ 0.918766] e1000e 0000:02:00.0: irq 29 for MSI/MSI-X
[ 0.990779] e1000e 0000:02:00.0: PCI INT A disabled
[0.990781] e1000e 0000:05:00.0: (unregistered net_device): The NVM Checksum Is Not Valid [0.990788] e1000e: probe of 0000:02:00.0 failed with error -5
I have also been able to understand that this problem is not limited to the 82573L card but is common for a large number of intel ethernet cards (that is why you can see the driver blacklisted in older Linux distributions) : 82563, 82566, 82567, 82571, 82572, 82573, 82574, 82577, 82578, 82579, or 82583 -based.
So what is going on? It looks like the network adapter’s (82573L) EEPROM is broken, unfixed, and a little messed up (error PXE-E05). This problem creates a checksum error for the NVM (The NVM Checksum Is Not Valid) that breaks the Ubuntu driver. Therefore the eth0 alias is not created, and there isn’t a manageable ethernet adapter for the Ubuntu network manager.
Windows simply doesn’t check the NVM checksum, it uses the card anyway, and everything works fine.
IMHO Intel messed up a little with the 82573 controller. There are too many similar errors out there. It seems it happens when there is a sudden power outage during the LAN card boot…total nonsense!
Anyway, we need to fix this !!! As you can easily understand, the idea behind this guide will work for many other Intel controllers from the same family: I’m unable to test them, but it’s probably worth giving it a go!
And here it’s the guide…it’s not as long as it seems :
We need to remove the old 82573L driver, install the updated 82573 network controller driver, create a MS-DOS boot pen drive, reboot, flash the card eeprom, and reboot again (there are a lot of guides to ease the process for newbies USE THEM)
open the terminal ( https://help.ubuntu.com/community/UsingTheTerminal )
$ sudo rmmod e1000e # unload the old driver module
$ sudo rmmod e1000 # unload the old driver module (errors are OK)
$ sudo rm /lib/modules/2.6.38-8-generic/kernel/drivers/net/e1000e/ -rf # remove old drivers (errors are OK)
$ sudo rm /lib/modules/2.6.38-8-generic/kernel/drivers/net/e1000/ -rf # remove old drivers (errors are OK)
download and extract to your home directory the latest intel drivers from their site ( http://bit.ly/ipbZ5W )
make sure you have installed build-essential ( http://bit.ly/yS5oW )
terminal again and cd to your home directory
$ cd # to your home directory
$ cd e1000e-1.3.17/src #to the extracted drivers directory
$ sudo make install #to install the drivers ( no errors on this side)
now we need to go to the intel site, download and extract the Intel(R) Ethernet Connections Boot Utility, Preboot images, and EFI Drivers ( http://bit.ly/jatTVE ), then prepare an MSDOS bootable pen drive and copy the extracted files we just downloaded to the pen drive.
There are several ways to create a bootable MSDOS pen drive the Windows way (PREFERRED) and the Linux1, Linux2 and Linux3 way ( choose your favourite one but always REMEMBER TO PUT THE EXTRACTED FILES TO THE PEN DRIVE.
Now go read the important NOTE at the end of the page containing the disclaimer!
Now boot using the pen drive ( SUBGUIDE ) and assuming you’re at the command prompt:
c:\> cd bootutil #go to the bootutil directory
c:\> bootutil -defcfg #force bootutil to load the default PXE configuration into the controller
# Georgi says ” bootutil -nic=1 -defcfg” it’s better. Try if the other returns an err
after that, reboot the pc, and go back to Ubuntu.
Now everything should be working fine.
DISCLAIMER: You probably need to know that the Intel(R) Ethernet Connections Boot Utility WAS NOT designed to be used as OEM Lan cards (it is for PCI cards); therefore, there is no sure way to predict its interactions with other on-board components, like USB or SOUND controllers. I haven’t experienced any problem with my computer, and I haven’t seen any negative reviews using Google (HP dv6000), but there is no way to be 100 % sure. I can tell you that the procedure is the only way to make the cards work; otherwise, you need to buy a new external card. use at your own risk.
As usual, I hope, this was helpful to somebody.