Subject: Re: btconfig: SIOCSBTFLAGS: Resource temporarily unavailable
To: Iain Hibbert <plunky@rya-online.net>
From: Berndt Josef Wulf <bwulf@ping.net.au>
List: tech-kern
Date: 07/12/2006 12:03:50
----- Original Message ----- 
From: "Berndt Josef Wulf" <bwulf@ping.net.au>
To: "Iain Hibbert" <plunky@rya-online.net>
Cc: <tech-kern@NetBSD.org>
Sent: Wednesday, 12 July, 2006 11:46 AM
Subject: Re: btconfig: SIOCSBTFLAGS: Resource temporarily unavailable


>> On Tue, 11 Jul 2006, Berndt Josef Wulf wrote:
>>
>>> uhub4: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
>>> ubt0: Dell TrueMobile 350 Bluetooth USB Adapter, rev 2.00/24.22, addr 3
>>>
>>> Any suggestions?
>>
>> Well, this error origniates from a tsleep() in sys/netbt/hci_unit.c after
>> the device is enabled while we wait for it to reset and initialise. You
>> could try increasing the timeout with the patch below..
> [...]
>
> Thanks, will try this and report back to you...
>
>> ..but actually I wonder if this may be caused by the absence of
>> isochronous transfer support in the ehci(4) driver - was the older laptop
>> a different USB controller?
>
> Yes, the usb controller has changed.
>
> old laptop = Intel 82801FB/FR USB UHCI Controller (rev. 0x03)
> new laptop= Intel 82801GB/GR USB EHCI Controller (rev. 0x01)
>
>> Did you have a hw.ubt0.config sysctl set? This is for configuring the
>> isochronous endpoints and although there is no way to turn that
>> configuration off, it may make a difference if you leave it at zero.
>
> current settings are:
>
> hw.ubt0.config = 0
> hw.ubt0.alt_config = 6
> hw.ubt0.sco_rxsize = 0
> hw.ubt0.sco_txsize = 0
>
> same as on the older laptop
>
>> I'm not sure what issues could arise if a driver tries to configure
>> isochronous endpoints through the ehci(4) driver (there seemed to be no
>> errors printed, either by ubt or by ehci), but they would normally only 
>> be
>> used for audio data with the bthset(4) driver and it would be nice if the
>> rest of it worked. There is nothing that btconfig(8) does that would
>> require isoc endpoints to be configured, and if using config#0 makes no
>> difference, you could try commenting out the function call that tries to
>> set it up, like so..?
>
> Thanks for your help. I will apply the patches and report back soon...

No changes after applying both patches. Same result

BTW: btconfig ubt0 reveals

ubt0: bdaddr 00:00:00:00:00:00 flags 0xe0<INIT_BDADDR, 
INIT_BUFFER_SIZE,INIT_FEATURES>

    num_cmd = 0
    num_acl = 0, acl_mtu = 0
    num_sco = 0, sco_mtu = 0

Is there anything else I can provide you with?


cheerio Berndt