I have a motherboard with Intel H97 chipset. The chipset supports maximum of eight USB 2.0 ports and maximum of six USB 3.0 ports. According to motherboard manual, it has two USB 2.0 ports and four USB 3.0 ports on the I/O panel and rest of the USB ports are available via connectors on the motherboard. Now regardless if I connect the USB devices to USB 2.0 or 3.0 ports on the rear I/O panel or to USB headers on the motherboard, then the devices always appear under root hub of bus #2
. Example where Mass Storage
type of device is connected to one of the USB ports on the motherboard I/O panel:
# lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
|__ Port 1: Dev 18, If 0, Class=Communications, Driver=cdc_ether, 480M
|__ Port 1: Dev 18, If 1, Class=CDC Data, Driver=cdc_ether, 480M
|__ Port 1: Dev 18, If 2, Class=Mass Storage, Driver=usb-storage, 480M
|__ Port 12: Dev 27, If 0, Class=Mass Storage, Driver=usb-storage, 480M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
#
However, what are the buses #1
, #3
and #4
? For bus #4
there seems to be a single Linux Foundation 3.0 root hub
type of device connected:
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
For buses #3
and #1
there seems to be a 8-port(8p
in the output of lsusb -t
) Intel USB 2.0 hub(8087:8001
) and 6-port Intel USB 3.0(8087:8009
) hub connected:
Bus 003 Device 002: ID 8087:8001 Intel Corp.
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8009 Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
I don't know if this is a coincidence, but the number of ports in Intel hub in bus #3
and in Intel hub in bus #1
add up to 14. This aligns with the chipset documentation and with the number of ports seen in the output of lsusb -t
for bus #2
.