Wind River Support Network

HomeDefectsLIN1019-5468
Fixed

LIN1019-5468 : ls1046a doesn't link up 10Gbps on 10G Copper Ethernet

Created: Oct 7, 2020    Updated: Nov 10, 2020
Resolved Date: Nov 8, 2020
Found In Version: 10.19.45.10
Fix Version: 10.19.45.13
Severity: Standard
Applicable for: Wind River Linux LTS 19
Component/s: BSP

Description

When ls1046a is connected to 10G Copper Ethernet, it links up with 100Mbps speed, not 10Gbps.

If the customer modifies kernel-source/drivers/net/phy/aquantia_main.c like below, the link is up with 10Gbps speed.

kernel-source/drivers/net/phy/aquantia_main.c
-----
static int aqr_config_aneg(struct phy_device *phydev)
{
int ret = 0;
+ return ret;
linkmode_copy(phydev->supported, phy_10gbit_features);
-----

Steps to Reproduce

1. configure and build wrlinux image

$ ./wrlinux-x/setup.sh --machines nxp-ls1046 --templates feature/bsp-extras --dl-layers
$ bitbake wrlinux-image-std
2. boot the wrlinux image

3. connect eth4 to 10G Copper port on another target.

!test_environment.png|width=599,height=215!

4. link up on target

root@nxp-ls1046:~# ip link set eth4 up
root@nxp-ls1046:~# ifconfig eth4 10.20.0.11
5. cheeck the "Speed" entry: it indicates "100Mb/s".

root@nxp-ls1046:~# ethtool eth4
Settings for eth4:
        Supported ports: [ TP AUI BNC MII FIBRE Backplane ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Half 1000baseT/Full
                                10000baseT/Full
                                25000baseKR/Full
                                200000baseLR4_ER4_FR4/Full
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10baseT/Half
                                10000baseT/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: No
        Advertised FEC modes: Not reported
        Link partner advertised link modes:  200000baseLR4_ER4_FR4/Full
        Link partner advertised pause frame use: No
        Link partner advertised auto-negotiation: No
        Link partner advertised FEC modes: Not reported
!!!     Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0xffffffff (-1)
                               drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol 0xffff8000
        Link detected: yes
 

6. modify kernel-source/drivers/net/phy/aquantia_main.c

static int aqr_config_aneg(struct phy_device *phydev)
{
int ret = 0;
+ return ret;
linkmode_copy(phydev->supported, phy_10gbit_features);
7. build kernel again
 8. boot the kernel
 9. check the link speed again (The "Speed" is "10000Mb/s")

# ip link set eth4 up
# ethtool eth4
Settings for eth4:
        Supported ports: [ ]
        Supported link modes: 10000baseT/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: No
        Supported FEC modes: Not reported
        Advertised link modes: 10000baseT/Full
        25000baseKR/Full
        Advertised pause frame use: Symmetric Receive-only
        Advertised auto-negotiation: No
        Advertised FEC modes: Not reported
        Link partner advertised link modes: 25000baseKR/Full
        200000baseLR4_ER4_FR4/Full
        Link partner advertised pause frame use: No
        Link partner advertised auto-negotiation: No
        Link partner advertised FEC modes: Not reported
!!!     Speed: 10000Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0xffffffff (-1)
                               drv probe link timer ifdown ifup rx_err tx_err tx_queued intr tx_done rx_status pktdata hw wol 0xffff8000
        Link detected: yes
Live chat
Online