Hi folks,

I think I've found a bug in Barry 0.13-1.2 in detecting the 8100 (Pearl)
in Ubuntu 8.04 AMD64

After a fresh install of the Barry packages (non-debug), plugging in the
phone will let it charge, but running btool doesn't detect any devices.
If you then force the device into old mode with btool -o everything
works normally.

I'm not 100% sure what info would be useful, so I'll include what comes
to mind. If you need any additional info, the problem is easy for me to
duplicate.

Upon plugging in the device, the relevant parts of dmesg are:
        [  421.271105] usb 1-1: new full speed USB device using uhci_hcd
        and address 7
        [  421.284061] usb 1-1: config index 0 descriptor too short
        (expected 69, got 32)
        [  421.289444] usb 1-1: configuration #1 chosen from 1 choice
        [  421.292088] scsi6 : SCSI emulation for USB Mass Storage
        devices
        [  421.292605] usb-storage: device found at 7
        [  421.292610] usb-storage: waiting for device to settle before
        scanning
        [  421.360432] usb 1-1: usbfs: interface 0 claimed by
        usb-storage while 'bcharge' sets config #1
        [  421.423187] usb 1-1: USB disconnect, address 7
        [  421.448741] usb 1-1: new full speed USB device using uhci_hcd
        and address 8
        [  421.463603] usb 1-1: config 1 has 1 interface, different from
        the descriptor's value: 2
        [  421.463621] usb 1-1: config 1 interface 0 altsetting 0 has 2
        endpoint descriptors, different from the interface descriptor's
        value: 4
        [  421.468154] usb 1-1: configuration #1 chosen from 1 choice

and the relevant chunk from lsusb:

        Bus 001 Device 008: ID 0fca:0004 Research In Motion, Ltd. 
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               1.10
          bDeviceClass            0 (Defined at Interface level)
          bDeviceSubClass         0 
          bDeviceProtocol         0 
          bMaxPacketSize0        16
          idVendor           0x0fca Research In Motion, Ltd.
          idProduct          0x0004 
          bcdDevice            1.06
          iManufacturer           1 Research In Motion
          iProduct                5 RIM Composite Device
          iSerial                 3
        526C3DA3E90499A9B318DDC2556F675ADA14540A
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength           69
            bNumInterfaces          2
            bConfigurationValue     1
            iConfiguration          0 
            bmAttributes         0x80
              (Bus Powered)
            MaxPower              500mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           4
              bInterfaceClass       255 Vendor Specific Class
              bInterfaceSubClass      1 
              bInterfaceProtocol    255 
              iInterface              2 BlackBerry Device
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x02  EP 2 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 0
                bDescriptorType         0
                bEndpointAddress     0x00  EP 0 OUT
                bmAttributes            0
                  Transfer Type            Control
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0000  1x 0 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 0
                bDescriptorType         0
                bEndpointAddress     0x00  EP 0 OUT
                bmAttributes            0
                  Transfer Type            Control
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0000  1x 0 bytes
                bInterval               0
        Device Status:     0x0000
          (Bus Powered)

After this point, btool lists no devices found.
Running bcharge -o does:
        Scanning for Blackberry devices...
        Found device #008...already at 500mA...adjusting Pearl mode to
        single
        usb_reset failed: could not reset: No such device
        ...done

After that, btool works as expected.
dmesg lists the following new messages:
        [  468.074740] usb 1-1: USB disconnect, address 8
        [  468.115306] usb 1-1: new full speed USB device using uhci_hcd
        and address 9
        [  468.139860] usb 1-1: config index 0 descriptor too short
        (expected 69, got 46)
        [  468.143864] usb 1-1: configuration #1 chosen from 1 choice
        
and lsusb says:
        Bus 001 Device 009: ID 0fca:0001 Research In Motion, Ltd.
        Blackberry Handheld
        Device Descriptor:
          bLength                18
          bDescriptorType         1
          bcdUSB               1.10
          bDeviceClass          255 Vendor Specific Class
          bDeviceSubClass       255 Vendor Specific Subclass
          bDeviceProtocol       255 Vendor Specific Protocol
          bMaxPacketSize0        16
          idVendor           0x0fca Research In Motion, Ltd.
          idProduct          0x0001 Blackberry Handheld
          bcdDevice            1.06
          iManufacturer           1 Research In Motion
          iProduct                2 BlackBerry Device
          iSerial                 0 
          bNumConfigurations      1
          Configuration Descriptor:
            bLength                 9
            bDescriptorType         2
            wTotalLength           46
            bNumInterfaces          1
            bConfigurationValue     1
            iConfiguration          0 
            bmAttributes         0x80
              (Bus Powered)
            MaxPower              500mA
            Interface Descriptor:
              bLength                 9
              bDescriptorType         4
              bInterfaceNumber        0
              bAlternateSetting       0
              bNumEndpoints           4
              bInterfaceClass       255 Vendor Specific Class
              bInterfaceSubClass      1 
              bInterfaceProtocol    255 
              iInterface              2 BlackBerry Device
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x81  EP 1 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x02  EP 2 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x83  EP 3 IN
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
              Endpoint Descriptor:
                bLength                 7
                bDescriptorType         5
                bEndpointAddress     0x04  EP 4 OUT
                bmAttributes            2
                  Transfer Type            Bulk
                  Synch Type               None
                  Usage Type               Data
                wMaxPacketSize     0x0040  1x 64 bytes
                bInterval               0
        Device Status:     0x0000
          (Bus Powered)

Let me know if there's anything I can do to help with this, and thanks
to the devs for working on this project to begin with.

-Matt Bond


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Barry-devel mailing list
Barry-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/barry-devel

Reply via email to