Message ID | 1639484691-28202-1-git-send-email-quic_pharish@quicinc.com |
---|---|
State | New |
Headers | show |
Series | [v3] Bluetooth: hci_qca: Stop IBS timer during BT OFF | expand |
-----Original Message----- From: Matthias Kaehlcke <mka@chromium.org> Sent: Tuesday, December 14, 2021 10:53 PM To: PANICKER HARISH (Temp) (QUIC) <quic_pharish@quicinc.com> Cc: marcel@holtmann.org; johan.hedberg@gmail.com; linux-kernel@vger.kernel.org; linux-bluetooth@vger.kernel.org; Hemant Gupta (QUIC) <quic_hemantg@quicinc.com>; linux-arm-msm@vger.kernel.org; quic_bgodavar <quic_bgodavar@quicinc.com>; rjliao@codeaurora.org; hbandi@codeaurora.org; abhishekpandit@chromium.org; mcchou@chromium.org; Sai Teja Aluvala (Temp) (QUIC) <quic_saluvala@quicinc.com> Subject: Re: [PATCH v3] Bluetooth: hci_qca: Stop IBS timer during BT OFF On Tue, Dec 14, 2021 at 05:54:51PM +0530, Panicker Harish wrote: > 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> > --- > drivers/bluetooth/hci_qca.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c > index dd768a8..6f44b26 100644 > --- a/drivers/bluetooth/hci_qca.c > +++ b/drivers/bluetooth/hci_qca.c > @@ -1928,6 +1928,9 @@ static int qca_power_off(struct hci_dev *hdev) > hu->hdev->hw_error = NULL; > hu->hdev->cmd_timeout = NULL; > > + mod_timer(&qca->tx_idle_timer, 0); > + mod_timer(&qca->wake_retrans_timer, 0); > + If one of the timers is already running it wouldn't be stopped by mod_timer(). I think you want a del_timer_sync() here to ensure the timers aren't running when the chip is powered off. [Harish] : I will check and update in next patch.
diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c index dd768a8..6f44b26 100644 --- a/drivers/bluetooth/hci_qca.c +++ b/drivers/bluetooth/hci_qca.c @@ -1928,6 +1928,9 @@ static int qca_power_off(struct hci_dev *hdev) hu->hdev->hw_error = NULL; hu->hdev->cmd_timeout = NULL; + mod_timer(&qca->tx_idle_timer, 0); + mod_timer(&qca->wake_retrans_timer, 0); + /* Stop sending shutdown command if soc crashes. */ if (soc_type != QCA_ROME && qca->memdump_state == QCA_MEMDUMP_IDLE) {
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> --- drivers/bluetooth/hci_qca.c | 3 +++ 1 file changed, 3 insertions(+)