You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
903 B
24 lines
903 B
8 years ago
|
From 0224b0469a7f5c2ee6420aac66e89e3206029633 Mon Sep 17 00:00:00 2001
|
||
8 years ago
|
From: Phil Elwell <phil@raspberrypi.org>
|
||
|
Date: Thu, 17 Dec 2015 13:37:07 +0000
|
||
|
Subject: [PATCH] hci_h5: Don't send conf_req when ACTIVE
|
||
|
|
||
|
Without this patch, a modem and kernel can continuously bombard each
|
||
|
other with conf_req and conf_rsp messages, in a demented game of tag.
|
||
|
---
|
||
|
drivers/bluetooth/hci_h5.c | 3 ++-
|
||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||
|
|
||
|
--- a/drivers/bluetooth/hci_h5.c
|
||
|
+++ b/drivers/bluetooth/hci_h5.c
|
||
|
@@ -310,7 +310,8 @@ static void h5_handle_internal_rx(struct
|
||
|
h5_link_control(hu, conf_req, 3);
|
||
|
} else if (memcmp(data, conf_req, 2) == 0) {
|
||
|
h5_link_control(hu, conf_rsp, 2);
|
||
|
- h5_link_control(hu, conf_req, 3);
|
||
|
+ if (h5->state != H5_ACTIVE)
|
||
|
+ h5_link_control(hu, conf_req, 3);
|
||
|
} else if (memcmp(data, conf_rsp, 2) == 0) {
|
||
|
if (H5_HDR_LEN(hdr) > 2)
|
||
|
h5->tx_win = (data[2] & 0x07);
|