1 首先可以在系统中获取当前有哪些USB总线
root@firefly:~# dmesg | grep bus
[ 5.295376] vbus5v0_typec_pwr_en: supplied by vcc5v0_usb
[ 5.853305] dwhdmi-rockchip fde80000.hdmi: registered ddc I2C bus driver
[ 6.116567] ehci-platform fc800000.usb: new USB bus registered, assigned bus number 1
[ 6.132014] ehci-platform fc880000.usb: new USB bus registered, assigned bus number 2
[ 6.147054] ohci-platform fc840000.usb: new USB bus registered, assigned bus number 3
[ 6.207013] ohci-platform fc8c0000.usb: new USB bus registered, assigned bus number 4
[ 6.267613] xhci-hcd xhci-hcd.4.auto: new USB bus registered, assigned bus number 5
[ 6.268976] xhci-hcd xhci-hcd.4.auto: new USB bus registered, assigned bus number 6
[ 6.408728] [HXTP][ERROR] himax_bus_read: i2c_read_block retry over 3
[ 6.807397] dwhdmi-rockchip fde80000.hdmi: registered ddc I2C bus driver
[ 7.145073] dw-mipi-dsi2 fde20000.dsi: [drm:cri_fifos_wait_avail] *ERROR* command interface is busy
从上面日志可以看出来当前有6条usb bus
- bus 1 与bus 2 为 2.0
- bus 3 与bus 4 为 1.0
- bus 5 与bus 6 为 3.0
2 插入USB设备
会发现类似如下日志,表示设备5,使用2.0总线,且总线是bus2
usb 2-1.2: new low-speed USB device number 5 using ehci-platform
3 最后还可以通过lsusb看到每条总线的挂载情况
root@firefly:~# lsusb -t
/: Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M
/: Bus 05.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ohci-platform/1p, 12M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 1: Dev 3, If 1, Class=Wireless, Driver=btusb, 480M
|__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=rtl8821cu, 480M
|__ Port 1: Dev 3, If 0, Class=Wireless, Driver=btusb, 480M
|__ Port 2: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-platform/1p, 480M