USB Quirks - how do I know what are applied?

John W jwdevel at gmail.com
Tue Nov 27 04:25:32 UTC 2012


Hi,

I recently upgraded from FreeBSD 7.4 to 9.0, and my camera does not
seem to be recognized when I plug it in over USB.

I made a thread here, with some details:
http://forums.freebsd.org/showthread.php?t=35997
I noticed some PRs relating to Sony CyberShot devices (linked in that
thread), and there is a patch, adding some quirks.

However, I have the patch (checked /usr/src), but I am not sure if
they are being applied to my device.

How do I know if quirks are being applied?

Here's the usbconfig output for the device:

# usbconfig -d 3.2 dump_device_desc dump_curr_config_desc
ugen3.2: <Sony DSC Sony> at usbus3, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON

  bLength = 0x0012
  bDescriptorType = 0x0001
  bcdUSB = 0x0200
  bDeviceClass = 0x0000
  bDeviceSubClass = 0x0000
  bDeviceProtocol = 0x0000
  bMaxPacketSize0 = 0x0040
  idVendor = 0x054c
  idProduct = 0x0010
  bcdDevice = 0x0500
  iManufacturer = 0x0001  <Sony>
  iProduct = 0x0002  <Sony DSC>
  iSerialNumber = 0x0000  <no string>
  bNumConfigurations = 0x0001


 Configuration index 0

    bLength = 0x0009
    bDescriptorType = 0x0002
    wTotalLength = 0x0027
    bNumInterfaces = 0x0001
    bConfigurationValue = 0x0001
    iConfiguration = 0x0000  <no string>
    bmAttributes = 0x00c0
    bMaxPower = 0x0001

    Interface 0
      bLength = 0x0009
      bDescriptorType = 0x0004
      bInterfaceNumber = 0x0000
      bAlternateSetting = 0x0000
      bNumEndpoints = 0x0003
      bInterfaceClass = 0x0008
      bInterfaceSubClass = 0x00ff
      bInterfaceProtocol = 0x0001
      iInterface = 0x0000  <no string>

     Endpoint 0
        bLength = 0x0007
        bDescriptorType = 0x0005
        bEndpointAddress = 0x0001  <OUT>
        bmAttributes = 0x0002  <BULK>
        wMaxPacketSize = 0x0200
        bInterval = 0x0000
        bRefresh = 0x0000
        bSynchAddress = 0x0000

     Endpoint 1
        bLength = 0x0007
        bDescriptorType = 0x0005
        bEndpointAddress = 0x0082  <IN>
        bmAttributes = 0x0002  <BULK>
        wMaxPacketSize = 0x0200
        bInterval = 0x0000
        bRefresh = 0x0000
        bSynchAddress = 0x0000

     Endpoint 2
        bLength = 0x0007
        bDescriptorType = 0x0005
        bEndpointAddress = 0x0083  <IN>
        bmAttributes = 0x0003  <INTERRUPT>
        wMaxPacketSize = 0x0008
        bInterval = 0x0010
        bRefresh = 0x0000
        bSynchAddress = 0x0000




I don't see any mention of quirks there. But I don't know exactly what
to look for.

Thanks
-John


More information about the freebsd-usb mailing list