Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Linux Bluetooth Coexistence documentation in general and for ath9k

46 views
Skip to first unread message

Luis R. Rodriguez

unread,
Mar 3, 2010, 7:50:02 PM3/3/10
to
Marcel, a question for you below.

The question of Bluetooth coexistence pops up here, on IRC and on bug
reports quite too often so I've stuffed what I could onto a page with
a few references / code and about ath9k's schemes for BT coexistence,
feel free to extend or correct:

http://wireless.kernel.org/en/users/Documentation/Bluetooth-coexistence
http://wireless.kernel.org/en/users/Drivers/ath9k/btcoex

I'm still not sure if "2-wire" and "3-wire" are generic terms and if
someone owns a trademark on them or what, but looking down the road I
think it would be nice to export this information through nl80211, if
a device supports any of these BT-coex schemes and if so, perhaps
display the current signal status of:

* WLAN_ACTIVE
* BT_PRIORITY
* BT_STATE

I do wonder if this could be useful to network applets like network
manager/connman. The other BT coex schemes are BT specific it seems
and not sure if those devices can expose that information out and
inform userspace of certain events.

Marcel, does the BlueZ support exporting if certain bt-coex schemes
are supported like AFH, channel skipping, TDM, and also if they are
being used and details of that?

Luis
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Bastien Nocera

unread,
Mar 3, 2010, 8:20:02 PM3/3/10
to
On Wed, 2010-03-03 at 16:43 -0800, Luis R. Rodriguez wrote:
> Marcel, a question for you below.
>
> The question of Bluetooth coexistence pops up here, on IRC and on bug
> reports quite too often so I've stuffed what I could onto a page with
> a few references / code and about ath9k's schemes for BT coexistence,
> feel free to extend or correct:
<snip>

> I do wonder if this could be useful to network applets like network
> manager/connman.

Not really. To me, it sounds like a "make it work" button. The kernel
bits of Bluetooth should already have an idea of when a device is
connected, so the kernel should be able to "do the right thing".

Having options over what "the right thing" is is probably a good idea
whilst the kinks are worked out from the default behaviour, but this is
not something that should be advertised to users.

> The other BT coex schemes are BT specific it seems
> and not sure if those devices can expose that information out and
> inform userspace of certain events.

Cheers

Luis R. Rodriguez

unread,
Mar 4, 2010, 12:20:01 AM3/4/10
to
On Wed, Mar 3, 2010 at 4:59 PM, Bastien Nocera <had...@hadess.net> wrote:
> On Wed, 2010-03-03 at 16:43 -0800, Luis R. Rodriguez wrote:
>> Marcel, a question for you below.
>>
>> The question of Bluetooth coexistence pops up here, on IRC and on bug
>> reports quite too often so I've stuffed what I could onto a page with
>> a few references / code and about ath9k's schemes for BT coexistence,
>> feel free to extend or correct:
> <snip>
>> I do wonder if this could be useful to network applets like network
>> manager/connman.
>
> Not really. To me, it sounds like a "make it work" button. The kernel
> bits of Bluetooth should already have an idea of when a device is
> connected, so the kernel should be able to "do the right thing".
>
> Having options over what "the right thing" is is probably a good idea
> whilst the kinks are worked out from the default behaviour, but this is
> not something that should be advertised to users.

I wasn't really thinking of buttons for BT coex, but instead just
information exposed out and making it available. Reason for this is
users tend to be blind about btcoex stuff and it would be nice if we
had a way to inform the user of the btcoex mechanisms that actually
are being used. Does that change your answer?

Luis

Bastien Nocera

unread,
Mar 4, 2010, 5:20:02 AM3/4/10
to
On Wed, 2010-03-03 at 21:09 -0800, Luis R. Rodriguez wrote:
> On Wed, Mar 3, 2010 at 4:59 PM, Bastien Nocera <had...@hadess.net> wrote:
> > On Wed, 2010-03-03 at 16:43 -0800, Luis R. Rodriguez wrote:
> >> Marcel, a question for you below.
> >>
> >> The question of Bluetooth coexistence pops up here, on IRC and on bug
> >> reports quite too often so I've stuffed what I could onto a page with
> >> a few references / code and about ath9k's schemes for BT coexistence,
> >> feel free to extend or correct:
> > <snip>
> >> I do wonder if this could be useful to network applets like network
> >> manager/connman.
> >
> > Not really. To me, it sounds like a "make it work" button. The kernel
> > bits of Bluetooth should already have an idea of when a device is
> > connected, so the kernel should be able to "do the right thing".
> >
> > Having options over what "the right thing" is is probably a good idea
> > whilst the kinks are worked out from the default behaviour, but this is
> > not something that should be advertised to users.
>
> I wasn't really thinking of buttons for BT coex, but instead just
> information exposed out and making it available. Reason for this is
> users tend to be blind about btcoex stuff and it would be nice if we
> had a way to inform the user of the btcoex mechanisms that actually
> are being used. Does that change your answer?

No, not really. It could be useful as a debugging statement in the
kernel, or in bluetoothd might be helpful, but I'm not sure why users
would need to be told about the BT coex support, or what type is being
used.

It's probably too much information for the users. Though if it's
available in the kernel, one could get it fairly easily if enquiring.

Cheers

Marcel Holtmann

unread,
Mar 4, 2010, 10:20:02 AM3/4/10
to
Hi Luis,

> The question of Bluetooth coexistence pops up here, on IRC and on bug
> reports quite too often so I've stuffed what I could onto a page with
> a few references / code and about ath9k's schemes for BT coexistence,
> feel free to extend or correct:
>
> http://wireless.kernel.org/en/users/Documentation/Bluetooth-coexistence
> http://wireless.kernel.org/en/users/Drivers/ath9k/btcoex
>
> I'm still not sure if "2-wire" and "3-wire" are generic terms and if
> someone owns a trademark on them or what, but looking down the road I
> think it would be nice to export this information through nl80211, if
> a device supports any of these BT-coex schemes and if so, perhaps
> display the current signal status of:
>
> * WLAN_ACTIVE
> * BT_PRIORITY
> * BT_STATE
>
> I do wonder if this could be useful to network applets like network
> manager/connman. The other BT coex schemes are BT specific it seems
> and not sure if those devices can expose that information out and
> inform userspace of certain events.
>
> Marcel, does the BlueZ support exporting if certain bt-coex schemes
> are supported like AFH, channel skipping, TDM, and also if they are
> being used and details of that?

the only thing the host has control over is AFH channel map, and even
modifying that is not really needed. The Bluetooth controller will do
AFH automatically and it is on by default. We never switch that off
actually.

Normally the co-ex stuff is hard-wired between the Bluetooth and WiFi
and thus out of control to the host OS.

Regards

Marcel

Pavel Machek

unread,
Mar 10, 2010, 4:00:02 PM3/10/10
to
Hi!

> > The question of Bluetooth coexistence pops up here, on IRC and on bug
> > reports quite too often so I've stuffed what I could onto a page with
> > a few references / code and about ath9k's schemes for BT coexistence,
> > feel free to extend or correct:
> >
> > http://wireless.kernel.org/en/users/Documentation/Bluetooth-coexistence
> > http://wireless.kernel.org/en/users/Drivers/ath9k/btcoex
> >
> > I'm still not sure if "2-wire" and "3-wire" are generic terms and if
> > someone owns a trademark on them or what, but looking down the road I
> > think it would be nice to export this information through nl80211, if
> > a device supports any of these BT-coex schemes and if so, perhaps
> > display the current signal status of:
> >
> > * WLAN_ACTIVE
> > * BT_PRIORITY
> > * BT_STATE

...


> the only thing the host has control over is AFH channel map, and even
> modifying that is not really needed. The Bluetooth controller will do
> AFH automatically and it is on by default. We never switch that off
> actually.
>
> Normally the co-ex stuff is hard-wired between the Bluetooth and WiFi
> and thus out of control to the host OS.

I believe that 'internal wifi, usb bluetooth' is still quite common
setup...
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Mike Tsai

unread,
Mar 10, 2010, 5:20:02 PM3/10/10
to
Hi,

I think host shall provide channel map to controller because it is considered to be much more accurate than the channel map generated by controller based on the RSSI reading.

Mike

Hi!

To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in

0 new messages