Skip to content

NIC Test Plan

Vijayakannan Ayyathurai edited this page Jul 11, 2025 · 1 revision
Test Case Description Preconditions Test Steps Expected Result Comments
Verify link up/down NIC installed, cable Plug/unplug cable Link status changes  
Check MAC address NIC initialized Read MAC address $net iface MAC matches expected  
Change MAC address through net shell NIC initialized $net iface down $ net iface set_mac <11:22:33:44:55:66> $net iface up 1 $net iface MAC matches expected as per user entry  
Change MAC address through dt entry NIC initialized 1) open the dts file of the platform and look for ethernet node. 2) configure "local-mac-address" field the ethernet dt node  e.g local-mac-address = [aa 14 04 85 11 22]; 3) confirm the mac address $net iface MAC matches expected as per dt entry  
Change MAC address through dt random NIC initialized 1) open the dts file of the platform and look for ethernet node. 2) add the "zephyr,random-mac-address" in the ethernet dt node. 3) confirm the mac address $net iface MAC generated randomly and work.  
Transmit UDP packet 1) Zephyr dut up and running with valid ip. 2) Linux link partner up and running with valid ip. 1) In Linux (# tcpdump -Q in -vvXXi <interface_name>) 2) In Zephyr ($net udp send 192.0.2.2 4243 Hello_World) Zephyr can able to send the message and Linux should receive the udp message.  
Transmit TCP packet 1) Zephyr dut up and running with valid ip. 2) Linux link partner up and running with valid ip. 1) In Linux (# tcpdump -Q in -vvXXi <interface_name>) 2) In Zephyr ($net tcp connect 192.0.2.2 4243) 3) In Zephyr ($net tcp send Hello_World) Zephyr can able to send the message and Linux should receive the message tcp along.  
Receive UDP Packet 1) Zephyr dut up and running with valid ip. 2) Linux link partner up and running with valid ip. 1) In Zephyr (net udp bind 192.0.2.1 4243) 2) In Linux (# echo "Hello_world" | nc -u 192.0.2.1 4243)    
Receive TCP Packet 1) Zephyr dut up and running with valid ip. 2) Linux link partner up and running with valid ip. 1) In Zephyr ($net tcp connect 192.0.2.2 4243) 2) In Linux ($nc -l -p 4243 Hello_world)    
Speed: 10Mbps, Duplex: Full, Auto-negotiation: ON        
Speed: 100Mbps, Duplex: Full, Auto-negotiation: ON        
Speed: 100Mbps, Duplex: Half, Auto-negotiation: ON        
Speed: 1000Mbps, Duplex: Full, Auto-negotiation: ON        
Speed: 10Mbps, Duplex: Half, Auto-negotiation: ON        
MTU size: 256        
MTU size: 512        
MTU size: 1024        
MDIO Clause - 22/45 Support        
Throughput KPI for UDP upload (100 Mbps)        
Throughput KPI for UDP download (100 Mbps)        
Latency KPI: 100 Mbps, 500 us packet interval, 1500 bytes packet size        
Latency KPI: 100 Mbps, 500 us packet interval, 500 bytes packet size        
Throughput KPI for UDP upload (1000 Mbps)        
Throughput KPI for UDP download (1000 Mbps)        
Latency KPI: 1000 Mbps, 125 us packet interval, 200 bytes packet size        
Clone this wiki locally