XCP-ng
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    What to do about Realtek RTL8125 RTL8126 RTL8127 drivers

    Scheduled Pinned Locked Moved XCP-ng
    12 Posts 5 Posters 1.4k Views 5 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S Offline
      snowstruk @Andrew
      last edited by olivierlambert

      @Andrew I bought a RTL8126 5G card (because of the price) for my home lab that doesn't appear to be working with 8.3 like you said. It is trying to use the r8125 driver.

      [08:53 tw-xcp-ng-02 ~]# ethtool -i eth2
      driver: r8125
      version: 9.012.04-NAPI-PTP-RSS
      firmware-version: 
      expansion-rom-version: 
      bus-info: 0000:02:00.0
      supports-statistics: yes
      supports-test: no
      supports-eeprom-access: no
      supports-register-dump: yes
      supports-priv-flags: no
      

      I removed the r8125 driver and manually installed the r8126 driver which I downloaded from here. I can see the interface using the driver, and it shows the 5G capabilities of the driver, however I cannot get this to negotiate the speed (see below). I have tried this with a 2.5G switch and a 10G switch. The 10G switch can negotiate down to 5G so that shouldn't be an issue. On both switches it shows its connection as just fast ethernet. If I manually set the port on the switch to 5G I will not even get a link light.

      Would you happen to have any suggestions or ideas to get the card working?

      [09:49 tw-xcp-ng-02 ~]# ethtool -i eth2
      driver: r8126
      version: 10.015.00-NAPI
      firmware-version: 
      expansion-rom-version: 
      bus-info: 0000:02:00.0
      supports-statistics: yes
      supports-test: no
      supports-eeprom-access: no
      supports-register-dump: yes
      supports-priv-flags: no
      
      [09:46 tw-xcp-ng-02 ~]# ethtool eth2
      Settings for eth2:
      	Supported ports: [ TP ]
      	Supported link modes:   10baseT/Half 10baseT/Full 
      	                        100baseT/Half 100baseT/Full 
      	                        1000baseT/Full 
      	                        2500baseX/Full 
      	                        2500baseT/Full 
      	                        5000baseT/Full 
      	Supported pause frame use: Symmetric Receive-only
      	Supports auto-negotiation: Yes
      	Supported FEC modes: Not reported
      	Advertised link modes:  10baseT/Half 10baseT/Full 
      	                        100baseT/Half 100baseT/Full 
      	                        1000baseT/Half 1000baseT/Full 
      	                        2500baseX/Full 
      	                        2500baseT/Full 
      	                        5000baseT/Full 
      	Advertised pause frame use: No
      	Advertised auto-negotiation: Yes
      	Advertised FEC modes: Not reported
      	Speed: Unknown!
      	Duplex: Unknown! (255)
      	Port: Twisted Pair
      	PHYAD: 0
      	Transceiver: internal
      	Auto-negotiation: on
      	MDI-X: on
      	Supports Wake-on: pumbg
      	Wake-on: d
      	Current message level: 0x00000033 (51)
      			       drv probe ifdown ifup
      	Link detected: no
      
      [09:52 tw-xcp-ng-02 ~]# lspci | grep Ethernet
      00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (17) I219-LM (rev 11)
      02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
      03:00.0 Ethernet controller: Intel Corporation Ethernet Controller I225-V (rev 03)
      A 1 Reply Last reply Reply Quote 0
      • A Offline
        Andrew Top contributor @snowstruk
        last edited by

        @snowstruk The stock XCP 8.3 r8125 driver works for my 8125 and 8126 devices. I have not tried it a 5G, so it's possible the 8126 is not working at 5G (I don't see it advertised) with the current driver.

        I have run the current dedicated realtek 8125 driver and it works but I have not tried the 8126 driver. I don't know how many people are using the 8126 chipset (I guess not many).

        If your device is not working at >1G then it sees to be a hardware incompatibility issue. You could try loading the new 8126 firmware to see if that helps.

        Here's the output about my test 8126 card (attached to a 2.5G switch):

        # lspci -v -s 04:00.0
        04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8126 5GbE Controller (rev 01)
                Subsystem: Realtek Semiconductor Co., Ltd. Device 0123
                Flags: bus master, fast devsel, latency 0, IRQ 18
                I/O ports at 3000 [size=256]
                Memory at e0d00000 (64-bit, non-prefetchable) [size=64K]
                Memory at e0d10000 (64-bit, non-prefetchable) [size=16K]
                Expansion ROM at e0d20000 [disabled] [size=64K]
                Capabilities: [40] Power Management version 3
                Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
                Capabilities: [70] Express Endpoint, MSI 01
                Capabilities: [b0] MSI-X: Enable+ Count=32 Masked-
                Capabilities: [d0] Vital Product Data
                Capabilities: [100] Advanced Error Reporting
                Capabilities: [148] Virtual Channel
                Capabilities: [170] Device Serial Number 01-00-00-00-b4-b3-c9-88
                Capabilities: [180] #19
                Capabilities: [190] Transaction Processing Hints
                Capabilities: [21c] Latency Tolerance Reporting
                Capabilities: [224] L1 PM Substates
                Capabilities: [234] Vendor Specific Information: ID=0002 Rev=4 Len=100 <?>
                Kernel driver in use: r8125
                Kernel modules: r8125
        
        # ethtool -i eth1
        driver: r8125
        version: 9.012.04-NAPI-PTP-RSS
        firmware-version: rtl8126a-2_0.0.2 02/01/24
        expansion-rom-version:
        bus-info: 0000:04:00.0
        supports-statistics: yes
        supports-test: no
        supports-eeprom-access: no
        supports-register-dump: yes
        supports-priv-flags: no
        
        # ethtool eth1
        Settings for eth1:
                Supported ports: [ TP ]
                Supported link modes:   10baseT/Half 10baseT/Full
                                        100baseT/Half 100baseT/Full
                                        1000baseT/Full
                                        2500baseX/Full
                Supported pause frame use: Symmetric Receive-only
                Supports auto-negotiation: Yes
                Supported FEC modes: Not reported
                Advertised link modes:  10baseT/Half 10baseT/Full
                                        100baseT/Half 100baseT/Full
                                        1000baseT/Full
                                        2500baseX/Full
                Advertised pause frame use: Symmetric Receive-only
                Advertised auto-negotiation: Yes
                Advertised FEC modes: Not reported
                Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                                     100baseT/Half 100baseT/Full
                                                     1000baseT/Full
                                                     2500baseX/Full
                Link partner advertised pause frame use: Symmetric Receive-only
                Link partner advertised auto-negotiation: Yes
                Link partner advertised FEC modes: Not reported
                Speed: 2500Mb/s
                Duplex: Full
                Port: Twisted Pair
                PHYAD: 0
                Transceiver: internal
                Auto-negotiation: on
                MDI-X: Unknown
                Supports Wake-on: pumbg
                Wake-on: g
                Current message level: 0x00000033 (51)
                                       drv probe ifdown ifup
                Link detected: yes
        
        1 Reply Last reply Reply Quote 0
        • stormiS Offline
          stormi Vates 🪐 XCP-ng Team
          last edited by stormi

          I've had this thread in my TODO list for long.

          I'm not sure what the different options we have mean for users.

          As r8125-module is installed by default, we'll want to avoid breaking it for existing users. Would using the new code risk causing regressions? Maybe that's what you meant but I'm not sure. Does our current r8125 driver support both 8125 and 8126, and not 8127? Or just 8125?

          If we can't update the driver without causing regressions, then can we offer an alternate driver based on the new code for each chip (8125, 8126, 8127), and what amount of work might this represent?

          The target would be XCP-ng 8.3. In XCP-ng 9.0 we'll have a newer kernel and newer drivers anyway.

          CCing @Team-Hypervisor-Kernel for their opinion.

          A 1 Reply Last reply Reply Quote 0
          • A Offline
            Andrew Top contributor @stormi
            last edited by

            @stormi Unless new Dom0 is Kernel 6.15 or newer (with updates), this will be an ongoing problem to support the newest hardware as they seem to keep updating the chips (you can't stop progress).

            The current r8125 driver in 8.2/8.3 supports the 8125 and some 8126 chips, but not 8127. Other than supporting the new hardware versions of the chips, I have not seen any real complaints posted about the current r8125 driver (may be there are some Vates tickets?)

            While the risk on the new driver is low, it is different (not just an update). I agree that it would be best to have r8125-module-alt for the new code and then r8126-module and r8127-module.

            Note, that the new r8126-module driver should not be installed without the r8125-module-alt as the existing r8125-module would conflict with the new r8126-module driver.

            The work is already done (compiled and running)... I'm just waiting for Realtek to fix some issues with the new code before it's worth fully testing the drivers (issues already acknowledged by Realtek).

            A 1 Reply Last reply Reply Quote 0
            • A Offline
              antalig @Andrew
              last edited by antalig

              @Andrew

              I am experiencing an issue with the RTL8125 Rev5 2.5G 4 port. My xcp-ng (8.3) host (Lenovo M720q) shows the NICs under 'Display NICs' and shows connected when I plug in an RJ45 cat6, but my router will only give out an IPV6 address, not IPV4 when looking at the DHCP scopes. (IPV4 is enabled on the router and works with everything else, including the onboard Intel Gigabit e1000e).

              'ethtool -i eth4' shows 'driver:r8125' and 'version:9.016.01-NAPI-PTP-RSS' with 'firmware-version: rtl8125b-2_0.0.2 07/13/20'. (I installed your r8125-module-alt from your website)

              I have not done a firmware update yet so might that help?

              This is a completely fresh install of xcp-ng so I can purge it and re-install or ty any suggestions 🙂

              A 1 Reply Last reply Reply Quote 0
              • A Offline
                Andrew Top contributor @antalig
                last edited by

                @antalig There's no firmware update for the RTL812x cards. It's loaded by the driver and Realtek as not released any newer updates (from what XCP already has).

                I have had issues with some multi-port cards in XCP 8.2. I have not tested them again with XCP 8.3

                Does it work (or even show up) without the updated alt driver?
                Try a static IPv4 assignment and see if it works.
                Try booting newer Linux (like Debian 13) and see if it works.
                Post a lspci

                A 1 Reply Last reply Reply Quote 1
                • A Offline
                  antalig @Andrew
                  last edited by olivierlambert

                  @Andrew Ah fair enough re firmware & not testing with 8.3, appreciate the assistance :)ping

                  Without the alt driver it showed up as 'driver:r8125' and 'version:9.012.04-NAPI-PTP-RSS' with 'firmware-version: rtl8125b-2_0.0.2 07/13/20' when running 'ethtool -i eth4'.

                  static IPv4 made no difference, the static assigns but cannot ping gateway or external 8.8.8.8

                  I had an ubuntu 24.04 to hand and while the network adapter shows up there it also does not seem to work... would purchasing an I225-V or i226 afford me better luck?

                  lspci:

                  00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07)
                  00:01.0 PCI bridge: Intel Corporation 6th-10th Gen Core Processor PCIe Controller (x16) (rev 07)
                  00:02.0 VGA compatible controller: Intel Corporation CoffeeLake-S GT2 [UHD Graphics 630]
                  00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
                  00:14.0 USB controller: Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller (rev 10)
                  00:14.2 RAM memory: Intel Corporation Cannon Lake PCH Shared SRAM (rev 10)
                  00:16.0 Communication controller: Intel Corporation Cannon Lake PCH HECI Controller (rev 10)
                  00:17.0 SATA controller: Intel Corporation Cannon Lake PCH SATA AHCI Controller (rev 10)
                  00:1b.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #21 (rev f0)
                  00:1c.0 PCI bridge: Intel Corporation Cannon Lake PCH PCI Express Root Port #6 (rev f0)
                  00:1f.0 ISA bridge: Intel Corporation 300 Series Chipset Family LPC Controller (rev 10)
                  00:1f.3 Audio device: Intel Corporation Cannon Lake PCH cAVS (rev 10)
                  00:1f.4 SMBus: Intel Corporation Cannon Lake PCH SMBus Controller (rev 10)
                  00:1f.5 Serial bus controller: Intel Corporation Cannon Lake PCH SPI Controller (rev 10)
                  00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (7) I219-V (rev 10)
                  01:00.0 PCI bridge: Pericom Semiconductor PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
                  02:01.0 PCI bridge: Pericom Semiconductor PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
                  02:02.0 PCI bridge: Pericom Semiconductor PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
                  02:03.0 PCI bridge: Pericom Semiconductor PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
                  02:04.0 PCI bridge: Pericom Semiconductor PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch
                  03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
                  04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
                  05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
                  06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
                  07:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
                  08:00.0 Network controller: Intel Corporation Wireless 8265 / 8275 (rev 78)
                  
                  A 1 Reply Last reply Reply Quote 0
                  • A Offline
                    Andrew Top contributor @antalig
                    last edited by

                    @antalig As Ubuntu also fails it could be some problem with the card hardware design.

                    Yes, the i225 chips have better drivers.

                    A 1 Reply Last reply Reply Quote 2
                    • olivierlambertO Offline
                      olivierlambert Vates 🪐 Co-Founder CEO
                      last edited by

                      Ouch, indeed if it's also broken with Ubuntu, it might be the card itself.

                      A 1 Reply Last reply Reply Quote 1
                      • A Offline
                        antalig @Andrew
                        last edited by

                        @Andrew Cheers 🙂

                        Trying this
                        https://www.amazon.co.uk/dp/B0CBX9MNXX

                        And will give this a go which other people seem to have success with!
                        https://www.aliexpress.com/item/1005008790660980.html

                        1 Reply Last reply Reply Quote 0
                        • A Offline
                          antalig @olivierlambert
                          last edited by

                          @olivierlambert Great to know it's not something I was doing wrong! Hopefully these other cards I have ordered will afford me more luck! Cheers 🙂

                          1 Reply Last reply Reply Quote 1
                          • First post
                            Last post