cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Anonymous
Not applicable
9,265 Views

Xilinx linux in Zynq: no ethernet

Jump to solution

Hi,

 

I created a project including only the Zynq.

DTS file attached.

I can boot linux (see attached log).

 

But

 

zynq> ifconfig
zynq> 

How to activate the ethernet?

 

Thanks in advance,

Max

Tags (3)
0 Kudos
1 Solution

Accepted Solutions
Anonymous
Not applicable
13,317 Views

The problem was due to wrong clock settings

 

Solution here.

 

View solution in original post

0 Kudos
6 Replies
sorenb
Xilinx Employee
Xilinx Employee
9,258 Views
Registered: ‎03-13-2012

What does ifconfig -a say?

0 Kudos
johnmcd
Xilinx Employee
Xilinx Employee
9,246 Views
Registered: ‎02-01-2008

I don't see a phy in your devicetree. Here's an example:

&gem0 {
    status = "okay";
    phy-mode = "rgmii-id";
    phy-handle = <&phy0>;

    phy0: phy@7 {
        reg = <7>;
    };
};

0 Kudos
Anonymous
Not applicable
9,224 Views

With the original devicetree

zynq> ifconfig -a
lo        Link encap:Local Loopback  
          LOOPBACK  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)

 Adding phy, as suggested by John

zynq> ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:0A:35:00:01:22  
          BROADCAST MULTICAST  MTU:1500  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:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:54 Base address:0xb000 

lo        Link encap:Local Loopback  
          LOOPBACK  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)

 

0 Kudos
Anonymous
Not applicable
9,191 Views

And why the procedure described here didn't generate the full devicetree (including eth)?

0 Kudos
j.herbert1
Visitor
Visitor
9,143 Views
Registered: ‎03-11-2015

Yes, generating the devicetree for ethernet simply doesn't work for me.

 

It gave me this:

 

&gem0 {
	local-mac-address = [00 0a 35 00 00 00];
	phy-mode = "rgmii-id";
	status = "okay";
	xlnx,ptp-enet-clock = <0x6750918>;
	ps7_ethernet_0_mdio: mdio {
		#address-cells = <1>;
		#size-cells = <0>;
	};
};

But I needed this for it to actually work

&gem0 {
	local-mac-address = [00 0a 35 00 00 00];
	phy-mode = "rgmii-id";
	status = "okay";
	phy-handle = <&phy0>;
	xlnx,eth-mode = <0x1>;
	xlnx,has-mdio = <0x1>;
	xlnx,ptp-enet-clock = <0x6750918>;
	ps7_ethernet_0_mdio: mdio {
		#address-cells = <1>;
		#size-cells = <0>;
		
		phy0: phy@1 {
			compatible = "realtek,RTL8211E";
			device_type = "ethernet-phy";
			reg = <1>;
		} ;
	};
};
0 Kudos
Anonymous
Not applicable
13,318 Views

The problem was due to wrong clock settings

 

Solution here.

 

View solution in original post

0 Kudos