News:

Attention: For security reasons,please choose a user name *different* from your login name.
Also make sure to choose a secure password and change it regularly.

Main Menu

Ethernet configuration ZynqBerry TE0726

Started by pb, November 22, 2016, 10:50:41 AM

Previous topic - Next topic

pb

Hi everyone,

I'm using a ZynqBerry and followed the Reference Guide UG1144 from Xilinx to build Linux. I can successfully boot Linux from SD card, but I have some trouble with ethernet communication. In Vivado I configured Ethernet (ENET 1) to MIO 28..39.

After running "petalinux-config" I got folliwing warning:
WARNING: ps7_ethernet_1: No reset found

system-conf.dtsi:
aliases {
      serial0 = &uart1;
      ethernet0 = &gem1;
   };

Therefore I adapted "system-top.dts" by adding:
&gem1 {
   phy-handle = <&phy1>;
   ps7_ethernet_1_mdio: mdio {
      #address-cells = <1>;
      #size-cells = <0>;
      phy1: phy@0 {
         compatible = "marvell,88e1510";
         device_type = "ethernet-phy";
         reg = <0>;
      };
   };
};

But I still can't use ethernet. Can you give me some hints on how to correctly configure ethernet via the system-top.dts?

Thanks in advance

Oleksandr Kiyenko

Hello,

Current Zynqberry revision don't use onboard GEM, Ethernet communication made through USB to Ethernet bridge.
So to use Ethernet port you need only correct USB configuration and kernel with corresponding drivers.
You can get complete Vivado reference projects and Linux configuration from download area
https://shop.trenz-electronic.de/de/Download/?path=Trenz_Electronic/TE0726/Reference_Design/2016.2



Best regards
Oleksandr Kiyenko

pb

Hello Oleksandr,

thanks for your answer.
I would like to use the petalinux I build with the reference guide and get to know the process of builing custom Linux for Zynq.
Could you explain which options I have to set in the kernel to activate appropriate drivers and how to configure USB (in system-top or elsewhere)?

Best regards
Paul

Oleksandr Kiyenko

#3
Hello Paul,

in system-top.dts you need

/{
    usb_phy0: usb_phy@0 {
        compatible = "ulpi-phy";
        #phy-cells = <0>;
        reg = <0xe0002000 0x1000>;
        view-port = <0x0170>;
        drv-vbus;
    };
};

&usb0 {
    usb-phy = <&usb_phy0>;
} ;

And in kernel konfig you need to enable
Device Drivers > Network device support > USB Network Adapters
<*>     SMSC LAN95XX based USB 2.0 10/100 ethernet devices

You can found all configs inside reference project.

Best regards
Oleksander

pb

Hi Oleksander,

thanks for the hints. Unfortunately I still don't have a working ethernet connection.
How can I see the configs from the reference project? Is opening them with some editor and comparing system-top.dts, system-conf.dtsi, rootfs config etc. to the files I created?

Best regards

JH


pb

Hi,

thanks for reply. With your help I got ethernet working. Problem was that I configured PS with ENET1 on MIO pins 28..39 instead of USB0.

best regards

pb

Hi,

I have another question regarding ethernet on the Zynqberry.
When I configure USB0 in Vivado to use ethernet, I can't set a static IP address in petalinux config (run "petalinux-config --get-hw-description=..." -> Subsystem AUTO Hardware Settings -> Ethernet Settings -> Primary Ethernet). Only option is "manual".
Can you give me some advice? Do I have to configure the PS in another way? Or can I make changes to the config files for a static IP?
Thanks.

Oleksandr Kiyenko

Hi,

USB ethernet interface will appear only after load of USB driver. In petalinux easiest way to do such configuration in some linux late startup script. 
https://www.xilinx.com/support/answers/55998.html


Best regards
Oleksandr Kiyenko

sergio

Hello guys,

I have successfully established an Ethernet connection with my ZynqBerry following the steps given in this topic.

Nevertheless, I was wondering if it's possible to configure a Vivado project to have Ethernet support without having to change the device tree later.

In my Vivado project I re-costumized the Zynq7 PS to add Ethernet on the I/O peripherals and then I exported the hardware description file to create a PetaLinux project.

However, I wasn't able to establish an Ethernet connection even though I added it on the Vivado project. Is there any driver missing?

Best regards,

mj




Oleksandr Kiyenko

Hello MJ,

To use Zynq PS Ethernet controller board should have Ethernet PHY chip conneted to dedicated pins of chip. ZynqBerry board don't have this PHY chip, so you can't use this controller.

Best regards
Oleksandr Kiyenko

sergio

Thank you for the reply Oleksandr.

So, the only way to configure Ethernet on ZynqBerry is to change manually the system-top.dts file and add the USB network adapter driver?

There is nothing I can do in Vivado?

Best regards,

mj

Oleksandr Kiyenko

Hello MJ,

In Vivado you need USB configuration only.

Best regards
Oleksandr Kiyenko

mb

Hi,
I am using a Zynqberry TE0726 with Single-Core and I want to use the Ethernet Interface in Vivado.

How do I have to design it in Vivado to use it?

Do I only need the Zynq PS and enabled USB0 instead of ETH0?

Please help me.

Cheers,
mb

Oleksandr Kiyenko

Hello,

You can use the same reference projects for Single-Core version of TE0726. Only difference will be in project settings. You should
choose your board version in design_basic_settings.cmd file before create project. In reference projects Zynq PS block have USB0 enabled.


Best regards
Oleksandr Kiyenko

mb

Hello Oleksandr,

thank you for reply.

Do I need other IP Components than Zynq PS block like AXI Ethernet Subsystem or else?

Cheers,
mb

Oleksandr Kiyenko

Hello mb,

no, TE0726 have onboard USB Ethernet bridge chip, so for Ethernet communication you need only USB.

Best regards
Oleksandr Kiyenko

mb

Hello Oleksandr,

thank you for that. That was clear.

So I just need the Zynq PS and to make the USB0 external, right?

Or do I also need AXI GPIO, AXI Interconnect, AXI BRAM Controller and Block Memory Generator or like that?

I have attached an image of my block design in vivado.

Cheers,
mb


Oleksandr Kiyenko

Hello mb,

you can start from one of reference project https://shop.trenz-electronic.de/de/Download/?path=Trenz_Electronic/TE0726/Reference_Design
All reference projects have USB configuration.

Best regards
Oleksandr Kiyenko