Skip to main content
This guide covers configuring, operating, and troubleshooting Ethernet connectivity on the Qualcomm Dragonwing IQ-9075 EVK. The platform supports interface enumeration, data path, link speed configuration, MAC address management, MTU configuration, and network diagnostics.

Prerequisites

  • IQ-9075 EVK hardware
  • Ethernet cable (RJ45)
  • Host PC on the same network as the IQ-9075 EVK
  • SSH client software
  • Basic Linux command-line knowledge

Architecture

ComponentDescription
Application Processor Subsystem (APSS)Runs on a Linux-based operating system
Ethernet driverLinux kernel driver providing data connectivity over a wired Ethernet interface
PHY driverLow-level driver managing the Ethernet physical layer; implements a state machine for PHY lifecycle from initialization to link establishment; interacts with MDIO to access PHY registers
Ethernet hardware1× QEP8081 PHY for 10/100/1000/2500 Mbps, enabled by RJ45 connector

Getting Started

Bring Up Ethernet

Establish access to the device via SSH over Wi-Fi or the serial prompt before proceeding. See the Set up the device section for instructions.
Flash the corresponding CDT on the device to ensure the correct configuration is used for Ethernet bring-up.
1

Configure MAC Address (optional)

The IQ-9075 EVK ships with a factory MAC address. Skip this step to use it as-is.To change the MAC address:
ip link set dev eth0 address XX:XX:XX:YY:YY:YY
This MAC address is valid only for the current boot cycle. After rebooting, the device reverts to the address from persistent storage.
2

Assign an IP Address

On a public network, the DHCP server assigns an IP address automatically. To assign a static IP address manually:
ip addr add 192.168.1.2 dev eth0
3

Configure MTU

ip link set dev eth0 down
ip link set dev eth0 mtu 1500
ip link set dev eth0 up
4

Verify Bring-Up

Confirm the following:
  • eth0 is visible in ip addr show output
  • Interface status shows UP BROADCAST RUNNING MULTICAST
  • IP address is correctly assigned
  • MTU is set to the desired value (typically 1500)
  • No errors in RX/TX packet counters

Ethernet Operations

Check Connectivity

Use ping to verify connectivity between the device and a remote host. The client IP address must be in the same subnet as the device.
ping 192.168.1.3

Configure NIC Settings

Use ethtool to view and configure NIC parameters such as speed, duplex, and auto-negotiation:
ethtool eth0
To view NIC packet statistics:
ethtool -S eth0

Configure Network Interface

Use ip addr add to assign a static IP address when DHCP based automatic IP assignamnet is unavailable:
ip addr add 192.168.1.2 dev eth0

Capture Network Traffic

Use tcpdump to intercept and analyze packets:
tcpdump -i any -s 0 -w /var/log/tcpdump.pcap

View Routing Table

ip r s
Set link speed from the supported modes shown in ethtool output:
ethtool -s eth0 autoneg on speed 1000 duplex full

Troubleshooting

Collect Diagnostic Logs

1

Collect dmesg logs

dmesg > /var/log/dmesg_logs.txt
Look for: driver initialization messages, PHY detection, link status changes, and errors.
2

Collect tcpdump logs

tcpdump -i any -s 0 -w /var/log/tcpdump.pcap
Press Ctrl+C to stop capture.
3

Pull log files to host PC

scp root@<device_ip>:/var/log/tcpdump.pcap .
scp root@<device_ip>:/var/log/dmesg_logs.txt .

Common Issues

Symptoms: Link detected but ping fails; “Destination Host Unreachable” or “Network is unreachable”.Steps:
# Verify IP configuration
ip addr show dev eth0

# Check routing table
ip route show

# Check ARP table
ip neigh show

# Capture ICMP traffic
tcpdump -i eth0 icmp
Solutions: Configure correct IP address and subnet mask; add default gateway if needed (route add default gw <gateway_ip>); verify firewall rules are not blocking ICMP.
Symptoms: High latency, slow file transfers, packet loss.Steps:
# Check link speed and duplex
ethtool eth0 | grep -E "Speed|Duplex"

# Check for errors
ethtool -S eth0 | grep -E "error|drop|collision"

# Check MTU
ip link show dev eth0 | grep mtu
Solutions: Force 1000 Mbps full-duplex if auto-negotiation fails; replace cable if errors are detected; adjust MTU for specific network requirements.
Symptoms: eth0 does not appear in ip a show output.Steps:
# Show all interfaces including down
ip a show 

# Check kernel logs
dmesg | grep -i ethernet
dmesg | grep -i emac
dmesg | grep -i "end0"

# Check device tree
ls /sys/class/net/
Solutions: Ensure correct CDT is flashed; verify Ethernet driver is compiled in kernel; check for hardware initialization errors in dmesg; reboot and check again.

Advanced Diagnostics

Filter Ethernet-related dmesg messages:
dmesg | grep -i 'eth|emac|phy|link'
Analyze tcpdump captures:
# Filter by protocol
tcpdump -r /var/log/tcpdump.pcap icmp
tcpdump -r /var/log/tcpdump.pcap tcp

# Filter by host
tcpdump -r /var/log/tcpdump.pcap host 192.168.1.10
For detailed analysis, open the .pcap file in Wireshark on your host PC. Monitor real-time hardware statistics:
watch -n 1 'ethtool -S eth0 | head -20'

Command Reference

CommandPurposeExample
dmesgView kernel messagesdmesg | grep eth
ethtool <if>Check link statusethtool end0
ethtool -S <if>View NIC statisticsethtool -S end0
ip addr showShow IP addressesip addr show end0
ip route showShow routing tableip route show
ping <host>Test connectivityping 192.168.1.10
tcpdump -i <if>Capture packetstcpdump -i end0
netstat -rShow routesnetstat -r
netstat -iShow interface statsnetstat -i

Resources