[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CANFp7mXdz8jYB0=tkj-mzWETo+M-Tx9ecTwEquh-JoDXRT54qw@mail.gmail.com>
Date: Mon, 21 Dec 2020 09:58:18 -0800
From: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
To: Dmitry Osipenko <digetx@...il.com>
Cc: Howard Chung <howardchung@...gle.com>,
Bluez mailing list <linux-bluetooth@...r.kernel.org>,
Alain Michaud <alainm@...omium.org>,
Manish Mandlik <mmandlik@...omium.org>,
Miao-chen Chou <mcchou@...omium.org>,
Marcel Holtmann <marcel@...tmann.org>, apusaka@...omium.org,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Johan Hedberg <johan.hedberg@...il.com>,
LKML <linux-kernel@...r.kernel.org>,
netdev <netdev@...r.kernel.org>
Subject: Re: [PATCH v1] Bluetooth: Set missing suspend task bits
Hi Dmitry,
https://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next.git/commit/?id=295fa2a5647b13681594bb1bcc76c74619035218
should fix this issue.
Your issue seems the same as the one I encountered -- the
SUSPEND_DISABLE bit (0x4) wasn't being cleared by the request
completion handler.
Thanks,
Abhishek
On Mon, Dec 21, 2020 at 6:35 AM Dmitry Osipenko <digetx@...il.com> wrote:
>
> 04.12.2020 06:14, Howard Chung пишет:
> > From: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
> >
> > When suspending, mark SUSPEND_SCAN_ENABLE and SUSPEND_SCAN_DISABLE tasks
> > correctly when either classic or le scanning is modified.
> >
> > Signed-off-by: Abhishek Pandit-Subedi <abhishekpandit@...omium.org>
> > Signed-off-by: Howard Chung <howardchung@...gle.com>
> > Reviewed-by: Alain Michaud <alainm@...omium.org>
> > ---
> >
> > net/bluetooth/hci_request.c | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/net/bluetooth/hci_request.c b/net/bluetooth/hci_request.c
> > index 80dc451d6e124..71bffd7454720 100644
> > --- a/net/bluetooth/hci_request.c
> > +++ b/net/bluetooth/hci_request.c
> > @@ -707,6 +707,9 @@ void hci_req_add_le_scan_disable(struct hci_request *req, bool rpa_le_conn)
> > return;
> > }
> >
> > + if (hdev->suspended)
> > + set_bit(SUSPEND_SCAN_DISABLE, hdev->suspend_tasks);
> > +
> > if (use_ext_scan(hdev)) {
> > struct hci_cp_le_set_ext_scan_enable cp;
> >
> > @@ -1159,6 +1162,11 @@ static void hci_req_set_event_filter(struct hci_request *req)
> > scan = SCAN_PAGE;
> > }
> >
> > + if (scan)
> > + set_bit(SUSPEND_SCAN_ENABLE, hdev->suspend_tasks);
> > + else
> > + set_bit(SUSPEND_SCAN_DISABLE, hdev->suspend_tasks);
> > +
> > hci_req_add(req, HCI_OP_WRITE_SCAN_ENABLE, 1, &scan);
> > }
> >
> >
>
> Hi,
>
> This commit caused a regression on entering into suspend for Broadcom
> Bluetooth 4330 on Nexus 7:
>
> Bluetooth: hci0: Timed out waiting for suspend events
> Bluetooth: hci0: Suspend timeout bit: 4
> Bluetooth: hci0: Suspend notifier action (3) failed: -110
>
> I don't see this problem using BCM4329 chip on another device.
>
> Please fix, thanks in advance.
Powered by blists - more mailing lists