From: Marcel Holtmann <firstname.lastname@example.org> To: Trent Piepho <email@example.com> Cc: linux-bluetooth <firstname.lastname@example.org>, LKML <email@example.com>, Hilda Wu <firstname.lastname@example.org>, Sathish Narasimman <email@example.com>, Chethan T N <firstname.lastname@example.org>, Hsin-Yu Chao <email@example.com>, Amit K Bag <firstname.lastname@example.org>, Johan Hedberg <email@example.com>, Luiz Augusto von Dentz <firstname.lastname@example.org> Subject: Re: [PATCH] Bluetooth: btusb: Always fallback to alt 1 for WBS Date: Fri, 18 Dec 2020 22:23:08 +0100 [thread overview] Message-ID: <7ADF39E2-647E-49E2-9C5B-B0BF6A303B95@holtmann.org> (raw) In-Reply-To: <email@example.com> Hi Trent, > When alt mode 6 is not available, fallback to the kernel <= 5.7 behavior > of always using alt mode 1. > > Prior to kernel 5.8, btusb would always use alt mode 1 for WBS (Wide > Band Speech aka mSBC aka transparent SCO). In commit baac6276c0a9 > ("Bluetooth: btusb: handle mSBC audio over USB Endpoints") this > was changed to use alt mode 6, which is the recommended mode in the > Bluetooth spec (Specifications of the Bluetooth System, v5.0, Vol 4.B > §2.2.1). However, many if not most BT USB adapters do not support alt > mode 6. In fact, I have been unable to find any which do. > > In kernel 5.8, this was changed to use alt mode 6, and if not available, > use alt mode 0. But mode 0 has a zero byte max packet length and can > not possibly work. It is just there as a zero-bandwidth dummy mode to > work around a USB flaw that would prevent device enumeration if > insufficient bandwidth were available for the lowest isoc mode > supported. > > In effect, WBS was broken for all USB-BT adapters that do not support > alt 6, which appears to nearly all of them. > > Then in commit 461f95f04f19 ("Bluetooth: btusb: USB alternate setting 1 for > WBS") the 5.7 behavior was restored, but only for Realtek adapters. > > I've tested a Broadcom BRCM20702A and CSR 8510 adapter, both work with > the 5.7 behavior and do not with the 5.8. > > So get rid of the Realtek specific flag and use the 5.7 behavior for all > adapters as a fallback when alt 6 is not available. This was the > kernel's behavior prior to 5.8 and I can find no adapters for which it > is not correct. And even if there is an adapter for which this does not > work, the current behavior would be to fall back to alt 0, which can not > possibly work either, and so is no better. > > Signed-off-by: Trent Piepho <firstname.lastname@example.org> > --- > drivers/bluetooth/btusb.c | 20 ++++++-------------- > 1 file changed, 6 insertions(+), 14 deletions(-) patch has been applied to bluetooth-next tree. Regards Marcel
next prev parent reply other threads:[~2020-12-18 21:23 UTC|newest] Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-12-10 1:20 Trent Piepho 2020-12-10 1:47 ` bluez.test.bot 2020-12-18 21:23 ` Marcel Holtmann [this message] 2021-02-06 15:56 ` [PATCH] " Sjoerd Simons 2021-02-21 20:35 ` Sebastian Reichel
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=7ADF39E2-647E-49E2-9C5B-B0BF6A303B95@holtmann.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --subject='Re: [PATCH] Bluetooth: btusb: Always fallback to alt 1 for WBS' \ /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
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.