My board is LS1028 which has ETH ports for 1000Mbps, I verified it by iperf3.
However, when I tried DPDK (which 1028 is supported), Something went wrong:
following the document, I first change the dtb with the DPDK one, then run the /dpdk_configure_1028ardb.sh.
I started my DPDK test by:
./dpdk-testpmd -l 0-1 -n 4 -- -i --portmask=0x1 --nb-cores=1
logs here:
EAL: Detected CPU lcores: 2
EAL: Detected NUMA nodes: 1
EAL: Detected static linkage of DPDK
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'VA'
EAL: No available 32768 kB hugepages reported
EAL: No available 64 kB hugepages reported
EAL: No available 1048576 kB hugepages reported
EAL: VFIO support initialized
EAL: Using IOMMU type 1 (Type 1)
EAL: Probe PCI driver: net_enetc (1957:e100) device: 0000:00:00.0 (socket 0)
EAL: Probe PCI driver: net_enetc (1957:e100) device: 0000:00:00.6 (socket 0)
enetc_net: MAC is not available for this SI, set random MAC
enetc_net: New address: E6:54:C7:C4:08:B8
TELEMETRY: No legacy callbacks, legacy socket not created
Interactive-mode selected
previous number of forwarding ports 2 - changed to number of configured ports 1
testpmd: create a new mbuf pool <mb_pool_0>: n=155456, size=2176, socket=0
testpmd: preferred mempool ops selected: ring_mp_mc
Warning! port-topology=paired and odd forward ports number, the last port will pair with itself.
Configuring Port 0 (socket 0)
Port 0: 02:D1:30:03:DA:3E
Configuring Port 1 (socket 0)
Port 1: E6:54:C7:C4:08:B8
Checking link statuses...
Done
testpmd>
then taping : show port info all
********************* Infos for port 0 *********************
MAC address: 02:D1:30:03:DA:3E
Device name: 0000:00:00.0
Driver name: net_enetc
Firmware-version: not available
Connect to socket: 0
memory allocation on the socket: 0
Link status: down
Link speed: 10 Mbps
Link duplex: half-duplex
Autoneg status: Off
MTU: 1500
Promiscuous mode: enabled
Allmulticast mode: disabled
Maximum number of MAC addresses: 0
Maximum number of MAC addresses of hash filtering: 0
VLAN offload:
strip off, filter off, extend off, qinq strip off
No RSS offload flow type is supported.
Minimum size of RX buffer: 0
Maximum configurable length of RX packet: 9600
Maximum configurable size of LRO aggregated packet: 0
Current number of RX queues: 1
Max possible RX queues: 1
Max possible number of RXDs per queue: 64000
Min possible number of RXDs per queue: 32
RXDs number alignment: 8
Current number of TX queues: 1
Max possible TX queues: 2
Max possible number of TXDs per queue: 64000
Min possible number of TXDs per queue: 32
TXDs number alignment: 8
Max segment number per packet: 0
Max segment number per MTU/TSO: 0
Device capabilities: 0x0( )
********************* Infos for port 1 *********************
MAC address: E6:54:C7:C4:08:B8
Device name: 0000:00:00.6
Driver name: net_enetc
Firmware-version: not available
Connect to socket: 0
memory allocation on the socket: 0
Link status: down
Link speed: 10 Mbps
Link duplex: half-duplex
Autoneg status: Off
MTU: 1500
Promiscuous mode: enabled
Allmulticast mode: disabled
Maximum number of MAC addresses: 0
Maximum number of MAC addresses of hash filtering: 0
VLAN offload:
strip off, filter off, extend off, qinq strip off
No RSS offload flow type is supported.
Minimum size of RX buffer: 0
Maximum configurable length of RX packet: 9600
Maximum configurable size of LRO aggregated packet: 0
Current number of RX queues: 1
Max possible RX queues: 1
Max possible number of RXDs per queue: 64000
Min possible number of RXDs per queue: 32
RXDs number alignment: 8
Current number of TX queues: 1
Max possible TX queues: 2
Max possible number of TXDs per queue: 64000
Min possible number of TXDs per queue: 32
TXDs number alignment: 8
Max segment number per packet: 0
Max segment number per MTU/TSO: 0
Device capabilities: 0x0( )
testpmd>
(tried with --iova-mode=pa also, but nothing changed)
but my port status should be 1000Mbps with full duplex, what's going on? Is there anything wrong with my configuration or hardware?
Yours sincerely
A student counting on this to graduate
By reading DPDK source code, 10Mbps and half duplex are the default case as the result of switch registers reading, when the reading result goes wrong, then 10M and half will be the status.