在 Linux 上调试 LAN8670 的 MDIO(Management Data Input/Output) 通信时,可以结合 dmesg、lsusb、mdio-tool 以及 Wireshark 来排查问题。以下是具体的调试步骤:
1. 检查设备是否正确连接
首先,确保 EVB-LAN8670-USB 设备已正确连接到 Linux 系统,并且被识别。
1.1 使用 dmesg 查看设备日志
dmesg 可以查看内核检测到的 USB 设备:
bash
复制
编辑
dmesg | grep -i lan8670
示例输出:
yaml
复制
编辑
[ 1234.567890] usb 3-2: New USB device found, idVendor=0424, idProduct=2740, bcdDevice=1.00
[ 1234.567900] usb 3-2: LAN8670 MDIO bridge initialized
如果没有看到相关日志,可能是:
设备未正确连接
USB 端口或线缆问题
需要加载驱动
1.2 使用 lsusb 检查 USB 设备
bash
复制
编辑
lsusb | grep 0424
示例输出:
yaml
复制
编辑
Bus 003 Device 005: ID 0424:2740 Microchip Technology, Inc. LAN8670 MDIO Bridge
0424:2740 是 Microchip LAN8670 设备的 USB Vendor ID & Product ID。
如果没有列出设备,尝试重新插拔 USB 连接,或者检查 dmesg 是否有错误日志。
|