Re: add NO_REPORT_LUNS quirk for at least a few Seagate external drives to fix smartctl with uas

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

 



Le mercredi 12 juin 2024 à 17:13 +0200, Alban Browaeys a écrit :
> Le mercredi 12 juin 2024 à 03:39 +0200, Alban Browaeys a écrit :
> > Le mardi 11 juin 2024 à 10:21 +0200, Oliver Neukum a écrit :
> > > 
> > > 
> > > On 10.06.24 21:25, Alban Browaeys wrote:
> > > > I found that for "smartctl" to work on my two Seagate Expansion
> > > > external USB3  I had to add the "j" usb-storage quirks ie
> > > > "US_FL_NO_REPORT_LUNS".
> > > > (They are years apart).
> > > 
> > > Hi,
> > > 
> > > does the attached patch do the job?
> > > 
> > > 	Regards
> > > 		Oliver
> > 
> > No, it does not work.
> > smartctl is still broken with the US_FL_NO_REPORT_LUNS in
> > drivers/usb/storage/unusual_uas.h.
> > 
> > But if I add back the "j" usb.quirks flag back with:
> > echo -n "0x0bc2:0x2037:j" | sudo tee 
> > /sys/module/usb_storage/parameters/quirks
> > and then:
> > echo -n "2-2:1.0" | sudo tee /sys/bus/usb/drivers/uas/unbind
> > echo -n "2-2:1.0" | sudo tee /sys/bus/usb/drivers/uas/bind
> > then smartctl works.
> > 
> > I tested on tw kernels with the two different seagate drives.
> > 
> > sudo grep Seagate /sys/devices/ -r |& grep Seagate
> > /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/manufacturer:Seagate
> > /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/2-
> > 2:1.0/host8/target8:0:0/8:0:0:0/vendor:Seagate
> > 
> > head /sys/devices/pci0000\:00/0000\:00\:14.0/usb2/2-2/quirks 
> > 0x0
> > 
> >  
> > 
> > 
> > lrwxrwxrwx 1 root root  9 12 juin  03:14 usb-
> > Seagate_Expansion_HDD_00000000NACSHZWL-0:0 -> ../../sdc
> > lrwxrwxrwx 1 root root 10 12 juin  03:14 usb-
> > Seagate_Expansion_HDD_00000000NACSHZWL-0:0-part1 -> ../../sdc1
> > 
> > sudo smartctl -i /dev/sdc
> > smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.10.0-rc3+] (local
> > build)
> > Copyright (C) 2002-23, Bruce Allen, Christian Franke,
> > www.smartmontools.org
> > 
> > Read Device Identity failed: scsi error unsupported field in scsi
> > command
> > 
> > If this is a USB connected device, look at the various --
> > device=TYPE
> > variants
> > A mandatory SMART command failed: exiting. To continue, add one or
> > more '-T permissive' options.
> > 
> > 
> > lsusb -t
> > /:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/12p,
> > 480M
> >     |__ Port 001: Dev 002, If 0, Class=Vendor Specific Class,
> > Driver=[none], 12M
> >     |__ Port 001: Dev 002, If 1, Class=Audio, Driver=[none], 12M
> >     |__ Port 001: Dev 002, If 2, Class=Audio, Driver=[none], 12M
> >     |__ Port 005: Dev 003, If 0, Class=Hub, Driver=hub/4p, 480M
> >         |__ Port 002: Dev 005, If 0, Class=Vendor Specific Class,
> > Driver=cp210x, 12M
> >         |__ Port 003: Dev 008, If 0, Class=Wireless, Driver=btusb,
> > 12M
> >         |__ Port 003: Dev 008, If 1, Class=Wireless, Driver=btusb,
> > 12M
> >     |__ Port 009: Dev 004, If 0, Class=Hub, Driver=hub/4p, 480M
> >         |__ Port 003: Dev 009, If 0, Class=Human Interface Device,
> > Driver=usbhid, 1.5M
> >         |__ Port 003: Dev 009, If 1, Class=Human Interface Device,
> > Driver=usbhid, 1.5M
> >         |__ Port 004: Dev 010, If 0, Class=Human Interface Device,
> > Driver=usbhid, 1.5M
> >         |__ Port 004: Dev 010, If 1, Class=Human Interface Device,
> > Driver=usbhid, 1.5M
> > /:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/6p,
> > 5000M
> >     |__ Port 002: Dev 002, If 0, Class=Mass Storage, Driver=uas,
> > 5000M
> >     |__ Port 003: Dev 003, If 0, Class=Mass Storage, Driver=usb-
> > storage, 5000M
> >     |__ Port 005: Dev 004, If 0, Class=Hub, Driver=hub/4p, 5000M
> >     |__ Port 006: Dev 005, If 0, Class=Mass Storage, Driver=usb-
> > storage, 5000M
> > 
> > with the "j" usb.quirks flag:
> > sudo smartctl -i /dev/sdc
> > smartctl 7.4 2023-08-01 r5530 [x86_64-linux-6.10.0-rc3+] (local
> > build)
> > Copyright (C) 2002-23, Bruce Allen, Christian Franke,
> > www.smartmontools.org
> > 
> > === START OF INFORMATION SECTION ===
> > Model Family:     Seagate Barracuda 2.5 5400
> > Device Model:     ST4000LM024-2AN17V
> > Serial Number:    WCKAEWZZ
> > LU WWN Device Id: 5 000c50 0e732b6d8
> > Firmware Version: 0001
> > User Capacity:    4 000 787 030 016 bytes [4,00 TB]
> > Sector Sizes:     512 bytes logical, 4096 bytes physical
> > Rotation Rate:    5526 rpm
> > Form Factor:      2.5 inches
> > Device is:        In smartctl database 7.3/5528
> > ATA Version is:   ACS-3 T13/2161-D revision 5
> > SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
> > Local Time is:    Wed Jun 12 03:30:47 2024 CEST
> > SMART support is: Available - device has SMART capability.
> > SMART support is: Enabled
> > 
> > 
> 
> 
> 
> Your patch had:
> +UNUSUAL_DEV(0x0bc2, 0x2037, 0x0000, 0x9999,
> +		"Seagate",
> +		"RSS LLC Expansion HDD",
> +		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> +		US_FL_NO_REPORT_LUNS),
> +
> +/* Reported-by: Alban Browaeys <alban.browaeys@xxxxxxxxx> */
> +UNUSUAL_DEV(0x0bc2, 0x231a, 0x0000, 0x9999,
> +		"Seagate",
> +		"RSS LLC Expansion Portable",
> +		USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> +		US_FL_NO_REPORT_LUNS),
> +
> 
> but:
> head /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/manufacturer
> Seagate
> 
> head /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/product
> Expansion HDD
> 
> head /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/id*
> ==> /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/idProduct <==
> 2037
> 
> ==> /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/idVendor <==
> 0bc2
> head /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/quirks
> 0x0
> 
> 
> 
> and:
> 
> head /sys/devices/platform/usb@fe900000/fe900000.usb/xhci-
> hcd.0.auto/usb2/2-1/2-1.2/2-1.2.1/2-1.2.1.4/manufacturer
> Seagate
> head /sys/devices/platform/usb@fe900000/fe900000.usb/xhci-
> hcd.0.auto/usb2/2-1/2-1.2/2-1.2.1/2-1.2.1.4/product
> Expansion
> head /sys/devices/platform/usb@fe900000/fe900000.usb/xhci-
> hcd.0.auto/usb2/2-1/2-1.2/2-1.2.1/2-1.2.1.4/id*
> ==> /sys/devices/platform/usb@fe900000/fe900000.usb/xhci-
> hcd.0.auto/usb2/2-1/2-1.2/2-1.2.1/2-1.2.1.4/idProduct <==
> 231a
> 
> ==> /sys/devices/platform/usb@fe900000/fe900000.usb/xhci-
> hcd.0.auto/usb2/2-1/2-1.2/2-1.2.1/2-1.2.1.4/idVendor <==
> 0bc2
> 
> 
> I replace the product name with the one from sysfs in your patch but
> the patch still does not work.
> +UNUSUAL_DEV(0x0bc2, 0x2037, 0x0000, 0x9999,
> +               "Seagate",
> +               "Expansion HDD",
> +               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> +               US_FL_NO_REPORT_LUNS),
> 
> +UNUSUAL_DEV(0x0bc2, 0x231a, 0x0000, 0x9999,
> +               "Seagate",
> +               "Expansion",
> +               USB_SC_DEVICE, USB_PR_DEVICE, NULL,
> +               US_FL_NO_REPORT_LUNS),
> 
> 
> 
> How could I see if the quirk is applied?
> Does sysfs:
> head /sys/devices/pci0000:00/0000:00:14.0/usb2/2-2/quirks
> 0x0
> tells it was not?
> 
> 
> On the 0x2037 box:
> lsusb -t
> /:  Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/12p,
> 480M
>     |__ Port 001: Dev 002, If 0, Class=Vendor Specific Class,
> Driver=[none], 12M
>     |__ Port 001: Dev 002, If 1, Class=Audio, Driver=[none], 12M
>     |__ Port 001: Dev 002, If 2, Class=Audio, Driver=[none], 12M
>     |__ Port 005: Dev 003, If 0, Class=Hub, Driver=hub/4p, 480M
>         |__ Port 002: Dev 005, If 0, Class=Vendor Specific Class,
> Driver=cp210x, 12M
>         |__ Port 003: Dev 008, If 0, Class=Wireless, Driver=btusb,
> 12M
>         |__ Port 003: Dev 008, If 1, Class=Wireless, Driver=btusb,
> 12M
>     |__ Port 009: Dev 004, If 0, Class=Hub, Driver=hub/4p, 480M
>         |__ Port 003: Dev 009, If 0, Class=Human Interface Device,
> Driver=usbhid, 1.5M
>         |__ Port 003: Dev 009, If 1, Class=Human Interface Device,
> Driver=usbhid, 1.5M
>         |__ Port 004: Dev 010, If 0, Class=Human Interface Device,
> Driver=usbhid, 1.5M
>         |__ Port 004: Dev 010, If 1, Class=Human Interface Device,
> Driver=usbhid, 1.5M
> /:  Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/6p,
> 5000M
>     |__ Port 002: Dev 002, If 0, Class=Mass Storage, Driver=uas,
> 5000M
>     |__ Port 003: Dev 003, If 0, Class=Mass Storage, Driver=usb-
> storage, 5000M
>     |__ Port 005: Dev 004, If 0, Class=Hub, Driver=hub/4p, 5000M
>     |__ Port 006: Dev 005, If 0, Class=Mass Storage, Driver=usb-
> storage, 5000M
> 
> 
> lsusb
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 001 Device 002: ID 046d:08ae Logitech, Inc. QuickCam for
> Notebooks
> Bus 001 Device 003: ID 05e3:0610 Genesys Logic, Inc. Hub
> Bus 001 Device 004: ID 05e3:0610 Genesys Logic, Inc. Hub
> Bus 001 Device 005: ID 10c4:ea60 Silicon Labs CP210x UART Bridge
> Bus 001 Device 008: ID 0a12:0001 Cambridge Silicon Radio, Ltd
> Bluetooth Dongle (HCI mode)
> Bus 001 Device 009: ID 17ef:608c Lenovo Lenovo Calliope USB Keyboard
> Bus 001 Device 010: ID 046d:c517 Logitech, Inc. LX710 Cordless
> Desktop Laser
> Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
> Bus 002 Device 002: ID 0bc2:2037 Seagate RSS LLC Expansion HDD
> Bus 002 Device 003: ID 1058:1078 Western Digital Technologies, Inc.
> Elements Portable (WDBUZG)
> Bus 002 Device 004: ID 05e3:0626 Genesys Logic, Inc. Hub
> Bus 002 Device 005: ID 08e4:017a Pioneer Corp. BD-XD07 BD/DVD/CD
> Writer
> 
> 
> 
> Mind I have not test the 0x231a device on 6.9 branch yet as the
> kernel
> build with the patch change is till building. I only tested the
> 0x2037
> one on 6.10.0-rc3.
> 
> 
> 
> Regards,
> Alban
> 

Note: Should I add Hans de Goede to the recipients, or only when the
patch is ready?



I read the code but I cannot find where the flags are applied in the
uas driver (drivers/usb/storage/uas.c).

In usb-storage the flow is:
storage_probe drivers/usb/storage/usb.c
> uas_use_uas_driver if true exit
> usb_stor_probe1
	> get_device_info
		> usb_stor_adjust_quirks
			> usb-storage.quirks applied

but for my uas diver when usb-storage driver probe it exits in
storage_probe before usb_stor_probe1 because uas_use_uas is true.


When uas probe:
uas_init drivers/usb/storage/uas.c
> usb_register
	> usb_device_match+0x43/0xa0
		> usb_match_id+0x70/0xb0
			> usb_match_device+0x13a/0x210
				usb_match_device: SUCCESS id_table idVendor 0xbc2 idProduct 0x2037 driver_info 0x10000000 devive id vendor 0xbc2 device id product 0x2037
but then I see no code to apply the flag US_FL_NO_REPORT_LUNS.
Could you help me find it?

I don't understand how the usb-storage.quirks "j" flag could help if
the uas has no code to apply the flag.



I alos see in the code that I was supposed to add more info:

for 0x0bc2 0x2037:
- /sys/kernel/debug/usb/devices
T:  Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=5000 MxCh= 0
D:  Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
P:  Vendor=0bc2 ProdID=2037 Rev=19.01
S:  Manufacturer=Seagate
S:  Product=Expansion HDD
S:  SerialNumber=00000000NACSHZWL
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=896mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=uas
E:  Ad=81(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
I:* If#= 0 Alt= 1 #EPs= 4 Cls=08(stor.) Sub=06 Prot=62 Driver=uas
E:  Ad=01(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms

- lsusb -v
Bus 002 Device 002: ID 0bc2:2037 Seagate RSS LLC Expansion HDD
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.20
  bDeviceClass            0 [unknown]
  bDeviceSubClass         0 [unknown]
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x0bc2 Seagate RSS LLC
  idProduct          0x2037 Expansion HDD
  bcdDevice           19.01
  iManufacturer           1 Seagate
  iProduct                2 Expansion HDD
  iSerial                 3 00000000NACSHZWL
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0079
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              896mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           4
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     98 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        Command pipe (0x01)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        MaxStreams             32
        Status pipe (0x02)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        Data-in pipe (0x03)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               7
        MaxStreams             32
        Data-out pipe (0x04)
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000f0e
      BESL Link Power Management (LPM) Supported
    BESL value     3840 us 
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   1
      Lowest fully-functional device speed is Full Speed (12Mbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat          32 micro seconds
Device Status:     0x000c
  (Bus Powered)
  U1 Enabled
  U2 Enabled


for 0x0bc2 0x231a
- /sys/kernel/debug/usb/devices
T:  Bus=02 Lev=04 Prnt=05 Port=03 Cnt=02 Dev#=  8 Spd=5000 MxCh= 0
D:  Ver= 3.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
P:  Vendor=0bc2 ProdID=231a Rev= 7.10
S:  Manufacturer=Seagate
S:  Product=Expansion
S:  SerialNumber=NAADEE3G
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=896mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=uas
E:  Ad=81(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
I:* If#= 0 Alt= 1 #EPs= 4 Cls=08(stor.) Sub=06 Prot=62 Driver=uas
E:  Ad=01(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=83(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms


- lsusb -v
Bus 002 Device 008: ID 0bc2:231a Seagate RSS LLC Expansion Portable
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x0bc2 Seagate RSS LLC
  idProduct          0x231a Expansion Portable
  bcdDevice            7.10
  iManufacturer           1 Seagate
  iProduct                2 Expansion
  iSerial                 3 NAADEE3G
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0079
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              896mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           4
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     98 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        Command pipe (0x01)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        MaxStreams             32
        Status pipe (0x02)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        Data-in pipe (0x03)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               7
        MaxStreams             32
        Data-out pipe (0x04)
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000f0e
      BESL Link Power Management (LPM) Supported
    BESL value     3840 us 
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   1
      Lowest fully-functional device speed is Full Speed (12Mbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat          32 micro seconds
Device Status:     0x0000
  (Bus Powered)



Cheers,
Alban





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

  Powered by Linux