Bluetooth: hci_qca: Stop IBS timer during BT OFF
authorPanicker Harish <quic_pharish@quicinc.com>
Wed, 22 Dec 2021 07:29:05 +0000 (12:59 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 27 Jan 2022 09:54:00 +0000 (10:54 +0100)
[ Upstream commit df1e5c51492fd93ffc293acdcc6f00698d19fedc ]

The IBS timers are not stopped properly once BT OFF is triggered.
we could see IBS commands being sent along with version command,
so stopped IBS timers while Bluetooth is off.

Fixes: 3e4be65eb82c ("Bluetooth: hci_qca: Add poweroff support during hci down for wcn3990")
Signed-off-by: Panicker Harish <quic_pharish@quicinc.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/bluetooth/hci_qca.c

index 4184faef9f169b9defdfede96734f9486487a40d..4f8a32601c1b651c1a1a0ff25d1e8ca1ad8b66ac 100644 (file)
@@ -1844,6 +1844,9 @@ static int qca_power_off(struct hci_dev *hdev)
        hu->hdev->hw_error = NULL;
        hu->hdev->cmd_timeout = NULL;
 
+       del_timer_sync(&qca->wake_retrans_timer);
+       del_timer_sync(&qca->tx_idle_timer);
+
        /* Stop sending shutdown command if soc crashes. */
        if (soc_type != QCA_ROME
                && qca->memdump_state == QCA_MEMDUMP_IDLE) {