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!

cancel
Showing results for 
Search instead for 
Did you mean: 
Explorer
Explorer
2,900 Views
Registered: ‎05-14-2015

debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

Hello, I'm using Zynq Ultrascale+ to interface with an ethernet PHY chip from Micrel(Microchip now). The PHY chip is KSZ9031RNX. I'm using Peta-linux 2017.4 to generate u-boot and image.ub.

 

KSZ9031RNX can support 10/100/1000Mbps ethernet. It has 4x pairs(A,B,C and D) differential signals to support 1000Mbps.    In my design, only 10BASE-T is used. So, my board only connected the differential pair A and B. The differential pair C and D are not connected on my board. 

 

Now, I tried to boot up the board. 

It looks U-Boot has successfully recognized the ethernet PHY. see log below:

u-boot-1.png

 

Then, The booting process continued to load kernel image. But, the kernel can't find the PHY. See log below:

u-boot-1.png

(Please find the details of the log file in the attachment)

 

Then, I used a ethernet cable to connect with my laptop. And set the laptop to a fixed IP address: 192.168.100.5.  And set the link speed to 10Mbps with full duplex. 

Then, boot the system into U-boot. Then, set the IP address of my board to 192.168.100.8. Then, type the command "ping 192.168.100.5" to ping my laptop. It succeeded. (I also used Wireshark to monitor the communication. It looks ok. )

u-boot-1.png

 

Then, use my laptop to ping my board as below. But, it failed. 

u-boot-1.png

 

Do you know why the Kernel can not recognize ethernet PHY? 

My board can ping my laptop? but, why can't my laptop ping my board?

Do I need to configure KSZ9031 to work in 10Mbps first and How?

 

 

0 Kudos
1 Solution

Accepted Solutions
Highlighted
Contributor
Contributor
3,161 Views
Registered: ‎04-04-2018

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

That should be all that's necessary to pull the micrel phys into your kernel build.

 

Some phy code supports compatible attributes but the micrel code does not appear to do so - you can most likely eliminate the compatible node (AFAICT the string literal "ksz9031" does not appear anywhere in the kernel source tree). Then perhaps compare your u-boot and kernel device trees.

 

View solution in original post

6 Replies
Contributor
Contributor
2,869 Views
Registered: ‎04-04-2018

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

Did you enable the Micrel PHYs in your kernel config?

u-boot doesn't respond to ping.

 

0 Kudos
Moderator
Moderator
2,859 Views
Registered: ‎09-12-2007

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution
canyiu show your devicetree?
0 Kudos
Explorer
Explorer
2,839 Views
Registered: ‎05-14-2015

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

@smcnutt, I have enabled Micrel's PHY in Kernel configuration. See below. Is there anything else I should enable too? 

device-tree.png

 

@stephenm, I added the node for PHY in system-user.dtsi as below. Is it ok? 

device-tree.png

 

0 Kudos
Highlighted
Contributor
Contributor
3,162 Views
Registered: ‎04-04-2018

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

That should be all that's necessary to pull the micrel phys into your kernel build.

 

Some phy code supports compatible attributes but the micrel code does not appear to do so - you can most likely eliminate the compatible node (AFAICT the string literal "ksz9031" does not appear anywhere in the kernel source tree). Then perhaps compare your u-boot and kernel device trees.

 

View solution in original post

Explorer
Explorer
2,810 Views
Registered: ‎05-14-2015

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

@smcnutt, Thanks for your reply. 

I can find the device trees for Kernel.  Do you know where to find the device tree for u-boot inside peta-linux project? 

0 Kudos
Visitor skanarek
Visitor
1,138 Views
Registered: ‎12-09-2017

Re: debug ethernet in both UBoot and Linux(Peta-linux)

Jump to solution

@softwind555  , Did you find the solution ? 

can you share you "user dtsi" and kernel configs ? 

 

Thank you!

0 Kudos