Trenz Electronic GmbH Support Forum

Trenz Electronic Products => Trenz Electronic FPGA Modules => Topic started by: two1starz on September 10, 2018, 09:45:45 AM

Title: TE0726 Ethernet Configuration
Post by: two1starz on September 10, 2018, 09:45:45 AM
Hi,

I've been working with TE0726-03m, VIVADO 18.2, PetaLinux Tools 18.2 and Ubuntu 16.04.5 64-bit
just like the previous post(https://forum.trenz-electronic.de/index.php/topic,730.msg3147.html#msg3147), I only could find out these from 'ifconfig -a'

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:2400 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2400 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:168640 (168.6 KB)  TX bytes:168640 (168.6 KB)

sit0      Link encap:IPv6-in-IPv4
          NOARP  MTU:1480  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)


Here's my PS configuration

MIO Configuration
-   Memory Interfaces
         Quad SPI Flash, MIO 1-6
-   I/O Peripherals
       USB 0, MIO 28-39
       SD 1, MIO 10-15
       UART 1, MIO 8-9
       I2C 1 MIO 48-49
       GPIO – GPIO MIO, USB Reset(USB0 Reset MIO 7)
       Application Processor Unit – Timer 0, 1, Watchdog
DDR Configuration
-   DDR Controller configuration
       Memory Type: DDR3(Low Voltage)
       Memory Part MT41J256M16 RE-125
Interrupt Port – PL-PS Interrupt Ports - IRQ_F2P[15:0]

with that configured HW, i modified(enabled) petalinux kernel settings like this page(https://wiki.trenz-electronic.de/display/PD/TE0726+Test+Board#app-switcher)
$petalinux-build -c
1. Device Driver >> Network device support >> Multi-purpose USB Networking Framework, SMSC LAN95XX based USB 2.0 10/100 ethernet devices
2. Device Driver >> Network device support >> PHY Device support and infrastructure >> Xilinx GMMI2RGMII converter driver
3. Device Driver >> USB Support >> USB/IP support

after that, i added in system-top.dts

/include/ "system-conf.dtsi"
/* USB PHY */
/{
    usb_phy0: usb_phy@0 {
        compatible = "ulpi-phy";
        #phy-cells = <0>;
        reg = <0xe0002000 0x1000>;
        view-port = <0x0170>;
        drv-vbus;
    };
};
&usb0 {
    dr_mode = "host";
    //dr_mode = "peripheral";
    usb-phy = <&usb_phy0>;
};

then i ran petalinux-build, created BOOT.bin(fsbl+bitstream+uboot), programmed to flash, copied image.ub, system.dtb into the SD card partition1(fat32),
copied ubuntu root file system(https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-16.04.4-minimal-armhf-2018-03-26.tar.xz) into 2nd partition of SD card(ext4)

everything works fine except ehternet.

what else should i do to have my ethernet work?
I would be really appreciate any help that I'm struggling for a whole week..
Title: Re: TE0726 Ethernet Configuration
Post by: JH on September 10, 2018, 12:35:12 PM
Hi,
can you test at first prebuilt Boot.bin and image.ub from the reference  design download. Does ETH works on this files?
br
John
Title: Re: TE0726 Ethernet Configuration
Post by: Oleksandr Kiyenko on September 10, 2018, 03:56:35 PM
Hi,

please check that
USB_NET_SMSC95XX is enabled in your Linux kernel
CONFIG_USB_NET_SMSC95XX=y

Best regards
Oleksandr Kiyenko
Title: Re: TE0726 Ethernet Configuration
Post by: two1starz on September 11, 2018, 09:14:36 AM
Thanks for reply.

I've just figured out the problem that I was struggling at wrong device tree file.

it didn't work when i modified <project-directory>/components/plnx_workspace/device-tree/system-top.dts
and did work when i modified <project-directory>/project-spec/meta-user/recipes-bsp/device/tree/files/user.dtsi

Now I can find ethernet from my device.

Still I have a question that why modifying system-top.dts doesn't and modifying user.dtsi work.
I thought system-top.dts refers user.dtsi that modifying system-top.dts or user.dtsi would be same.

two1starz
Title: Re: TE0726 Ethernet Configuration
Post by: JH on September 11, 2018, 09:30:01 AM
Hi,
Quote
it didn't work when i modified <project-directory>/components/plnx_workspace/device-tree/system-top.dts
This is a folder which will be overwrite by petalinx. On the odler petalinux (up to 2016.3 you has edid system-top), since 2016.4 and newer (where yoco layer are more open for user), name and location for user device tree has changed has changed. 
Quote
and did work when i modified <project-directory>/project-spec/meta-user/recipes-bsp/device/tree/files/user.dtsi
You can add you own dtsi (modify also yocto includes), or include your changes in the default "<plnx-proj-root>/project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi"

You should change only in "<plnx-proj-root>/project-spec/meta-user/..." all other files can be overwrite.

See also:


br
John