# [solved]Intel Ethernet Controller I225-V (rev3) doesn't work

## guerro

Hi all,

this we I bought new Motherboard (MSI Z690-A PRO) with Intel Ethernet Controller I225-V (rev3) as Ethernet Card.

I installed last gentoo-sources kernel available (5.10.76-r1) and selected proper driver.

Driver is loaded, but it seems that REV 3 is not supported again.

Can someone tell me if other (~amd64) kernels support this version or there is another workaround to get run this device?

Thank you in advance  :Smile: 

----------

## NeddySeagoon

guerro,

Post the output of 

```
lspci -nnk
```

 and 

```
ifconfig -a
```

This need not be from your non-working interface kernel but it may help if it is.

----------

## guerro

lspci -nnk:

```

00:00.0 Host bridge [0600]: Intel Corporation Device [8086:4668] (rev 02)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

00:01.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x16 Controller #1 [8086:460d] (rev 02)

        Kernel driver in use: pcieport

00:02.0 VGA compatible controller [0300]: Intel Corporation AlderLake-S GT1 [8086:4680] (rev 0c)

        DeviceName: Onboard - Video

        Subsystem: Micro-Star International Co., Ltd. [MSI] AlderLake-S GT1 [1462:7d25]

00:06.0 PCI bridge [0604]: Intel Corporation 12th Gen Core Processor PCI Express x4 Controller #0 [8086:464d] (rev 02)

        Kernel driver in use: pcieport

00:08.0 System peripheral [0880]: Intel Corporation 12th Gen Core Processor Gaussian & Neural Accelerator [8086:464f] (rev 02)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

00:0a.0 Signal processing controller [1180]: Intel Corporation Platform Monitoring Technology [8086:467d] (rev 01)

        DeviceName: Onboard - Other

00:14.0 USB controller [0c03]: Intel Corporation Device [8086:7ae0] (rev 11)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

        Kernel driver in use: xhci_hcd

00:14.2 RAM memory [0500]: Intel Corporation Device [8086:7aa7] (rev 11)

        DeviceName: Onboard - Other

00:16.0 Communication controller [0780]: Intel Corporation Device [8086:7ae8] (rev 11)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

        Kernel driver in use: mei_me

00:17.0 SATA controller [0106]: Intel Corporation Device [8086:7ae2] (rev 11)

        DeviceName: Onboard - SATA

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

        Kernel driver in use: ahci

00:1c.0 PCI bridge [0604]: Intel Corporation Device [8086:7ab8] (rev 11)

        Kernel driver in use: pcieport

00:1c.2 PCI bridge [0604]: Intel Corporation Device [8086:7aba] (rev 11)

        Kernel driver in use: pcieport

00:1c.4 PCI bridge [0604]: Intel Corporation Device [8086:7abc] (rev 11)

        Kernel driver in use: pcieport

00:1f.0 ISA bridge [0601]: Intel Corporation Device [8086:7a84] (rev 11)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

00:1f.3 Audio device [0403]: Intel Corporation Device [8086:7ad0] (rev 11)

        DeviceName: Onboard - Sound

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:9d25]

        Kernel driver in use: snd_hda_intel

00:1f.4 SMBus [0c05]: Intel Corporation Device [8086:7aa3] (rev 11)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

        Kernel driver in use: i801_smbus

00:1f.5 Serial bus controller [0c80]: Intel Corporation Device [8086:7aa4] (rev 11)

        DeviceName: Onboard - Other

        Subsystem: Micro-Star International Co., Ltd. [MSI] Device [1462:7d25]

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1)

        Subsystem: Gigabyte Technology Co., Ltd GP104 [GeForce GTX 1080] [1458:3702]

        Kernel driver in use: nvidia

        Kernel modules: nvidia_drm, nvidia

01:00.1 Audio device [0403]: NVIDIA Corporation GP104 High Definition Audio Controller [10de:10f0] (rev a1)

        Subsystem: Gigabyte Technology Co., Ltd GP104 High Definition Audio Controller [1458:3702]

        Kernel driver in use: snd_hda_intel

02:00.0 Non-Volatile memory controller [0108]: Phison Electronics Corporation E12 NVMe Controller [1987:5012] (rev 01)

        Subsystem: Phison Electronics Corporation E12 NVMe Controller [1987:5012]

        Kernel driver in use: nvme

04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller I225-V [8086:15f3] (rev 03)

        Subsystem: Micro-Star International Co., Ltd. [MSI] Ethernet Controller I225-V [1462:7d25]

05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 06)

        Subsystem: TP-LINK Technologies Co., Ltd. TG-3468 Gigabit PCI Express Network Adapter [7470:3468]

        Kernel driver in use: r8169

```

ifconfig -a:

```

enp5s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.0.51  netmask 255.255.254.0  broadcast 192.168.1.255

        inet6 2001:b07:5d38:755f:2c60:4d6a:fcfb:9b89  prefixlen 64  scopeid 0x0<global>

        inet6 fe80::5f40:af68:eaec:4c61  prefixlen 64  scopeid 0x20<link>

        ether 64:66:b3:04:67:dd  txqueuelen 1000  (Ethernet)

        RX packets 18543  bytes 23865774 (22.7 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 11561  bytes 1226008 (1.1 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536

        inet 127.0.0.1  netmask 255.0.0.0

        inet6 ::1  prefixlen 128  scopeid 0x10<host>

        loop  txqueuelen 1000  (Local Loopback)

        RX packets 322  bytes 39749 (38.8 KiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 322  bytes 39749 (38.8 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

sit0: flags=128<NOARP>  mtu 1480

        sit  txqueuelen 1000  (IPv6-in-IPv4)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

tunl0: flags=128<NOARP>  mtu 1480

        tunnel   txqueuelen 1000  (IPIP Tunnel)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vmnet1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.172.1  netmask 255.255.255.0  broadcast 192.168.172.255

        inet6 fe80::250:56ff:fec0:1  prefixlen 64  scopeid 0x20<link>

        ether 00:50:56:c0:00:01  txqueuelen 1000  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 12  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

vmnet8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 172.16.252.1  netmask 255.255.255.0  broadcast 172.16.252.255

        inet6 fe80::250:56ff:fec0:8  prefixlen 64  scopeid 0x20<link>

        ether 00:50:56:c0:00:08  txqueuelen 1000  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 12  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

```

PS.

the device enp5s0 is the temporary ethernet card installed as alternative; vmnet1 and vmnet8 are created by vmware-modules for my virtual machines;

----------

## NeddySeagoon

guerro,

It needs

```
CONFIG_IGC: Intel(R) Ethernet Controller I225-LM/I225-V support
```

according to catee.net

Notice that there is no driver loaded.

```
04:00.0 Ethernet controller [0200]: Intel Corporation Ethernet Controller I225-V [8086:15f3] (rev 03)

        Subsystem: Micro-Star International Co., Ltd. [MSI] Ethernet Controller I225-V [1462:7d25]

05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 06)

        Subsystem: TP-LINK Technologies Co., Ltd. TG-3468 Gigabit PCI Express Network Adapter [7470:3468]

        Kernel driver in use: r8169 
```

If you are sure that CONFIG_IGC is =m or =y in your kernel, are you actually running the kernel that belongs to that configuration?

The date and time in 

```
uname -a
```

is the build date and time of the running kernel.

Is it what you expect?

----------

## guerro

Driver is selected.

I rebuild now the kernel for sure, but nothing.

uname -a return this:

```
Linux cyber-pc 5.10.76-gentoo-r1 #9 SMP PREEMPT Mon Dec 20 18:56:00 CET 2021 x86_64 12th Gen Intel(R) Core(TM) i7-12700K GenuineIntel GNU/Linux
```

in dmesg this is the error  ( dmesg | grep igc ):

```
[    0.953674] igc 0000:04:00.0: enabling device (0000 -> 0002)

[    0.982830] igc: probe of 0000:04:00.0 failed with error -2
```

----------

## Jaglover

I think you are abusing grep. There may be more interesting lines around these two.

----------

## guerro

```
[    0.953586] ata1: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923100 irq 128

[    0.953587] ata2: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923180 irq 128

[    0.953588] ata3: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923200 irq 128

[    0.953590] ata4: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923280 irq 128

[    0.953591] ata5: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923300 irq 128

[    0.953592] ata6: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923380 irq 128

[    0.953594] ata7: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923400 irq 128

[    0.953595] ata8: SATA max UDMA/133 abar m2048@0x44923000 port 0x44923480 irq 128

[    0.953661] Intel(R) 2.5G Ethernet Linux Driver

[    0.953662] Copyright(c) 2018 Intel Corporation.

[    0.953674] igc 0000:04:00.0: enabling device (0000 -> 0002)

[    0.982830] igc: probe of 0000:04:00.0 failed with error -2

[    0.982846] r8169 0000:05:00.0: can't disable ASPM; OS doesn't have ASPM control

[    0.982866] r8169 0000:05:00.0: enabling device (0000 -> 0003)

[    0.983834] modprobe (216) used greatest stack depth: 14720 bytes left

[    0.984226] libphy: r8169: probed
```

----------

## NeddySeagoon

guerro,

Don't be shy. Put the entire dmesg onto a pastebin site and post the link.

wgetpaste can help.

----------

## guerro

 *NeddySeagoon wrote:*   

> guerro,
> 
> Don't be shy. Put the entire dmesg onto a pastebin site and post the link.
> 
> wgetpaste can help.

 

Sent it to you by mail

----------

## pietinger

Maybe "igc" needs a firmware. But it doesnt say which one it needs.

Have you done "emerge linux-firmware" ? If no, do it.

Have you enabled Intel-Module "igc" static into your kernel ? If yes, set is as module <M> (then recompile/install and reboot)

Why I want to have it as Module ? Because then, "igc" is able to load it from /lib/firmware/intel/... during boot

If you have "igc" static into your kernel you must define needed firmware also in your kernel (because then, the firmware must be as blob in the kernel and cant be loaded from /lib/firmware...)

Please check "dmesg" again after rebooting.

----------

## guerro

done, module loaded (listed by lsmod), but nothing has chenged and dmesg is the same.....

----------

## NeddySeagoon

guerro,

```
emerge wgetpaste
```

 then

```
wgetpaste -c 'dmesg'

Your paste can be seen here: http://dpaste.com/3M7A2AXYE
```

We just need the link.  

From your email. 

Your kernel is 

```
5.10.76-gentoo-r1
```

Root is mounted at 

[    1.979945] EXT4-fs (nvme0n1p4): mounted filesystem with ordered data mode. Opts: discard

```
[    0.953661] Intel(R) 2.5G Ethernet Linux Driver

[    0.953662] Copyright(c) 2018 Intel Corporation.

[    0.953674] igc 0000:04:00.0: enabling device (0000 -> 0002)

[    0.982830] igc: probe of 0000:04:00.0 failed with error -2
```

This happens before root is mounted.

error -2 means that it can't find something. 

I don't think in needs firmware but here are some things to try.

Install linux firmware and change CONFIG_ IGC to be a module. 

Then it can load firmware if it needs to.

Missing firmware is usually a bit more obvious.

Try a later kernel. The ICG got some updates in 5.15, maybe you need some of those?

Unmask the testing kernel and build that.

----------

## pietinger

 *guerro wrote:*   

> done, module loaded (listed by lsmod), but nothing has chenged and dmesg is the same.....

 

In this case - as Neddy said also - try a newer kernel; either 5.10.87 or 5.15.10

and let it (for the moment) as <M> in your kernel config

(this Intel device is ... a children of problems ...)

P.S.: Do you have the newest linux-firmware ? (there was an update before one or two days)

----------

## guerro

 *pietinger wrote:*   

>  *guerro wrote:*   done, module loaded (listed by lsmod), but nothing has chenged and dmesg is the same..... 
> 
> In this case - as Neddy said also - try a newer kernel; either 5.10.87 or 5.15.10
> 
> and let it (for the moment) as <M> in your kernel config
> ...

 

Yes, I got it....

In the next days I'll try the new kernels...   ....and hope...

About the firmware I read that REV3 has the last intel firmeware which solves some bugs of REV2 and REV1, so I think that there is no linux firmware for this revision.

----------

## pietinger

"failed with error -2"

means two things: 1. It cant load a firmware (but I didnt found something when I googled + Neddy also thinks it doesnt need some), OR 2. It is a technical defect. If a newer kernel doesnt help, I would go with option 2 ...  :Sad: 

----------

## guerro

With kernel 5.15.10 works  :Smile: 

----------

## pietinger

 *guerro wrote:*   

> With kernel 5.15.10 works 

 

Great !  :Smile:  What is in your dmesg now ? (I am only interested in two or three lines ...)

----------

## guerro

from dmesg | grep igc

```

[    0.741811] igc 0000:04:00.0: enabling device (0000 -> 0002)

[    0.741850] igc 0000:04:00.0: PCIe PTM not supported by PCIe bus/controller

[    0.791870] igc 0000:04:00.0 (unnamed net_device) (uninitialized): PHC added

[    0.851145] igc 0000:04:00.0: 4.000 Gb/s available PCIe bandwidth (5.0 GT/s PCIe x1 link)

[    0.851148] igc 0000:04:00.0 eth0: MAC: d8:bb:c1:90:ff:89

[    3.658199] igc 0000:04:00.0 enp4s0: renamed from eth0

[    9.947080] igc 0000:04:00.0 enp4s0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX

[   13.554170] igc 0000:04:00.0 enp4s0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX

[  126.791177] igc 0000:04:00.0 enp4s0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX

[  131.503176] igc 0000:04:00.0 enp4s0: NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX

```

----------

## pietinger

Thanks a lot, guerro !  (I was only nosey  :Wink:  )

----------

