[BUG] xhci_hcd: no USB3 SuperSpeed on IvyBridge Macbook

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hardware: IvyBridge Macbook (Panther Point PCH), 2 external USB3 ports
Verified in kernels: 4.0.0+ (1fc1499), Debian 3.16.4

All USB3 devices appear as USB2 high-speed (480mbps) rather than USB3
super-speed (5000mbps).

usb1 and usb2 are the XHCI USB3 buses. usb3 and usb4 are the EHCI USB2 buses
(the EHCI buses are connected to laptop internal devices, not the external ports).

# lspci | grep USB
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)

dmesg, may be significant:
        "can't derive routing for PCI INT A"
        "PCI INT A: no GSI"

[    1.089819] xhci_hcd 0000:00:14.0: can't derive routing for PCI INT A
[    1.089825] xhci_hcd 0000:00:14.0: PCI INT A: no GSI
[    1.089858] xhci_hcd 0000:00:14.0: xHCI Host Controller
[    1.089910] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 1
[    1.090011] xhci_hcd 0000:00:14.0: hcc params 0x20007181 hci version 0x100 quirks 0x0000b930
[    1.090025] xhci_hcd 0000:00:14.0: cache line size of 256 is not supported
[    1.090151] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    1.090156] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.090162] usb usb1: Product: xHCI Host Controller
[    1.090165] usb usb1: Manufacturer: Linux 4.0.0+ xhci-hcd
[    1.090169] usb usb1: SerialNumber: 0000:00:14.0
[    1.090291] hub 1-0:1.0: USB hub found
[    1.090315] hub 1-0:1.0: 4 ports detected
[    1.090524] xhci_hcd 0000:00:14.0: xHCI Host Controller
[    1.090561] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 2
[    1.090663] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003
[    1.090667] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    1.090672] usb usb2: Product: xHCI Host Controller
[    1.090676] usb usb2: Manufacturer: Linux 4.0.0+ xhci-hcd
[    1.090679] usb usb2: SerialNumber: 0000:00:14.0
[    1.090789] hub 2-0:1.0: USB hub found
[    1.090808] hub 2-0:1.0: 4 ports detected

Why is usb1 reported as a 480mbit 2.0 root hub?
Why are no devices connected to the 5000M usb2 bus?

# cat /sys/bus/usb/devices/usb1/speed 
480
# cat /sys/bus/usb/devices/usb1/idProduct 
0002
# cat /sys/bus/usb/devices/usb2/speed 
5000
# cat /sys/bus/usb/devices/usb2/idProduct 
0003

# lsusb | grep 'Device 001'
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

With USB3 config:
       USB3 port -> USB3 ethernet
       USB3 port -> USB3 hub -> USB3 flash drive
                             -> USB3 hard drive

All USB3 devices appear on bus1 as 480mbps:

# lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
        |__ Port 8: Dev 3, If 0, Class=Hub, Driver=hub/2p, 480M
            |__ Port 1: Dev 4, If 0, Class=Hub, Driver=hub/3p, 12M
                |__ Port 1: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 12M
                |__ Port 2: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 12M
                |__ Port 3: Dev 8, If 0, Class=Vendor Specific Class, Driver=, 12M
                |__ Port 3: Dev 8, If 1, Class=Wireless, Driver=, 12M
                |__ Port 3: Dev 8, If 2, Class=Vendor Specific Class, Driver=, 12M
                |__ Port 3: Dev 8, If 3, Class=Application Specific Interface, Driver=, 12M
            |__ Port 2: Dev 5, If 0, Class=Human Interface Device, Driver=usbhid, 12M
            |__ Port 2: Dev 5, If 1, Class=Human Interface Device, Driver=usbhid, 12M
            |__ Port 2: Dev 5, If 2, Class=Human Interface Device, Driver=bcm5974, 12M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 1: Dev 3, If 0, Class=Video, Driver=, 480M
        |__ Port 1: Dev 3, If 1, Class=Video, Driver=, 480M
        |__ Port 1: Dev 3, If 2, Class=Vendor Specific Class, Driver=, 480M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 1: Dev 13, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 15, If 0, Class=Vendor Specific Class, Driver=ax88179_178a, 480M
    |__ Port 3: Dev 3, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 16, If 0, Class=Mass Storage, Driver=usb-storage, 480M
        |__ Port 2: Dev 5, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 4: Dev 7, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 3: Dev 6, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 1: Dev 17, If 0, Class=Mass Storage, Driver=usb-storage, 480M
            |__ Port 2: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
            |__ Port 2: Dev 8, If 1, Class=Human Interface Device, Driver=usbhid, 1.5M

# lsusb
Bus 004 Device 005: ID 05ac:0259 Apple, Inc. 
Bus 004 Device 008: ID 05ac:828c Apple, Inc. 
Bus 004 Device 007: ID 05ac:820b Apple, Inc. Bluetooth HID Mouse
Bus 004 Device 006: ID 05ac:820a Apple, Inc. Bluetooth HID Keyboard
Bus 004 Device 004: ID 0a5c:4500 Broadcom Corp. BCM2046B1 USB 2.0 Hub (part of BCM2046 Bluetooth)
Bus 004 Device 003: ID 0424:2512 Standard Microsystems Corp. USB 2.0 Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 05ac:8510 Apple, Inc. FaceTime HD Camera (Built-in)
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 008: ID 045e:00db Microsoft Corp. Natural Ergonomic Keyboard 4000 V1.0
Bus 001 Device 017: ID 0781:5580 SanDisk Corp. SDCZ80 Flash Drive
Bus 001 Device 006: ID 2109:2812  
Bus 001 Device 007: ID 046d:c401 Logitech, Inc. TrackMan Marble Wheel
Bus 001 Device 005: ID 2109:2812  
Bus 001 Device 016: ID 04e8:61b5 Samsung Electronics Co., Ltd 
Bus 001 Device 003: ID 2109:2812  
Bus 001 Device 015: ID 0b95:1790 ASIX Electronics Corp. 
Bus 001 Device 013: ID 2109:2811  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

dmesg shows only "high-speed" devices, no "super-speed":

# dmesg | grep xhci | grep peed
[    1.446008] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[    1.786410] usb 1-3: new high-speed USB device number 3 using xhci_hcd
[    2.026872] usb 1-1.1: new high-speed USB device number 4 using xhci_hcd
[    2.254112] usb 1-3.2: new high-speed USB device number 5 using xhci_hcd
[    2.437378] usb 1-3.3: new high-speed USB device number 6 using xhci_hcd
[    2.637701] usb 1-3.2.4: new low-speed USB device number 7 using xhci_hcd
[    2.822792] usb 1-3.3.2: new low-speed USB device number 8 using xhci_hcd
[  656.295545] usb 1-3.1: new high-speed USB device number 9 using xhci_hcd
[  674.388685] usb 1-3.1: reset high-speed USB device number 9 using xhci_hcd
[  970.250764] usb 1-3.1: new high-speed USB device number 10 using xhci_hcd
[  970.412145] usb 1-3.1: reset high-speed USB device number 10 using xhci_hcd
[ 1744.250330] usb 1-3.1: new high-speed USB device number 11 using xhci_hcd
[ 1763.811090] usb 1-1: new high-speed USB device number 12 using xhci_hcd
[ 1912.785733] usb 1-1: new high-speed USB device number 13 using xhci_hcd
[ 1915.392976] usb 1-1.1: new high-speed USB device number 15 using xhci_hcd
[ 3868.389287] usb 1-3.1: new high-speed USB device number 16 using xhci_hcd
[ 3870.952071] usb 1-3.3.1: new high-speed USB device number 17 using xhci_hcd

Booting with nothing plugged in to the USB3 ports and then plugging in a single
Sandisk Extreme USB3 flash drive shows the same behaviour, no "super-speed".
The drive is capable of SuperSpeed:

# lsusb -v -d 0781:5580 | grep peed
  SuperSpeed USB Device Capability:
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
      Lowest fully-functional device speed is Full Speed (12Mbps)
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux