Currently, btusb will only trigger gpio reset during cmd_timeout after
5 commands fail. This number is arbitrarily large and can result in
resets taking longer to occur than necessary.

Reduce this number to 3, which was chosen as a recommended value by
Intel (their firmware allow two commands in flight so they recommend
resetting on the third failed command).

Signed-off-by: Abhishek Pandit-Subedi <abhishekpan...@chromium.org>
Reviewed-by: Miao-chen Chou <mcc...@chromium.org>
Reviewed-by: Daniel Winkler <danielwink...@google.com>
---

 drivers/bluetooth/btusb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
index 03341e6cbf3ed..880e9cd4ee713 100644
--- a/drivers/bluetooth/btusb.c
+++ b/drivers/bluetooth/btusb.c
@@ -578,7 +578,7 @@ static void btusb_gpio_cmd_timeout(struct hci_dev *hdev)
 {
        struct btusb_data *data = hci_get_drvdata(hdev);
 
-       if (++data->cmd_timeout_cnt < 5)
+       if (++data->cmd_timeout_cnt < 3)
                return;
 
        if (!data->reset_gpio) {
-- 
2.30.0.284.gd98b1dd5eaa7-goog

Reply via email to