Just to start with the important part why this is an RFC: While Bluetooth chip init works totally fine and bluez seems to be fairly happy with it, there's a (major) problem with scanning, as shown with this bluetoothctl snippet and dmesg snippet: [bluetooth]# scan on Failed to start discovery: org.bluez.Error.InProgress [ 202.371374] Bluetooth: hci0: Opcode 0x200b failed: -16 This opcode should be the following: include/net/bluetooth/hci.h:#define HCI_OP_LE_SET_SCAN_PARAM 0x200b Unfortunately trying various existing code branches in the Bluetooth driver doesn't show any sign of making this work and I don't really know where to look to debug this further. On the other hand "discoverable on" makes the device show up on other devices during scanning , so the RF parts of the Bluetooth chip are generally functional for sure. Any ideas are welcome. @Bjorn: Patch "arm64: dts: qcom: sm6350: add uart1 node" should be fine to take regardless the RFC status, I don't think the problem is caused there. Signed-off-by: Luca Weiss <luca.weiss@xxxxxxxxxxxxx> --- Luca Weiss (4): dt-bindings: net: qualcomm: Add WCN3988 Bluetooth: btqca: Add WCN3988 support arm64: dts: qcom: sm6350: add uart1 node arm64: dts: qcom: sm7225-fairphone-fp4: Add Bluetooth .../bindings/net/bluetooth/qualcomm-bluetooth.yaml | 2 + arch/arm64/boot/dts/qcom/sm6350.dtsi | 63 ++++++++++++++++++++++ arch/arm64/boot/dts/qcom/sm7225-fairphone-fp4.dts | 17 ++++++ drivers/bluetooth/btqca.c | 13 ++++- drivers/bluetooth/btqca.h | 12 ++++- drivers/bluetooth/hci_qca.c | 12 +++++ 6 files changed, 115 insertions(+), 4 deletions(-) --- base-commit: cf4c0112a0350cfe8a63b5eb3377e2366f57545b change-id: 20230421-fp4-bluetooth-b36a0e87b9c8 Best regards, -- Luca Weiss <luca.weiss@xxxxxxxxxxxxx>