Issue with 82574L PCI Network Card

Jan 24, 2022
7
0
1
29
Hey all,
I'm the proud owner of a B550 F Strix Gaming board with a faulty I225-V Intel chip.
I've purchased a PCI Intel 82574L Gigabit card and installed it into a PCI slot on the board as to make the faulty onboard chip redundant.

It's worth noting that I'm very newish to all this so I definitely could be missing something simple.
All the prompts I've run have been sourced from other places.

The network device isn't showing in the GUI. It actually popped up once during my tinkering and disappeared again after a reboot. It was allocated as enp6s0 during that time by the system. I tried creating a regular bridge during this time but the network device disappeared after a reboot.

Currently I only have the one faulty but operational network device currently named enp10s0 with IP 192.168.1.118 / 24
I am trying to connect the 2nd device (82574L) to the same network; as 192.168.1.119 / 24.

I'm running
Linux vershq1 5.13.19-2-pve #1 SMP PVE 5.13.19-4 (Mon, 29 Nov 2021 12:10:09 +0100) x86_64 GNU/Linux

Things I've tried:
Disabling onboard ethernet via the bios.
Flashed the latest bios version 2423 for the Asus Strix B550 F Gaming

Code:
dmesg | grep e1000e
[    1.718097] e1000e: Intel(R) PRO/1000 Network Driver
[    1.718098] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[    1.718628] e1000e: probe of 0000:06:00.0 failed with error -5

Code:
lspci -k | sed -n '/Ethernet/,/driver in use/p'
06:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
        Subsystem: Intel Corporation Gigabit CT Desktop Adapter
        Kernel modules: e1000e
08:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a809
        Subsystem: Samsung Electronics Co Ltd Device a801
        Kernel driver in use: nvme
0a:00.0 Ethernet controller: Intel Corporation Ethernet Controller I225-V (rev 02)
        Subsystem: ASUSTeK Computer Inc. Ethernet Controller I225-V
        Kernel driver in use: igc

Code:
lsmod|grep e1000e; modprobe e1000e; lsmod|grep e1000e
e1000e                274432  0
e1000e                274432  0

Code:
 lspci | grep net
06:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
0a:00.0 Ethernet controller: Intel Corporation Ethernet Controller I225-V (rev 02)

Code:
systemctl status networking.service
● networking.service - Network initialization
     Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
     Active: active (exited) since Mon 2022-01-24 20:03:57 AWST; 24min ago
       Docs: man:interfaces(5)
             man:ifup(8)
             man:ifdown(8)
    Process: 1965 ExecStart=/usr/share/ifupdown2/sbin/start-networking start (code=exited, status=0/SUCCESS)
   Main PID: 1965 (code=exited, status=0/SUCCESS)
        CPU: 322ms

Jan 24 20:03:56 vershq1 systemd[1]: Starting Network initialization...
Jan 24 20:03:56 vershq1 networking[1965]: networking: Configuring network interfaces
Jan 24 20:03:57 vershq1 systemd[1]: Finished Network initialization.


And my current network config

Code:
ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp10s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP mode DEFAULT group default qlen 1000
    link/ether 3c:7c:3f:1d:90:c3 brd ff:ff:ff:ff:ff:ff
3: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 3c:7c:3f:1d:90:c3 brd ff:ff:ff:ff:ff:ff


Sorry for all the above! I thought I'd better post what I had found.
Just looking to get this NIC working so I don't need to use the onboard.
Thanks!
 
Do you have the latest firmware installed for the NIC?
 
Do you have the latest firmware installed for the NIC?
No I don't - I wasn't aware that you could upgrade the firmware on the chip to be honest. Is it possible to easily upgrade the firmware through proxmox shell? Or will I need to do that on a separate machine most likely?
Thanks!
 
Try this driver:
https://www.intel.com/content/www/u...ethernet-network-connections-under-linux.html

Bash:
apt install pve-headers-$(uname -r)
cd /root/
wget https://downloadmirror.intel.com/15817/eng/e1000e-3.8.4.tar.gz
tar zxf e1000e-3.8.4.tar.gz
cd e1000e-3.8.4.tar.gz/src/
make install
reboot
I ran the above and got the following output:

Code:
/e1000e-3.8.4/src# make install
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-5.13.19-2-pve'
  CC [M]  /root/e1000e-3.8.4/src/netdev.o
In file included from /root/e1000e-3.8.4/src/e1000.h:14,
                 from /root/e1000e-3.8.4/src/netdev.c:30:
/root/e1000e-3.8.4/src/kcompat.h: In function ‘__kc_xdp_umem_get_data’:
/root/e1000e-3.8.4/src/kcompat.h:6696:15: error: ‘struct xdp_umem’ has no member named ‘pages’; did you mean ‘pgs’?
 6696 |  return umem->pages[addr >> PAGE_SHIFT].addr + (addr & (PAGE_SIZE - 1));
      |               ^~~~~
      |               pgs
/root/e1000e-3.8.4/src/kcompat.h: In function ‘__kc_xdp_umem_get_dma’:
/root/e1000e-3.8.4/src/kcompat.h:6704:15: error: ‘struct xdp_umem’ has no member named ‘pages’; did you mean ‘pgs’?
 6704 |  return umem->pages[addr >> PAGE_SHIFT].dma + (addr & (PAGE_SIZE - 1));
      |               ^~~~~
      |               pgs
/root/e1000e-3.8.4/src/netdev.c: In function ‘e1000_configure_rx’:
/root/e1000e-3.8.4/src/netdev.c:3714:3: error: implicit declaration of function ‘pm_qos_update_request’; did you mean ‘freq_qos_update_request’? [-Werror=implicit-function-declaration]
 3714 |   pm_qos_update_request(&adapter->pm_qos_req, lat);
      |   ^~~~~~~~~~~~~~~~~~~~~
      |   freq_qos_update_request
/root/e1000e-3.8.4/src/netdev.c: In function ‘e1000e_open’:
/root/e1000e-3.8.4/src/netdev.c:5189:2: error: implicit declaration of function ‘pm_qos_add_request’; did you mean ‘freq_qos_add_request’? [-Werror=implicit-function-declaration]
 5189 |  pm_qos_add_request(&adapter->pm_qos_req, PM_QOS_CPU_DMA_LATENCY,
      |  ^~~~~~~~~~~~~~~~~~
      |  freq_qos_add_request
/root/e1000e-3.8.4/src/netdev.c:5189:43: error: ‘PM_QOS_CPU_DMA_LATENCY’ undeclared (first use in this function)
 5189 |  pm_qos_add_request(&adapter->pm_qos_req, PM_QOS_CPU_DMA_LATENCY,
      |                                           ^~~~~~~~~~~~~~~~~~~~~~
/root/e1000e-3.8.4/src/netdev.c:5189:43: note: each undeclared identifier is reported only once for each function it appears in
/root/e1000e-3.8.4/src/netdev.c:5243:2: error: implicit declaration of function ‘pm_qos_remove_request’; did you mean ‘freq_qos_remove_request’? [-Werror=implicit-function-declaration]
 5243 |  pm_qos_remove_request(&adapter->pm_qos_req);
      |  ^~~~~~~~~~~~~~~~~~~~~
      |  freq_qos_remove_request
/root/e1000e-3.8.4/src/netdev.c: In function ‘e1000_io_slot_reset’:
/root/e1000e-3.8.4/src/netdev.c:8100:2: error: implicit declaration of function ‘pci_cleanup_aer_uncorrect_error_status’ [-Werror=implicit-function-declaration]
 8100 |  pci_cleanup_aer_uncorrect_error_status(pdev);
      |  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:281: /root/e1000e-3.8.4/src/netdev.o] Error 1
make[1]: *** [Makefile:1879: /root/e1000e-3.8.4/src] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.13.19-2-pve'
make: *** [Makefile:73: default] Error 2


I also tried this from earlier by copying the file to a USB drive:
https://askubuntu.com/questions/1344156/ubuntu-20-04-2-and-onboard-intel-i219-v

Code:
tar zxf e1000e-3.8.4.tar.gz
cd e1000e-3.8.4/src/
apt install make
apt install gcc
make install
modprobe e1000e insmod e1000e
reboot

At the make install command it spat out:
"Kernel header files not in any of the expected locations. Install the appropriate kernel development package, e.g kernel-devel"
I tried installing the pve-headers with apt install pve-headers, but it still spits out the kernel-devel error.
Any ideas on what this all means? Thanks for your help!
 
Last edited:
Try to compile this one:
https://sourceforge.net/projects/e1000/files/e1000e%20historic%20archive/3.8.7/e1000e-3.8.7.tar.gz/download
 
Try to compile this one:
https://sourceforge.net/projects/e1000/files/e1000e%20historic%20archive/3.8.7/e1000e-3.8.7.tar.gz/download
I tried that file and installed via USB.

Code:
make install
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-5.13.19-2-pve'
  CC [M]  /mnt/usb/e1000e-3.8.7/src/netdev.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ethtool.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ich8lan.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/mac.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/nvm.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/phy.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/manage.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/80003es2lan.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/82571.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/param.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ptp.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/kcompat.o
  LD [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.o
  MODPOST /mnt/usb/e1000e-3.8.7/src/Module.symvers
  CC [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.mod.o
  LD [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.ko
  BTF [M] /mnt/usb/e1000e-3.8.7/src/e1000e.ko
Skipping BTF generation for /mnt/usb/e1000e-3.8.7/src/e1000e.ko due to unavailability of vmlinux
make[1]: Leaving directory '/usr/src/linux-headers-5.13.19-2-pve'
Copying manpages...
Installing modules...
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-5.13.19-2-pve'
arch/x86/Makefile:148: CONFIG_X86_X32 enabled but no binutils support
  INSTALL /lib/modules/5.13.19-2-pve/updates/drivers/net/ethernet/intel/e1000e/e1000e.ko
  DEPMOD  /lib/modules/5.13.19-2-pve
Warning: modules_install: missing 'System.map' file. Skipping depmod.
make[1]: Leaving directory '/usr/src/linux-headers-5.13.19-2-pve'
Running depmod...

Not sure if the System.map missing means anything, but still no luck with the device after this installation. :(
 
Last edited:
I tried that file and installed via USB.

Code:
make install
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-5.13.19-2-pve'
  CC [M]  /mnt/usb/e1000e-3.8.7/src/netdev.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ethtool.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ich8lan.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/mac.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/nvm.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/phy.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/manage.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/80003es2lan.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/82571.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/param.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/ptp.o
  CC [M]  /mnt/usb/e1000e-3.8.7/src/kcompat.o
  LD [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.o
  MODPOST /mnt/usb/e1000e-3.8.7/src/Module.symvers
  CC [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.mod.o
  LD [M]  /mnt/usb/e1000e-3.8.7/src/e1000e.ko
  BTF [M] /mnt/usb/e1000e-3.8.7/src/e1000e.ko
Skipping BTF generation for /mnt/usb/e1000e-3.8.7/src/e1000e.ko due to unavailability of vmlinux
make[1]: Leaving directory '/usr/src/linux-headers-5.13.19-2-pve'
Copying manpages...
Installing modules...
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/src/linux-headers-5.13.19-2-pve'
arch/x86/Makefile:148: CONFIG_X86_X32 enabled but no binutils support
  INSTALL /lib/modules/5.13.19-2-pve/updates/drivers/net/ethernet/intel/e1000e/e1000e.ko
  DEPMOD  /lib/modules/5.13.19-2-pve
Warning: modules_install: missing 'System.map' file. Skipping depmod.
make[1]: Leaving directory '/usr/src/linux-headers-5.13.19-2-pve'
Running depmod...

Not sure if the System.map missing means anything, but still no luck with the device after this installation. :(

I managed to compile one from here:
https://github.com/koljah-de/e1000e-dkms-debian

Compiling and running the .deb file outputs

Code:
dpkg -i e1000e-dkms.deb
Selecting previously unselected package e1000e-dkms.
(Reading database ... 109786 files and directories currently installed.)
Preparing to unpack e1000e-dkms.deb ...
Unpacking e1000e-dkms (3.8.7) ...
Setting up e1000e-dkms (3.8.7) ...
Loading new e1000e-3.8.7 DKMS files...
Building for 5.13.19-2-pve
Building for architecture amd64
Building initial module for 5.13.19-2-pve
Done.

e1000e.ko:
Running module version sanity check.

Good news! Module version 3.8.7-NAPI for e1000e.ko
exactly matches what is already found in kernel 5.13.19-2-pve.
DKMS will not replace this module.
You may override by specifying --force.

depmod...

Backing up initrd.img-5.13.19-2-pve to /boot/initrd.img-5.13.19-2-pve.old-dkms
Making new initrd.img-5.13.19-2-pve
(If next boot fails, revert to initrd.img-5.13.19-2-pve.old-dkms image)
update-initramfs......

DKMS: install completed.

New dmesg | grep e1000e output:

Code:
dmesg | grep e1000e
[    1.652288] e1000e: loading out-of-tree module taints kernel.
[    1.652835] e1000e: Intel(R) PRO/1000 Network Driver - 3.8.7-NAPI
[    1.652836] e1000e: Copyright(c) 1999 - 2020 Intel Corporation.
[    1.653063] e1000e: probe of 0000:06:00.0 failed with error -5
 
Seems like the NVM of your network card is corrupted.
May you can try to install this network adapter in a computer with windows 7 or 10, install latest driver from intel website and try if it is working the lan connection...
Usually the windows intel package driver update also the firmware and you will reborn the card...
 
Last edited:
Okay I think Ive sussed out!
I kept moving the PCI Intel Gigabit CT Desktop Adapter 82574L from port to port in the system, it registered one time only per pci port switch and disappeared after a reboot in that new pci port. Moving it restarts the process.

I put them in my Windows 10 PC and downloaded these tools.

https://www.intel.com/content/www/u...t-utility-preboot-images-and-efi-drivers.html

Ran PowerShell as admin and used the upgrade function within the Intel Package above. After upgrading them to the latest version, they were installed back in the Proxmox system.
I set the PCI Ports in the bios to Gen 1 and 1x Speed for all PCI ports besides the main 16x1 port.

I have rebooted it successfully 6 times so far and it seems to be persistent.

Hopefully that helps anyone having issues with that particular Intel NIC.

Thanks for all your help ! :)
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!