summaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/btintel_pcie.c
diff options
context:
space:
mode:
authorKiran K <kiran.k@intel.com>2024-10-17 13:51:56 +0200
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>2024-11-14 21:32:28 +0100
commit510e8380b0382ee3b070748656b00f83c9a5bf80 (patch)
treee6feb08b341db29272674b215d0f1832b6c17b0c /drivers/bluetooth/btintel_pcie.c
parentBluetooth: btintel_pcie: Remove deadcode (diff)
downloadlinux-510e8380b0382ee3b070748656b00f83c9a5bf80.tar.xz
linux-510e8380b0382ee3b070748656b00f83c9a5bf80.zip
Bluetooth: btintel: Do no pass vendor events to stack
During firmware download, vendor specific events like boot up and secure send result are generated. These events can be safely processed at the driver level. Passing on these events to stack prints unnecessary log as below. Bluetooth: hci0: Malformed MSFT vendor event: 0x02 Fixes: 3368aa357f3b ("Bluetooth: msft: Handle MSFT Monitor Device Event") Signed-off-by: Kiran K <kiran.k@intel.com> Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Diffstat (limited to '')
-rw-r--r--drivers/bluetooth/btintel_pcie.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/drivers/bluetooth/btintel_pcie.c b/drivers/bluetooth/btintel_pcie.c
index 660496e55276..fd4a8bd056fa 100644
--- a/drivers/bluetooth/btintel_pcie.c
+++ b/drivers/bluetooth/btintel_pcie.c
@@ -550,7 +550,8 @@ static int btintel_pcie_recv_event(struct hci_dev *hdev, struct sk_buff *skb)
if (btintel_pcie_in_op(data)) {
btintel_pcie_wr_sleep_cntrl(data, BTINTEL_PCIE_STATE_D0);
data->alive_intr_ctxt = BTINTEL_PCIE_INTEL_HCI_RESET2;
- break;
+ kfree_skb(skb);
+ return 0;
}
if (btintel_pcie_in_iml(data)) {
@@ -567,7 +568,8 @@ static int btintel_pcie_recv_event(struct hci_dev *hdev, struct sk_buff *skb)
btintel_wake_up_flag(data->hdev,
INTEL_WAIT_FOR_D0);
}
- break;
+ kfree_skb(skb);
+ return 0;
case 0x06:
/* When the firmware loading completes the
* device sends out a vendor specific event
@@ -575,7 +577,8 @@ static int btintel_pcie_recv_event(struct hci_dev *hdev, struct sk_buff *skb)
* loading.
*/
btintel_secure_send_result(hdev, ptr, len);
- break;
+ kfree_skb(skb);
+ return 0;
}
}