[PATCH RFC v2 0/3] Bluetooth: Add generic support for vendor HCI frames

From: Zijun Hu

Date: Wed Jul 22 2026 - 12:30:45 EST


Hi Luiz
To address the below concerns you raised on previous
discussion.

- Not use safer skb helper like skb_pull_data()
- It will skip sending to the monitor, making debugging much harder

Looking forward to your further comments.

Previous discussion link:
https://lore.kernel.org/all/f9bbf92f-d617-468b-a5b4-2367a1d9a751@xxxxxxxxxxxxxxxx
https://lore.kernel.org/all/CABBYNZJpdeoZ16bObLRPhng2dfyNeK9ix9_-z_hMZhJ0QxTxGg@xxxxxxxxxxxxxx
https://lore.kernel.org/all/CABBYNZJ0zoVVVxuM48L=Km==gnrQuskrbjB6q_aNV0KEEY3+5w@xxxxxxxxxxxxxx

Signed-off-by: Zijun Hu <zijun.hu@xxxxxxxxxxxxxxxx>
---
Changes in v2:
- Implement vendor HCI frames using HCI_VENDOR_PKT (Option A)
- Add recv_vendor_pkt() hook for drivers to handle vendor frames
- Link to v1: https://patch.msgid.link/20260719-support_vendor_hci-v1-1-764523a4ca3d@xxxxxxxxxxxxxxxx

To: Marcel Holtmann <marcel@xxxxxxxxxxxx>
To: Luiz Augusto von Dentz <luiz.dentz@xxxxxxxxx>
Cc: Zijun Hu <zijun_hu@xxxxxxxxxx>
Cc: linux-bluetooth@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx

---
Zijun Hu (3):
Bluetooth: btmrvl_sdio: Do not free HCI_VENDOR_PKT frame by hci_recv_frame()
Bluetooth: Add generic support for vendor HCI frames using HCI_VENDOR_PKT
Bluetooth: Add hdev->recv_bt_vendor() to handle BT vendor frames

drivers/bluetooth/btmrvl_sdio.c | 2 +-
include/net/bluetooth/bluetooth.h | 2 ++
include/net/bluetooth/hci.h | 1 +
include/net/bluetooth/hci_core.h | 7 ++++
include/net/bluetooth/hci_mon.h | 2 ++
net/bluetooth/hci_core.c | 71 +++++++++++++++++++++++++++++++++++++++
net/bluetooth/hci_event.c | 5 +++
net/bluetooth/hci_sock.c | 53 ++++++++++++++++++++++++++---
8 files changed, 137 insertions(+), 6 deletions(-)
---
base-commit: bd8bee79e1fa8db2d587733f8b6fd9597b04d6e3
change-id: 20260719-support_vendor_hci-1fbb4449ab8e
prerequisite-change-id: 20260719-fix_hci_rx_work-f03dd49d8ef8:v1
prerequisite-patch-id: cdf6a14522201fa54cbe21392b7445544c24a977

Best regards,
--
Zijun Hu <zijun.hu@xxxxxxxxxxxxxxxx>