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

Zijun Hu posted 3 patches 2 days, 6 hours ago
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(-)
[PATCH RFC v2 0/3] Bluetooth: Add generic support for vendor HCI frames
Posted by Zijun Hu 2 days, 6 hours ago
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@oss.qualcomm.com
https://lore.kernel.org/all/CABBYNZJpdeoZ16bObLRPhng2dfyNeK9ix9_-z_hMZhJ0QxTxGg@mail.gmail.com
https://lore.kernel.org/all/CABBYNZJ0zoVVVxuM48L=Km==gnrQuskrbjB6q_aNV0KEEY3+5w@mail.gmail.com

Signed-off-by: Zijun Hu <zijun.hu@oss.qualcomm.com>
---
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@oss.qualcomm.com

To: Marcel Holtmann <marcel@holtmann.org>
To: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
Cc: Zijun Hu <zijun_hu@icloud.com>
Cc: linux-bluetooth@vger.kernel.org
Cc: linux-kernel@vger.kernel.org

---
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@oss.qualcomm.com>