diff options
author | Andrei Emeltchenko <andrei.emeltchenko@intel.com> | 2012-06-13 12:35:44 +0200 |
---|---|---|
committer | Gustavo Padovan <gustavo.padovan@collabora.co.uk> | 2012-06-19 05:19:11 +0200 |
commit | ea1e76a3f92f8565d395c549b9ca836c7eaa44b9 (patch) | |
tree | da2abc4751944cc6fa5d6c584308dacaed8b6bf3 /drivers/bluetooth/btmrvl_sdio.c | |
parent | Bluetooth: Fix sending HCI_Disconnect only when connected (diff) | |
download | linux-ea1e76a3f92f8565d395c549b9ca836c7eaa44b9.tar.xz linux-ea1e76a3f92f8565d395c549b9ca836c7eaa44b9.zip |
Bluetooth: btmrvl: Do not send vendor events to bluetooth stack
Vendor-specific events shall be processed in driver and not sent
to bluetooth stack where they screw up HCI command countings.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
Signed-off-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Diffstat (limited to 'drivers/bluetooth/btmrvl_sdio.c')
-rw-r--r-- | drivers/bluetooth/btmrvl_sdio.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/bluetooth/btmrvl_sdio.c b/drivers/bluetooth/btmrvl_sdio.c index a853244e7fd7..0cd61d9f07cd 100644 --- a/drivers/bluetooth/btmrvl_sdio.c +++ b/drivers/bluetooth/btmrvl_sdio.c @@ -562,10 +562,12 @@ static int btmrvl_sdio_card_to_host(struct btmrvl_private *priv) skb_put(skb, buf_len); skb_pull(skb, SDIO_HEADER_LEN); - if (type == HCI_EVENT_PKT) - btmrvl_check_evtpkt(priv, skb); + if (type == HCI_EVENT_PKT) { + if (btmrvl_check_evtpkt(priv, skb)) + hci_recv_frame(skb); + } else + hci_recv_frame(skb); - hci_recv_frame(skb); hdev->stat.byte_rx += buf_len; break; |