Hi, we are analyzing Ethernet capabilities on TDA4x with goal of using it for development of TDA4 SoC based platform.
To achieve 10Gbps speed over ethernet we connected Intel(R) 10GbE PCI Express adapter to the TDA4VM EVM via one of PCIe connectors on board.
We also added the IXGBE driver support in kernel in order for linux to recognize the card.
The card is orderly recognized by kernel:
[ 9.258316] ixgbe: Intel(R) 10 Gigabit PCI Express Network Driver - version 5.1.0-k
[ 9.291030] ixgbe: Copyright (c) 1999-2016 Intel Corporation.
[ 9.456670] ixgbe 0000:01:00.0: enabling device (0000 -> 0002)
[ 10.243258] ixgbe 0000:01:00.0: Multiqueue Enabled: Rx Queue count = 2, Tx Queue count = 2 XDP Queue count = 0
[ 10.415630] ixgbe 0000:01:00.0: 7.876 Gb/s available PCIe bandwidth (8 GT/s x1 link)
[ 10.469027] ixgbe 0000:01:00.0: MAC: 4, PHY: 0, PBA No: 000300-000
[ 10.479843] ixgbe 0000:01:00.0: a0:36:9f:17:c1:24
[ 10.677170] ixgbe 0000:01:00.0: Intel(R) 10 Gigabit Network Connection
[ 10.697078] ixgbe 0000:01:00.0 enp1s0: renamed from eth1
But the kernel did not activate the Ethernet interface on adapter card, ifconfig results are below:
enp1s0 Link encap:Ethernet HWaddr A0:36:9F:17:C1:24
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)
eth0 Link encap:Ethernet HWaddr F4:84:4C:F4:D7:FF
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)
The enp1s0 is PCIe Ethernet adapter interface and unlike eth0 it is not activated automatically by kernel.
We tried to use DHCP to automatically activate and configure this interface, but DHCP is nowhere to be found in the linux system.
We have to manually activate enp1s0 and manually configure IP, netmask and broadcast address in order to use it.
We are now confused because when we connect ethernet cable to the eth0 interface, which is MCU RGMII port on EVM board, IP, netmask and broadcast address are automatically configured.
Later we looked in Software Developer’s Guide, and it tells us to use 'udhcpc -i ethX' command to start ethX interface by default, and it worked. How can we configure this micro dhcp client/server to automatically activate new ethernet interfaces?
Can you explain how is this MCU RGMII port, which is connected to the MCU domain, visible withing MAIN domain from linux.
How is that port automatically activated and configured by linux?
Can you help us to better understand what is going on here?
Regards.
Uros