![为什么此 USB 设备不自动挂起?](https://linux22.com/image/102288/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%AD%A4%20USB%20%E8%AE%BE%E5%A4%87%E4%B8%8D%E8%87%AA%E5%8A%A8%E6%8C%82%E8%B5%B7%EF%BC%9F.png)
运行powertop
并切换到“设备统计信息”,我看到“USB 设备:usb-device-8087-0a2a”的使用率为 100%,这意味着没有自动挂起。
谷歌搜索这个 ID 告诉我这是一个蓝牙设备。或者在 sysfs 中查找。
$ cd /sys/bus/usb/devices/1-1.3 # i don't know the logic to this
$ cat idVendor
8087
$ cat idProduct
0a2a
$ readlink driver */driver
../../../../../../bus/usb/drivers/usb
../../../../../../../bus/usb/drivers/btusb
../../../../../../../bus/usb/drivers/btusb
驱动程序支持自动挂起。但是,包含 btusb 端点的设备被视为已使用。
$ cd power
$ cat level
auto
$ cat autosuspend
2
$ cat runtime_active_kids
0
$ cat runtime_usage
1
尽管我没有活动的蓝牙插座,但还是如此
$ netstat -a
...
Active Bluetooth connections (servers and established)
Proto Destination Source State PSM DCID SCID IMTU OMTU Security
Proto Destination Source State Channel
答案1
$ sudo lsof +D /dev/bus/usb
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
fwupd 2186 root 28u CHR 189,2 0t0 11356 /dev/bus/usb/001/003
USB 设备被 fwupd 保持打开状态。这个缺陷应该被修复在下一个发布的版本中。