我有一台东芝 Portege M400 平板电脑,配有英特尔 82573L 千兆以太网控制器。它在 Windows 上运行良好,但在 Ubuntu 上却无法运行!
启动期间 CMOS 显示以下内容:
PXE-E05 error, LAN Adapter configuration not initialized, Boot Agent cannot continue.
我发现这是因为NVM 校验和错误,我尝试使用英特尔启动实用程序刷新 EEPROM,但没有成功。刷新 EEPROM 总是返回以下错误:
PXE not flashed on port 1, Firmware not present.
我恢复到内核来编辑驱动程序文件并再次绕过 NVM 校验和错误以进行引诱,但没有任何结果。
以下是一些终端输出:
$ lspci -v | grep 82573L
02:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
$ ifconfig -a
just listed wlan0 only
答案1
最后我找到了解决方案。我通过编辑以太网控制器(82573L 千兆位)的设备驱动程序,在 Ubuntu 启动时跳过了 NVM 校验和。
步骤如下:
- 从英特尔网站下载最新的 e1000e 驱动程序
解压源码如下
tar zxvf e1000e-[VERSION].tar.gz cd e1000e-[VERSION]/src
打开
netdev.c
搜索以下代码并删除:/* make sure the NVM is good */ if(e1000_validate_nvm_checksum(hw) < 0) { dev_err(pci_dev_to_dev(pdev), "The NVM Checksum Is Not Valid\n"); err = -EIO; goto err_eeprom; }
现在运行以下命令:
sudo modprobe -r e1000e sudo make install sudo modprobe e1000e sudo update-initramfs -u
这将替换旧的驱动程序并在启动时初始化这些驱动程序。
笔记:纠正校验和错误的最佳方法是刷新 EEPROM,但就我的情况而言,EEPROM 已损坏,无法刷新。因此,我不得不在启动时跳过校验和错误检查。