繁体   English   中英

如何检测 USB0 设备(USB gadget aka g_ether)的断开连接?

[英]How to detect disconnection of usb0 device (USB gadget aka g_ether)?

两台 Linux 机器(嵌入式板和 PC)通过 USB 电缆相互连接,并通过 USB 小工具/以太网建立通信。 双方都有IP地址,ping通等。

我需要找到一种方法来检测板侧的 USB 电缆断开,理想情况下使用单个 Bash 命令。

ifconfig usb0仍然显示 IP 地址,并且即使在拔下电缆后该设备仍处于“启动”和“运行”状态。

一种方法是检查文件:

/sys/class/net/usb0/operstate

如果文件内容“向上”,则链接存在。 如果内容“关闭”,则没有链接。

在我的特殊情况下,它原来是硬件 + 软件问题:驱动程序 (atmel_usba_udc) 正在使用 USB 电源 (VBUS) 来检测连接,因为它充当从机并且电源由主机提供。 然而,在 PCB 中,电路板本身无条件地为所有 USB 端口同时提供电源。

通常任何标准方法都可以工作:ifconfig 或 sysfs。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM