AnsweredAssumed Answered

IMX6UL Ethernet Phy Testing

Question asked by Nick Hunn on Nov 14, 2019
Latest reply on Nov 14, 2019 by igorpadykov



I'm trying to get Ethernet under Linux working on a custom board I've designed. I've got a TI DP83822 PHY that I want to operate in RMII mode. I'm happy that I've got the MDIO interface working as I can read and write to registers on the PHY. What I want to test is the RMII connection between the PHY and the IMX and eventually get it working to the outside world.

When I bring the connection up I get:

TI DP83822 20b4000.ethernet-1:01: attached PHY driver [TI DP83822] (mii_bus:phy_addr=20b4000.ethernet-1:01, irq=POLL)
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
fec 20b4000.ethernet eth0: Link is Up - 100Mbps/Full - flow control rx/tx
IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready

Ifconfig gives me this:

eth0      Link encap:Ethernet  HWaddr 3A:71:1B:A5:03:45
          inet6 addr: fe80::3871:1bff:fea5:345/64 Scope:Link
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

I do get a message in the logs that it's using a random MAC address, can this cause problems?

Ethtool spits out the following:

Settings for eth0:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Supported pause frame use: Symmetric
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: Yes
        Link partner advertised link modes:  10baseT/Half 10baseT/Full
                                             100baseT/Half 100baseT/Full
        Link partner advertised pause frame use: Symmetric Receive-only
        Link partner advertised auto-negotiation: Yes
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: g
        Wake-on: d
        Link detected: yes


I must have some link to the cable, as pulling my ethernet cable out gives the message:

fec 20b4000.ethernet eth0: Graceful transmit stop did not complete!
fec 20b4000.ethernet eth0: Link is Down

What can be my problems here?

I can do loop back tests inside the PHY, but the MAC driver doesn't seem to have a test mode so I don't know what to look for when I do this.