Current-Users archive

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

Re: bluetooth ubt0



Hi,

Iain Hibbert <plunky%ogmig.net@localhost> writes:

> On Mon, 15 Mar 2021, Ryo ONODERA wrote:
>
>> Patrick Welche <prlw1%cam.ac.uk@localhost> writes:
>> 
>> > A first foray into bluetooth on this amd64 laptop gives me:
>> >
>> > ubt0: Intel (0x8087) product 0aaa (0x0aaa), rev 2.00/0.02, addr 4
>> > ubt0: autoconfiguration error: CommandComplete opcode (003|0003) failed (status=
>> > 0x01)
>
> btw this is a 'RESET' command sent to the adapter as the first thing when 
> the device is marked up.
>
>> > and after a btconfig ubt0 up, btconfig shows
>> >
>> > ubt0: bdaddr 00:00:00:00:00:00 flags 0x2e0<INIT_BDADDR,INIT_BUFFER_SIZE,INIT_FEA
>> > TURES,INIT_COMMANDS>
>> >
>> > which doesn't look like a valid address. (Bluetooth is "on", at least
>> > according to OtherOS)
>
> the meaning of the INIT_ flags is that they are set and then when the 
> RESET command is completed, we issue other commands and clear those flags 
> when they have completed. because the RESET did not complete, they are 
> still pending but I guess will not be issued.
>
>> > Any thoughts on how to get it going?
>> 
>> I have no idea about VID/PID=0x8087/0x0aaa.
>> However newer ubt devices from Intel requires firmware loading.
>> 
>> My VID/PID=0x8087/0x0026 requires its firmware and
>> I have gotten same
>> ubt0: autoconfiguration error: CommandComplete opcode (003|0003) failed (status=0x01)
>> after btconfig ubt0 up.
>
> Do you have a reference for this?  We have nothing to handle any such 
> firmware loading that I know of; there is sysutils/bcmfw to do that for 
> Broadcom devices (but, they can operate as a Bluetooth device by default 
> just better with newer firmware)

As far as I understand correctly, NetBSD's ubt device driver does not
have firmware loading logic.

See: FreeBSD's implementation:
src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_intel.c
https://cgit.freebsd.org/src/tree/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_intel.c

prlw1@'s PID=0x0aaa is also listed there.


And Linux has Intel firmware logics, for example:
https://elixir.bootlin.com/linux/v5.12-rc3/source/drivers/bluetooth/btusb.c#L2307
Search 'firmware' string in this file.

I wish someone could implement newer Intel ubt support.

Thank you.

> iain

-- 
Ryo ONODERA // ryo%tetera.org@localhost
PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3


Home | Main Index | Thread Index | Old Index