All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Todd E. Johnson" <tejohnson@yahoo.com>
To: bluez-users@lists.sourceforge.net,
	linux-usb-users@lists.sourceforge.net, maxk@qualcomm.com
Subject: [Bluez-users] 2.6.2 errors with DBT-120 (B2)
Date: Mon, 16 Feb 2004 16:36:57 -0500	[thread overview]
Message-ID: <403137F9.1050108@yahoo.com> (raw)
In-Reply-To: <402F99AC.7020500@yahoo.com>

[-- Attachment #1: Type: text/plain, Size: 1880 bytes --]

Hi all,

I have been attempting to get SCO over HCI to work... I have a D-Link 
DBT-120 (B2).  When I startup hcid, I was getting the following error 
message:

hci_usb_isoc_rx_submit: hci0 isoc rx submit failed urb de96e614 err -90
hci_usb_isoc_rx_submit: hci0 isoc rx submit failed urb de96e614 err -90

It appears this occurs since the hci_usb driver is picking a bogus 
endpoint with a wMaxPacketSize = 0 when submitting the urb.

Attached are a few files for assistance:

hciconfig.txt                          'hciconfig -a'
lsusb.txt                                'lsusb -v'
hci_usb_sco_debug.log.gz     Debug logs from /var/log/messages
patch-2.6.2-tj1.gz                  a patch

The attached patch includes patch-2.4.24-mh2, a fix for the error, and a 
few minor fixes so the kernel can build when debugging is enabled...

This does not fix SCO support, It simply assists in getting an endpoint 
where wMaxPacketSize != 0.

Here is the critical part, or what eliminates -90:

<patch>

diff --unified --recursive --new-file linux-2.6.2/drivers/bluetooth/hci_usb.c linux-2.6.2-tj/drivers/bluetooth/hci_usb.c
--- linux-2.6.2/drivers/bluetooth/hci_usb.c	2004-02-03 22:44:43.000000000 -0500
+++ linux-2.6.2-tj/drivers/bluetooth/hci_usb.c	2004-02-16 13:15:11.000000000 -0500

@@ -833,7 +834,7 @@
 
 #ifdef CONFIG_BT_HCIUSB_SCO
 				case USB_ENDPOINT_XFER_ISOC:
-					if (ep->desc.wMaxPacketSize < size || a > 2)
+					if (ep->desc.wMaxPacketSize <= size)
 						break;
 					size = ep->desc.wMaxPacketSize;

</patch>

Now that the error is gone, SCO still is not working.  Since I enabled 
debugging with this patch, I was able to capture additional data to 
assist someone whom knows much more than I in fixing the SCO over HCI_USB.

If I'm completely clueless, please disregard, and sorry to waste your 
time! Thanks in advance!

        Regards,

        Todd E. Johnson

[-- Attachment #2: hciconfig.txt --]
[-- Type: text/plain, Size: 600 bytes --]

hci0:	Type: USB
	BD Address: 00:80:C8:1F:B0:1F ACL MTU: 192:8  SCO MTU: 64:8
	UP RUNNING PSCAN ISCAN 
	RX bytes:1942 acl:36 sco:0 events:62 errors:0
	TX bytes:889 acl:25 sco:0 commands:23 errors:0
	Features: 0xff 0xff 0x0f 0x00 0x00 0x00 0x00 0x00
	Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
	Link policy: HOLD SNIFF PARK 
	Link mode: SLAVE ACCEPT 
	Name: 'BlueZ (0)'
	Class: 0x700408
	Service Classes: Object Transfer, Audio, Telephony
	Device Class: Audio/Video, Hands-free
	HCI Ver: 1.1 (0x1) HCI Rev: 0x1bb LMP Ver: 1.1 (0x1) LMP Subver: 0x1bb
	Manufacturer: Cambridge Silicon Radio (10)


[-- Attachment #3: lsusb.txt --]
[-- Type: text/plain, Size: 11354 bytes --]


Bus 002 Device 002: ID 0a12:0001 Cambridge Silicon Radio Ltd. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          224 
  bDeviceSubClass         1 
  bDeviceProtocol         1 
  bMaxPacketSize0        64
  idVendor           0x0a12 Cambridge Silicon Radio Ltd.
  idProduct          0x0001 
  bcdDevice            4.43
  iManufacturer           0 
  iProduct                0 
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          193
    bNumInterfaces          3
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize         16
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               none
        wMaxPacketSize         64
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize          0
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize          0
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       1
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize          9
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize          9
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       2
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         17
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         17
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       3
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         25
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         25
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       4
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         33
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         33
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       5
      bNumEndpoints           2
      bInterfaceClass       224 
      bInterfaceSubClass      1 
      bInterfaceProtocol      1 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x03  EP 3 OUT
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         49
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            1
          Transfer Type            Isochronous
          Synch Type               none
        wMaxPacketSize         49
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass       254 
      bInterfaceSubClass      1 
      bInterfaceProtocol      0 
      iInterface              0 
  unknown descriptor type: 07 21 07 88 13 ff 03
  Language IDs: (length=4)
     0409 English(US)

Bus 002 Device 001: ID 0000:0000 Virtual Hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0000 Virtual
  idProduct          0x0000 Hub
  bcdDevice            2.06
  iManufacturer           3 Linux 2.6.2-mh2 ohci_hcd
  iProduct                2 OHCI Host Controller
  iSerial                 1 0000:00:01.3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x40
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          2
        bInterval             255
  Language IDs: (length=4)
     0409 English(US)

Bus 001 Device 001: ID 0000:0000 Virtual Hub
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            9 Hub
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0000 Virtual
  idProduct          0x0000 Hub
  bcdDevice            2.06
  iManufacturer           3 Linux 2.6.2-mh2 ohci_hcd
  iProduct                2 OHCI Host Controller
  iSerial                 1 0000:00:01.2
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           25
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x40
      Self Powered
    MaxPower                0mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         9 Hub
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               none
        wMaxPacketSize          2
        bInterval             255
  Language IDs: (length=4)
     0409 English(US)

[-- Attachment #4: hci_usb_sco_debug.log.gz --]
[-- Type: application/x-gzip, Size: 11141 bytes --]

[-- Attachment #5: patch-2.6.2-tj1.gz --]
[-- Type: application/x-gzip, Size: 4775 bytes --]

  parent reply	other threads:[~2004-02-16 21:36 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-02-14 14:18 [Bluez-users] Re: 2.6.2 errors with DBT-120 (B2) Todd E. Johnson
2004-02-14 14:43 ` Marcel Holtmann
2004-02-14 15:01   ` [Bluez-users] bcm203x module causes kernel panic on boot Alex Holland
2004-02-14 15:15     ` Marcel Holtmann
     [not found]   ` <402E4E02.9020600@yahoo.com>
2004-02-15 13:27     ` [Bluez-users] Re: 2.6.2 errors with DBT-120 (B2) Marcel Holtmann
2004-02-15 16:09       ` Todd E. Johnson
2004-02-15 16:20         ` Marcel Holtmann
2004-02-16 21:36         ` Todd E. Johnson [this message]
2004-02-16 22:31           ` [Linux-usb-users] " Todd E. Johnson
2004-02-16 22:34             ` Todd E. Johnson
2004-02-18 14:25               ` [Bluez-users] " Todd E. Johnson
  -- strict thread matches above, loose matches on Subject: below --
2004-02-14  4:57 [Bluez-users] " Todd E. Johnson
2004-02-14  9:02 ` Marcel Holtmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=403137F9.1050108@yahoo.com \
    --to=tejohnson@yahoo.com \
    --cc=bluez-users@lists.sourceforge.net \
    --cc=linux-usb-users@lists.sourceforge.net \
    --cc=maxk@qualcomm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.