AnsweredAssumed Answered

Ethernet failing to lease in RMII mode

Question asked by Michael Worster on Oct 17, 2016
Latest reply on Jan 5, 2017 by 贾继中 贾继中

I have a setup with a i.MX6DL attached to an external PHY (TLK105), the processor and the PHY should communicative over MDIO on address 1, however from the kernel logs I'm not seeing the ethernet functioning.

 

dmesg:

 

fec 2188000.ethernet eth0: Freescale FEC PHY driver [Generic PHY] (mii_bus:phy_addr= 2188000.ethernet:01, irq=-1)

IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
udhcpc (v1.23.1) started
Sending discover...
libphy: 2188000.ethernet:01 - Link is Up - 100/Full
IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
Sending discover...
Sending discover...
No lease, forking to background

 

Executing "ping" commands never seem to send any data and no IPV4 address is ever assigned:

root@imx6dlicomv2cib:~# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:02:99:13:A8:6A
          inet6 addr: fe80::202:99ff:fe13:a86a/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          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)

 

My ethernet is setup in the tree as such:

 

&fec {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_enet>;
    phy-mode = "rmii";
    phy-handle = <&ethphy0>;
    phy-reset-gpios = <&gpio5 14 0>;
    fsl,magic-packet;
    status = "okay";

 

    mdio {
        #address-cells = <1>;
        #size-cells = <0>;

 

        ethphy0: ethernet-phy@1 {
            compatible = "ethernet-phy-ieee802.3-c22";
            reg = <1>;
        };

 

    };
};

Outcomes