Hallo to everybody,
I have a problem using two ethernet ports with te820 and I hope I will find help here.
First of all some information:
- I am using Xilinx TE820 SoM from Trenz (TE0820-2EG-1EA)
- Ethernet 1 uses the GEM3 and it is connected via MIO Pins to the PHY. It works fine with following DT:
* Ethernet 1 */
/* ETH PHY */
&gem3 {
status = "okay";
ethernet_phy1: ethernet-phy@1 {
compatible = "marvell,88e1510";
device_type = "ethernet-phy";
reg = <1>;
};
};
- Ethernet 0 uses the GEM0 and it is connected via EMIO Pins to the FPGA. There it goes to a gmii2rgmii converter and then to Ethernet Phy TI83822.
- The gmii2rgmii has the following configuration:
see re-customizeIP.PNG in the attachments
- The DT for Ethernet 0 looks like this:
/* Ethernet 0 */
&gem0 {
status = "okay";
phy-mode = "rgmii-id";
ethernet_phy5: ethernet-phy@5 {
device_type = "ethernet-phy";
compatible = "xlnx,xps-ethernetlite-1.00.a";
reg = <5>;
};
};
While Booting I get following information on terminal:
Net: ZYNQ GEM: ff0b0000, phyaddr ffffffff, interface rgmii-id
eth0: ethernet@ff0b0000ZYNQ GEM: ff0e0000, phyaddr ffffffff, interface rgmii-id
, eth1: ethernet@ff0e0000
[…]
[ 1.405783] macb ff0b0000.ethernet: Not enabling partial store and forward
[ 1.406222] libphy: MACB_mii_bus: probed
[ 1.480625] macb ff0b0000.ethernet eth0: Cadence GEM rev 0x50070106 at 0xff0b0000 irq 30 (80:1f:12:3a:ab:bd)
[ 1.480646] TI DP83822 10/100 Mbps PHY ff0b0000.ethernet-ffffffff:01: attached PHY driver [TI DP83822 10/100 Mbps PHY] (mii_bus:phy_addr=ff0b000 0.ethernet-ffffffff:01, irq=POLL)
[ 1.480978] macb ff0e0000.ethernet: Not enabling partial store and forward
[ 1.481404] libphy: MACB_mii_bus: probed
[ 1.481422] [Firmware Warn]: /amba/ethernet@ff0e0000/ethernet-phy@1: Whitelisted compatible string. Please remove
[ 1.552710] macb ff0e0000.ethernet eth1: Cadence GEM rev 0x50070106 at 0xff0e0000 irq 31 (80:1f:12:3a:ab:bd)
[ 1.552726] Marvell 88E1510 ff0e0000.ethernet-ffffffff:01: attached PHY driver [Marvell 88E1510] (mii_bus:phy_addr=ff0e0000.ethernet-ffffffff:01 , irq=POLL)
[…]
Configuring network interfaces... [ 4.560977] pps pps0: new PPS source ptp0
[ 4.564968] macb ff0b0000.ethernet: gem-ptp-timer ptp clock registered.
[ 4.571571] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
udhcpc (v1.24.1) started
Sending discover...
Sending discover...
Sending discover...
No lease, forking to background
[ 13.779216] pps pps1: new PPS source ptp1
[ 13.783172] macb ff0e0000.ethernet: gem-ptp-timer ptp clock registered.
[ 13.789811] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
udhcpc (v1.24.1) started
Sending discover...
Sending discover...
[ 16.908741] macb ff0e0000.ethernet eth1: link up (1000/Full)
[ 16.914344] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
Sending discover...
No lease, forking to background
done.
After Booting, using ifconfig, I get the information:
root@PetaLinux:~# ifconfig
eth0 Link encap:Ethernet HWaddr 80:1F:12:3A:AB:BD
UP 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:30
eth0:0 Link encap:Ethernet HWaddr 80:1F:12:3A:AB:BD
inet addr:10.0.0.2 Bcast:0.0.0.0 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
Interrupt:30
eth1 Link encap:Ethernet HWaddr 80:1F:12:3A:AB:BD
inet6 addr: fe80::821f:12ff:fe3a:abbd%4882584/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:65 errors:0 dropped:0 overruns:0 frame:0
TX packets:51 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:7498 (7.3 KiB) TX bytes:13230 (12.9 KiB)
Interrupt:31
eth1:1 Link encap:Ethernet HWaddr 80:1F:12:3A:AB:BD
inet addr:10.0.1.2 Bcast:0.0.0.0 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:31
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1%4882584/128 Scope:Host
UP LOOPBACK RUNNING 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:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Connecting / disconnecting my pc to Ethernet 0 and 1 shows terminal output:
[ 1821.196784] macb ff0e0000.ethernet eth1: link up (1000/Full)
[ 1824.268708] macb ff0e0000.ethernet eth1: link down
[ 1828.300755] macb ff0b0000.ethernet eth0: link up (100/Full)
[ 1830.348681] macb ff0b0000.ethernet eth0: link down
Seems somehow to be working… but: I can only ping Ethernet1.
I did check:
- IP Adress of my computer
- Firewall of my computer
- several compatibles in DeviceTree for &gem0
(compatible = "marvell,88e1510";
compatible = "ethernet-phy-id2000.5C90";
compatible = "xlnx,xps-ethernetlite-1.00.a"
without getting ethernet0 to work.
Any hints what am I doing wrong?
Kind Regards
Thomas