如何在 Ubuntu 主机中选择性挂起配置后恢复 USB 设备

如何在 Ubuntu 主机中选择性挂起配置后恢复 USB 设备

我有一个基于 Linux 的开发板,上面有 DWC3 USB 控制器驱动程序。我已经在 USB 驱动程序中实现了链路电源管理(L2 状态)。 Ubuntu是我的开发板通过USB连接的主机。

我需要使用 shell 脚本执行 USB 挂起/恢复的回归测试。我已经设法写了其中的一部分,

**usb suspend-resume.sh**

path=1-10
echo auto > /sys/bus/usb/drivers/usb/$path/power/control 
echo 10 > /sys/bus/usb/drivers/usb/$path/power/autosuspend

sleep 10

iteration="10"
count="0"

while [ $count -lt $iteration ]
do
    rs=$(cat /sys/bus/usb/drivers/usb/$path/power/runtime_status)

    if [ "$rs" = "suspended" ]  
    then    
        echo usb is suspended
        sleep 5     
        count=$((count+1))
    fi
done

Ubuntu 14.04 上的设备: /dev/ttyACM0 /dev/ttyACM1 /dev/ttyACM2 /dev/ttyACM3

上面的脚本只能执行暂停(每 10 秒),但我无法继续如何恢复设备。

答案1

恢复暂停的设备

echo on > /sys/bus/usb/devices/$path/power/control

这应该激活挂起的设备。您可以使用以下命令检查设备的状态

cat /sys/bus/usb/devices/$path/power/runtime_status

相关内容