Re: [PATCH v3] Bluetooth: btrtl: HCI reset on close for Realtek BT chip

From: Marcel Holtmann
Date: Sat Jul 06 2019 - 06:51:29 EST


Hi Jian-Hong,

> Realtek RTL8822BE BT chip on ASUS X420FA cannot be turned on correctly
> after on-off several times. Bluetooth daemon sets BT mode failed when
> this issue happens. Scanning must be active while turning off for this
> bug to be hit.
>
> bluetoothd[1576]: Failed to set mode: Failed (0x03)
>
> If BT is turned off, then turned on again, it works correctly again.
>
> According to the vendor driver, the HCI_QUIRK_RESET_ON_CLOSE flag is set
> during probing. So, this patch makes Realtek's BT reset on close to fix
> this issue.
>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=203429
> Signed-off-by: Jian-Hong Pan <jian-hong@xxxxxxxxxxxx>
> ---
> v2:
> - According to the vendor driver, it makes "all" Realtek's BT reset on
> close. So, this version makes it the same.
> - Change to the new subject for all Realtek BT chips.
>
> v3:
> - Fix the commit message and add the bug link.
> - Have btrtl_shutdown_realtek() which sends HCI reset command and as
> the callback function of hdev->shutdown for Realtek BT instead of
> setting HCI_QUIRK_RESET_ON_CLOSE flag.
>
> drivers/bluetooth/btrtl.c | 20 ++++++++++++++++++++
> drivers/bluetooth/btrtl.h | 6 ++++++
> drivers/bluetooth/btusb.c | 1 +
> 3 files changed, 27 insertions(+)

patch has been applied to bluetooth-next tree.

Regards

Marcel