[meta-xilinx] Problems with Ethernet on ZC706

Stephen Mossom stephen.mossom at calnexsol.com
Wed Apr 16 02:37:58 PDT 2014


Hi Nathan,

The problem turned out to be caused by a missing jumper on J9 leaving PHYAD[4] floating. 

Interestingly with the jumper removed the Ethernet works OK on both u-boot and kernel 3.8. This made me assume we had a software issue. Also we haven't removed any jumpers from the board since it was delivered.

I guess it's a timing thing with PHYAD[4]  drifting up and getting sampled low in 3.8 but high in 3.10 onwards? 

The revision of ZC706 we have 1.2.

Thanks very much for your help.

Stephen
________________________________________
From: Nathan Rossi <nathan.rossi at xilinx.com>
Sent: Wednesday, April 16, 2014 8:57 AM
To: Stephen Mossom
Cc: meta-xilinx at yoctoproject.org
Subject: RE: Problems with Ethernet on ZC706

> -----Original Message-----
> From: meta-xilinx-bounces at yoctoproject.org [mailto:meta-xilinx-
> bounces at yoctoproject.org] On Behalf Of Stephen Mossom
> Sent: Tuesday, April 15, 2014 6:16 PM
> To: meta-xilinx at yoctoproject.org
> Subject: [meta-xilinx] Problems with Ethernet on ZC706
>
> Hi there,
>
>
> I am trying to use the meta-xilinx layer to get the ZC706 dev board
> booting with kernel version 3.10.
>
> Initially I proved that the default 3.8 version worked by checking out the
> dora branch of poky along with the dora branch of meta-xilinx.
>
> Using this branch I was able to boot the board successfully from both a
> partitioned SD card and using an NFS sysroot.​
>
> There are features which our project requires that are only available in
> kernel versions 3.10 onwards.
>
> I initially edited the zc706-zynq7.conf​ file to set
> PREFERRED_VERSION_linux-xlnx to 3.10.
>
> The kernel was successfully fetched and built but when I try to boot it I
> get an error from the ethernet driver:-
>
> libphy: XEMACPS mii bus: probed
> mdio_bus e000b000: cannot get PHY at address 7
> xemacps e000b000.ps7-ethernet: pdev->id -1, baseaddr 0xe000b000, irq 54
>
> I have since tried the master branch of poky and meta-xilinx and I get the
> same error. I have also tried building version 3.12 and 3.14 of the kernel
> with the same results.

Interesting, I do not have any issues with the 3.8, 3.10 and master-next kernels. Have you updated meta-xilinx? Recently I pushed some device tree updates.

Have you checked if the PHY is operational? (the LED's should light up, and it should auto-negotiate without any software). Also try changing the dts to use the phy addr 0, this should find it if it is not responding to addr 7.

Also which rev of the zc706 are you using?, I might be able to find one and see if can reproduce your issue.

>
> Address 7 is the correct address for the Ethernet PHY on the zc706.

In case you have changed the jumper settings on the board for the PHY, check J45, J47, J46 and J9. See the schematic for more details (sheet 29):
http://www.xilinx.com/support/documentation/boards_and_kits/zynq-7000/zc706-schematic-xtp215-rev1-1.pdf

>
> I had a read through some of the posts on this mailing lists and found
> some discussion on the device trees for the Zynq being in flux so I have
> also tried using the device tree from the kernel tree instead of the meta-
> xilinx layer version. The error still persists.
>
> I have noticed that the e1000e ethernet driver version has changed -
> 2.1.4-k in 3.8 and  2.3.2-k in later versions of the kernel. I'm not sure
> how relevant this is.

Not relevant unless you plan to hang an Intel e1000e adapter off a PCIe bus.

>
> Has anyone managed to get a version of the kernel working with ethernet
> using YOCTO beyond version 3.8? Is there a recommended 'known good'
> configuration of kernel and device tree for this board which uses a kernel
> which is at version 3.10 or newer?
>
> Thanks in advance for any assistance.
> Stephen

Regards,
Nathan



More information about the meta-xilinx mailing list