From: Marcel Holtmann <marcel@holtmann.org>
To: Andrei Emeltchenko <andrei.emeltchenko.news@gmail.com>
Cc: Johan Hedberg <johan.hedberg@gmail.com>, linux-bluetooth@vger.kernel.org
Subject: Re: [PATCH] Bluetooth: Fix device reset
Date: Thu, 09 Feb 2012 14:51:11 +0100 [thread overview]
Message-ID: <1328795471.28848.19.camel@aeonflux> (raw)
In-Reply-To: <20120207092337.GA5683@aemeltch-MOBL1>
Hi Andrei,
> > > > > > From: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> > > > > >
> > > > > >
> > > > > > Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
> > > > > > ---
> > > > > > net/bluetooth/hci_core.c | 2 +-
> > > > > > 1 files changed, 1 insertions(+), 1 deletions(-)
> > > > > >
> > > > > > diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c
> > > > > > index e77cc79..3f30714 100644
> > > > > > --- a/net/bluetooth/hci_core.c
> > > > > > +++ b/net/bluetooth/hci_core.c
> > > > > > @@ -822,7 +822,7 @@ static int hci_dev_do_close(struct hci_dev
> > > *hdev)
> > > > > > skb_queue_purge(&hdev->cmd_q);
> > > > > > atomic_set(&hdev->cmd_cnt, 1);
> > > > > > if (!test_bit(HCI_RAW, &hdev->flags) &&
> > > > > > - test_bit(HCI_QUIRK_NO_RESET,
> > > &hdev->quirks)) {
> > > > > > + !test_bit(HCI_QUIRK_NO_RESET,
> > > &hdev->quirks)) {
> > > > > > set_bit(HCI_INIT, &hdev->flags);
> > > > > > __hci_request(hdev, hci_reset_req, 0,
> > > > > > msecs_to_jiffies(250));
> > > > >
> > > > > Nack. The NO_RESET quirk is supposed to prevent reset during the
> > > device
> > > > > init sequence. The purpose of the test in hci_dev_do_close() is to
> > > let
> > > > > the reset be done there instead.
> > > >
> > > > we might wanna rename this into HCI_QUIRK_RESET_ON_CLOSE. Otherwise
> > > > people keep in getting confused.
> > > >
> > >
> > > Moreover without my patch my USB dongle gets stuck after reset.
> >
> > please send hcidump traces for this. And you mean hciconfig hci0 reset?
>
> In the trace there is only one line:
>
> < HCI Command: Reset (0x03|0x0003) plen 0
>
> Then chip stuck (I am testing this inside virtual machine).
>
> I have A-Link BCM USB dongle.
the patch in general is correct, but it seems that it has some side
effects on some dongles. Can you try doing hciconfig hci0 reset versus a
hciconfig hci0 down + hciconfig hci0 up and if it makes any difference.
Regards
Marcel
next prev parent reply other threads:[~2012-02-09 13:51 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-06 13:59 [PATCH] Bluetooth: Fix device reset Emeltchenko Andrei
2012-02-06 15:21 ` Johan Hedberg
2012-02-06 19:02 ` Marcel Holtmann
2012-02-06 19:36 ` Andrei Emeltchenko
2012-02-06 19:38 ` Marcel Holtmann
2012-02-07 9:23 ` Andrei Emeltchenko
2012-02-09 13:51 ` Marcel Holtmann [this message]
2012-02-09 14:25 ` Andrei Emeltchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1328795471.28848.19.camel@aeonflux \
--to=marcel@holtmann.org \
--cc=andrei.emeltchenko.news@gmail.com \
--cc=johan.hedberg@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.