• 0
m3atwad

Help connecting TEMAC core Eth in device tree

Question

Hello,

I'm trying to get my temac ethernet mac up and running in the PL for the zedboard.  I bought the quad eth board from ospero and the zedboard and the TEMAC MAC IP.

When I instantiate the temac core petalinux only puts in a very small entry in my device tree and when linux boots it doesn't seem to try to load the driver.  In working on this I've got a few general questions to help my understanding.

I've read that Xilinx says you have to add the MDIO and PHY part of the device tree for the eth yourself manually - the tool (petalinux) doesn't do that.  

1. Where in the petalinux-config -c kernel menu do you enable the temac core drivers?  I can't find out where to enable the XILINX_LL_TEMAC #define

2. I will repost my device tree so far below.  How do you figure out what gaps there are and how to fill them in?  Should I be using the petalinux-config menus to tell petalinux how to create the correct device tree?  For example, the device tree links between the DMA and the TEMAC MAC IP?

3. I think I have the 'compatibility' string set correctly so why isn't the kernel trying to probe this on boot?  There is nothing in dmesg after boot that references this PL IP MAC.

4. Should I be using the axi ethernet subsystem driver when I'm using the stand alone Xilinx TEMAC MAC in my PL design or should I be using a TEMAC specific driver?  I notice here:

https://github.com/Xilinx/linux-xlnx/tree/master/drivers/net/ethernet/xilinx

Xilinx has both the axi ethernet subsystem and the ll_temac driver.  Since I'm using the TEMAC IP I figured I should use the ll_teamc driver?

 

Right now I'm just trying to get linux to attempt to probe the TEMAC MAC on boot.  It isn't doing that right now, it only loads the standard ethernet mac in the PS that is default to zedboard.  

 

I've attached a screenshot of my current PL device tree entries for the dma and temac core.

50.jpg

51.jpg

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

  • 0
Posted (edited)

Here are some of my useful project files.  recover.dts is my uncompiled final device tree blob.  I uncompile it with hte dtc tool so I can see what the final device tree looks like.  My ultimate goal for this first step is to just get to the point where the kernel attempts to load the driver and initialize the MAC and fails.  :)

Oh and I also added the mdio and phy part by hand based on the following

https://www.xilinx.com/support/answers/61117.html

It isn't the same use case as I'm working in PL, but I think it was the right direction and I subbed in my PHY which is the marvell,88e1510.

 

recover.dts design_1_wrapper.xsa system-user.dtsi

Edited by m3atwad

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now