Jiri Slaby c5b460
From: Raul Cheleguini <rcheleguini@google.com>
Jiri Slaby c5b460
Date: Fri, 10 Mar 2023 15:14:10 +0000
Jiri Slaby c5b460
Subject: [PATCH] Bluetooth: Improve support for Actions Semi ATS2851 based
Jiri Slaby c5b460
 devices
Jiri Slaby c5b460
References: bsc#1012628
Jiri Slaby c5b460
Patch-mainline: 6.3.4
Jiri Slaby c5b460
Git-commit: 7c2b2d2d0cb658aa543e11e90ae95621d3cb5fe6
Jiri Slaby c5b460
Jiri Slaby c5b460
[ Upstream commit 7c2b2d2d0cb658aa543e11e90ae95621d3cb5fe6 ]
Jiri Slaby c5b460
Jiri Slaby c5b460
Add two more quirks to resume the device initialization and basic
Jiri Slaby c5b460
operation as the device seems not to support "Read Transmit Power"
Jiri Slaby c5b460
and "Set Extended Scan Parameters".
Jiri Slaby c5b460
Jiri Slaby c5b460
< HCI Command: LE Read Transmit Power (0x08|0x004b) plen 0
Jiri Slaby c5b460
> HCI Event: Command Status (0x0f) plen 4
Jiri Slaby c5b460
      LE Read Transmit Power (0x08|0x004b) ncmd 1
Jiri Slaby c5b460
        Status: Unknown HCI Command (0x01)
Jiri Slaby c5b460
Jiri Slaby c5b460
< HCI Command: LE Set Extended Scan Parameters (0x08|0x0041) plen 8
Jiri Slaby c5b460
        Own address type: Random (0x01)
Jiri Slaby c5b460
        Filter policy: Accept all advertisement (0x00)
Jiri Slaby c5b460
        PHYs: 0x01
Jiri Slaby c5b460
        Entry 0: LE 1M
Jiri Slaby c5b460
          Type: Active (0x01)
Jiri Slaby c5b460
          Interval: 11.250 msec (0x0012)
Jiri Slaby c5b460
          Window: 11.250 msec (0x0012)
Jiri Slaby c5b460
> HCI Event: Command Status (0x0f) plen 4
Jiri Slaby c5b460
      LE Set Extended Scan Parameters (0x08|0x0041) ncmd 1
Jiri Slaby c5b460
        Status: Unknown HCI Command (0x01)
Jiri Slaby c5b460
Jiri Slaby c5b460
Signed-off-by: Raul Cheleguini <rcheleguini@google.com>
Jiri Slaby c5b460
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Jiri Slaby c5b460
Signed-off-by: Sasha Levin <sashal@kernel.org>
Jiri Slaby c5b460
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Jiri Slaby c5b460
---
Jiri Slaby c5b460
 drivers/bluetooth/btusb.c | 2 ++
Jiri Slaby c5b460
 1 file changed, 2 insertions(+)
Jiri Slaby c5b460
Jiri Slaby c5b460
diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
Jiri Slaby c5b460
index 683556dc..1ab5663b 100644
Jiri Slaby c5b460
--- a/drivers/bluetooth/btusb.c
Jiri Slaby c5b460
+++ b/drivers/bluetooth/btusb.c
Jiri Slaby c5b460
@@ -4105,6 +4105,8 @@ static int btusb_probe(struct usb_interface *intf,
Jiri Slaby c5b460
 	if (id->driver_info & BTUSB_ACTIONS_SEMI) {
Jiri Slaby c5b460
 		/* Support is advertised, but not implemented */
Jiri Slaby c5b460
 		set_bit(HCI_QUIRK_BROKEN_ERR_DATA_REPORTING, &hdev->quirks);
Jiri Slaby c5b460
+		set_bit(HCI_QUIRK_BROKEN_READ_TRANSMIT_POWER, &hdev->quirks);
Jiri Slaby c5b460
+		set_bit(HCI_QUIRK_BROKEN_EXT_SCAN, &hdev->quirks);
Jiri Slaby c5b460
 	}
Jiri Slaby c5b460
 
Jiri Slaby c5b460
 	if (!reset)
Jiri Slaby c5b460
-- 
Jiri Slaby c5b460
2.35.3
Jiri Slaby c5b460