My eth0 interface can only run at 1Gbps. If I plug into a 100 Mbps switch or use ethtool to set the link speed, it looks like it succeeded: xemacps e000b000.ps7-ethernet: link down xemacps e000b000.ps7-ethernet: Set clk to 25000000 Hz xemacps e000b000.ps7-ethernet: link up (100/FULL)
But I can no longer communicate on the network. Setting the link speed back to 1Gbps fixes things. I currently have this in my device tree for eth0: ps7_ethernet_0: ps7-ethernet@e000b000 { phy-handle = <&phy0>; phy-mode = "rgmii-id"; compatible = "xlnx,ps7-ethernet-1.00.a"; clock-names = "ref_clk", "aper_clk"; clocks = <&clkc 13>, <&clkc 30>; xlnx,enet-slcr-1000mbps-div0 = <0xa>; xlnx,enet-slcr-1000mbps-div1 = <0x1>; xlnx,enet-slcr-100mbps-div0 = <0xa>; xlnx,enet-slcr-100mbps-div1 = <0x5>; xlnx,enet-slcr-10mbps-div0 = <0xa>; xlnx,enet-slcr-10mbps-div1 = <0x32>; xlnx,ptp-enet-clock = <111111115>; mdio { #address-cells = <1>; #size-cells = <0>; phy0: phy@0 { compatible = "marvell,88e1510"; device_type = "ethernet-phy"; reg = <0>; } ; }; } ; I got the ethernet0 device tree node from here (plus bits from elsewhere that I have come across to try and get this to work): http://www.wiki.xilinx.com/Zynq+Emacps+Linux+Driver My ENET0 clock comes from the iopll. My clock tree currently looks like this: ps_clk 3 3 33333333 0 0 iopll_int 1 1 999999990 0 0 iopll 11 11 999999990 0 0 gem0_mux 1 1 999999990 0 0 gem0_div0 1 1 999999990 0 0 gem0_div1 1 1 124999999 0 0 gem0_emio_mux 1 1 124999999 0 0 gem0 1 1 124999999 0 0 When I set the link speed to 100Mbps, the clock rate column for gem0 does not change from 125MHz. I think I do not have the clock set up correctly for eth0. Can anyone see what's missing or wrong? Thank you for any help. -- _______________________________________________ meta-xilinx mailing list meta-xilinx@yoctoproject.org https://lists.yoctoproject.org/listinfo/meta-xilinx