UPGRADE YOUR BROWSER
We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!
12-19-2014 08:11 AM - edited 12-19-2014 08:15 AM
Hi all. I try to bringup double-ethernet system on custom board with ZYNQ045. Marvell PHYs 88E1516 (are same as on Zedboard) with RGMII IF connected to PL and then thru GMII2RGMII cores and EMIO connected to PS.
In my configuration I use Petalinux 2014.4.
ifconfig output
eth0 Link encap:Ethernet HWaddr 02:22:A3:29:51:A2 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:5498 dropped:0 overruns:0 frame:5498 TX packets:146 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:49176 (48.0 KiB) Interrupt:54 Base address:0xb000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 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:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
You can see that eth1 does not appear. But in boot meassges GEM1 driver configured in same manner as GEM0 driver (I think device tree is right). I can not understand why the interface does not appear in the list. This is the first misunderstanding.
Second problem is that I cannot see any packets received on eth0, although I can ping my PC from console and see ARP requests on it by WireShark.
In ifconfig output you can see that errors are presented in statistics. But I read all error statistic registers in GEM0 module and all of it are zero. I cannot understand in wich way ifconfig accout errors.
Maybe someone has already faced a similar problem?
And yet, I chipscope signals on both GMII and RGMII sides and for tx channel and rx channel of GMII2GRMII core and for the first glance its all are OK. I can see preaumble and other data of frames.
12-22-2014 09:01 AM
I found the solution to my problem. i just forget to set properly timing constraint for RX clock. I know, it is very stupid. When I set it I can recieve packets with no errors.
12-19-2014 08:38 AM
I found the solution for the first question. I should just manually up the second interface, i.e. I print
ifconfig eth1 up
ifconfig
eth0 Link encap:Ethernet HWaddr 02:22:A3:29:51:A2 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:13078 dropped:0 overruns:0 frame:13078 TX packets:407 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:138438 (135.1 KiB) Interrupt:54 Base address:0xb000 eth1 Link encap:Ethernet HWaddr 12:84:F3:5C:4B:85 inet6 addr: fe80::1084:f3ff:fe5c:4b85/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:102 dropped:0 overruns:0 frame:102 TX packets:7 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:558 (558.0 B) Interrupt:77 Base address:0xc000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 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:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
As you can see there are errors and no packets received also by the eth1.
12-22-2014 09:01 AM
I found the solution to my problem. i just forget to set properly timing constraint for RX clock. I know, it is very stupid. When I set it I can recieve packets with no errors.