Re: xhci usb issues with Etron Technology, Inc. EJ168 USB 3.0 Host Controller

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

 



Hello Alan,

>> Just wanted to check if you have any suggestions on how to go about
>> debugging this issue.
>
> Nothing that I haven't mentioned previously.

Thank you for your thoughts. I could not get a logic analyzer to
figure out the signals on the lines. But, I could log the usb
interrupts from the device though.

> You should note that when a device is attached to a USB-2 or USB-1.1
> port, the computer does the following:
>
>         Port reset
>
>         Send a 64-byte Get-Device-Descriptor request to address 0 (the
>         device will return only the first 8, 16, or 18 bytes of the
>         descriptor, depending on the maxpacket size for ep0)
>
>         Port reset
>
>         Send a Set-Address request
>
>         Send an 18-byte Get-Device-Descriptor request
>
> By contrast, when a device is attached to a USB-3 port, the computer
> does the following:
>
>         Port reset
>
>         Send a Set-Address request
>
>         Send an 8-byte Get-Device-Descriptor request
>
>         Send an 18-byte Get-Device-Descriptor request
>
> It's possible that your device works with the first event sequence and
> not the second.  What happens if you do:
>
>         echo 1 >/sys/module/usbcore/parameters/old_scheme_first
>
> before plugging the device into a USB-2/1.1 port?  This will cause the
> system to use the second procedure above instead of the first.

Attached is the output when I have the old_scheme_first parameter set
to 1/Y. The device is recognized fine with a non-usb 3.0 port.

When I log from the device, I see just the Port reset. I do not see
the Set-Address request (or, any other txn coming through) coming
through to the device.

Thanks again for your thoughts. If you can think of something else to
check, please let me know.

Sorry for the bother,
Joe
smart_sudo
Password:
master# echo 1 >/sys/module/usbcore/parameters/old_scheme_first
master# cat /sys/module/usbcore/parameters/old_scheme_first
Y
master# exit
- (0:i:~)  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
smart_sudo tail -f /var/log/syslog
Sep  7 19:59:37 master kernel: [   22.960313] usbhid 1-1.3:1.2: usb_probe_interface
Sep  7 19:59:37 master kernel: [   22.960316] usbhid 1-1.3:1.2: usb_probe_interface - got id
Sep  7 19:59:37 master kernel: [   22.962297] input: Razer BlackWidow Razer BlackWidow as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.2/input/input15
Sep  7 19:59:37 master kernel: [   22.962406] ehci-pci 0000:00:1a.0: reused qh ffff880220fd8880 schedule
Sep  7 19:59:37 master kernel: [   22.962410] usb 1-1.3: link qh8-0e01/ffff880220fd8880 start 5 [1/2 us]
Sep  7 19:59:37 master kernel: [   22.962776] hid-generic 0003:1532:010E.0005: input,hidraw2: USB HID v1.11 Mouse [Razer BlackWidow Razer BlackWidow] on usb-0000:00:1a.0-1.3/input2
Sep  7 19:59:40 master dhcpcd[686]: eth0: sending IPv6 Router Solicitation
Sep  7 19:59:42 master dhcpcd[686]: eth0: leased 192.168.0.11 for 3600 seconds
Sep  7 19:59:44 master dhcpcd[686]: eth0: sending IPv6 Router Solicitation
Sep  7 19:59:44 master dhcpcd[686]: eth0: no IPv6 Routers available
Sep  7 20:02:08 master kernel: [  173.816472] hub 1-1:1.0: state 7 ports 6 chg 0000 evt 0040
Sep  7 20:02:08 master kernel: [  173.827379] usb 1-1.6: usb wakeup-resume
Sep  7 20:02:08 master kernel: [  173.827493] usb 1-1.6: finish resume
Sep  7 20:02:08 master kernel: [  173.827960] hub 1-1.6:1.0: hub_resume
Sep  7 20:02:08 master kernel: [  173.828679] hub 1-1.6:1.0: port 2: status 0101 change 0001
Sep  7 20:02:08 master kernel: [  173.930457] ehci-pci 0000:00:1a.0: reused qh ffff880225ad2800 schedule
Sep  7 20:02:08 master kernel: [  173.930465] usb 1-1.6: link qh256-0001/ffff880225ad2800 start 4 [1/0 us]
Sep  7 20:02:08 master kernel: [  173.930474] hub 1-1:1.0: resume on port 6, status 0
Sep  7 20:02:08 master kernel: [  173.930479] hub 1-1.6:1.0: state 7 ports 4 chg 0004 evt 0000
Sep  7 20:02:08 master kernel: [  173.930768] hub 1-1.6:1.0: port 2, status 0101, change 0000, 12 Mb/s
Sep  7 20:02:08 master kernel: [  173.941871] hub 1-1.6:1.0: port 2 not reset yet, waiting 10ms
Sep  7 20:02:08 master kernel: [  174.003929] usb 1-1.6.2: new full-speed USB device number 6 using ehci-pci
Sep  7 20:02:08 master kernel: [  174.015809] usb 1-1.6.2: ep0 maxpacket = 8
Sep  7 20:02:08 master kernel: [  174.017843] usb 1-1.6.2: skipped 1 descriptor after interface
Sep  7 20:02:08 master kernel: [  174.018806] usb 1-1.6.2: skipped 1 descriptor after interface
Sep  7 20:02:08 master kernel: [  174.019807] usb 1-1.6.2: skipped 1 descriptor after interface
Sep  7 20:02:08 master kernel: [  174.020050] usb 1-1.6.2: default language 0x0409
Sep  7 20:02:08 master kernel: [  174.020932] usb 1-1.6.2: udev 6, busnum 1, minor = 5
Sep  7 20:02:08 master kernel: [  174.020935] usb 1-1.6.2: New USB device found, idVendor=03eb, idProduct=204d
Sep  7 20:02:08 master kernel: [  174.020937] usb 1-1.6.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Sep  7 20:02:08 master kernel: [  174.020939] usb 1-1.6.2: Product: USB keyboard+mouse
Sep  7 20:02:08 master kernel: [  174.020940] usb 1-1.6.2: Manufacturer: Sus
Sep  7 20:02:08 master kernel: [  174.021026] usb 1-1.6.2: usb_probe_device
Sep  7 20:02:08 master kernel: [  174.021030] usb 1-1.6.2: configuration #1 chosen from 3 choices
Sep  7 20:02:08 master kernel: [  174.021764] usb 1-1.6.2: adding 1-1.6.2:1.0 (config #1, interface 0)
Sep  7 20:02:08 master kernel: [  174.022067] usbhid 1-1.6.2:1.0: usb_probe_interface
Sep  7 20:02:08 master kernel: [  174.022070] usbhid 1-1.6.2:1.0: usb_probe_interface - got id
Sep  7 20:02:08 master kernel: [  174.023815] usb 1-1.6.2: link qh128-0e01/ffff880225823580 start 7 [2/1 us]
Sep  7 20:02:08 master kernel: [  174.023859] input: Sus USB keyboard+mouse as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.6/1-1.6.2/1-1.6.2:1.0/input/input16
Sep  7 20:02:08 master kernel: [  174.023871] usb 1-1.6.2: link qh128-0e01/ffff880225823680 start 8 [1/2 us]
Sep  7 20:02:08 master kernel: [  174.023948] hid-generic 0003:03EB:204D.0006: input,hidraw4: USB HID v1.11 Keyboard [Sus USB keyboard+mouse] on usb-0000:00:1a.0-1.6.2/input0
^C- (0:i:~)  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
lsusb -t
/:  Bus 07.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/:  Bus 06.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/:  Bus 05.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=uhci_hcd/2p, 12M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/4p, 480M
/:  Bus 02.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 6: Dev 3, 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
        |__ Port 3: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 3: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 4: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M
        |__ Port 6: Dev 5, If 0, Class=Hub, Driver=hub/4p, 480M
            |__ Port 2: Dev 6, If 0, Class=Human Interface Device, Driver=usbhid, 12M
- (0:i:~)  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
lsusb
Bus 002 Device 003: ID 0a48:3220 I/O Interconnect
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 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 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 007 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 006: ID 03eb:204d Atmel Corp. LUFA Combined Mouse and Keyboard Demo Application
Bus 001 Device 005: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
Bus 001 Device 004: ID 093a:2510 Pixart Imaging, Inc. Optical Mouse
Bus 001 Device 003: ID 1532:010e Razer USA, Ltd
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
- (0:i:~)  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -
lsusb -v -d 03eb:204d

Bus 001 Device 006: ID 03eb:204d Atmel Corp. LUFA Combined Mouse and Keyboard Demo Application
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x03eb Atmel Corp.
  idProduct          0x204d LUFA Combined Mouse and Keyboard Demo Application
  bcdDevice            1.01
  iManufacturer           1 Sus
  iProduct                2 USB keyboard+mouse
  iSerial                 0
  bNumConfigurations      3
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 First
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              5 First
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     111
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           41
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          4 First
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              5 First
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     111
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           57
    bNumInterfaces          2
    bConfigurationValue     2
    iConfiguration          6 Second
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              5 First
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.11
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     111
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              7 Second
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval             255
Device Status:     0x0000
  (Bus Powered)
- (0:c:~)  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -


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

  Powered by Linux