Message ID | 20240124143042.27790-2-quic_janathot@quicinc.com |
---|---|
State | Accepted |
Commit | e6cc937460d9f7d2bf3278699c3d713431218ddc |
Headers | show |
Series | Bluetooth: hci_qca: add check to set HCI_QUIRK_USE_BDADDR_PROPERTY | expand |
This is automated email and please do not reply to this email! Dear submitter, Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series: PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=819522 ---Test result--- Test Summary: CheckPatch PASS 0.50 seconds GitLint PASS 0.22 seconds SubjectPrefix PASS 0.08 seconds BuildKernel PASS 27.79 seconds CheckAllWarning PASS 30.48 seconds CheckSparse PASS 35.93 seconds CheckSmatch PASS 99.17 seconds BuildKernel32 PASS 26.95 seconds TestRunnerSetup PASS 434.03 seconds TestRunner_l2cap-tester PASS 23.07 seconds TestRunner_iso-tester PASS 42.71 seconds TestRunner_bnep-tester PASS 6.81 seconds TestRunner_mgmt-tester PASS 155.96 seconds TestRunner_rfcomm-tester PASS 10.91 seconds TestRunner_sco-tester PASS 14.37 seconds TestRunner_ioctl-tester PASS 12.01 seconds TestRunner_mesh-tester PASS 9.00 seconds TestRunner_smp-tester PASS 9.76 seconds TestRunner_userchan-tester PASS 7.19 seconds IncrementalBuild PASS 25.91 seconds --- Regards, Linux Bluetooth
diff --git a/drivers/bluetooth/hci_qca.c b/drivers/bluetooth/hci_qca.c index 94b8c406f0c0..06193546ebb6 100644 --- a/drivers/bluetooth/hci_qca.c +++ b/drivers/bluetooth/hci_qca.c @@ -7,6 +7,7 @@ * * Copyright (C) 2007 Texas Instruments, Inc. * Copyright (c) 2010, 2012, 2018 The Linux Foundation. All rights reserved. + * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved. * * Acknowledgements: * This file is based on hci_ll.c, which was... @@ -1904,7 +1905,17 @@ static int qca_setup(struct hci_uart *hu) case QCA_WCN6750: case QCA_WCN6855: case QCA_WCN7850: - set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks); + + /* Set BDA quirk bit for reading BDA value from fwnode property + * only if that property exist in DT. + */ + if (fwnode_property_present(dev_fwnode(hdev->dev.parent), "local-bd-address")) { + set_bit(HCI_QUIRK_USE_BDADDR_PROPERTY, &hdev->quirks); + bt_dev_info(hdev, "setting quirk bit to read BDA from fwnode later"); + } else { + bt_dev_dbg(hdev, "local-bd-address` is not present in the devicetree so not setting quirk bit for BDA"); + } + hci_set_aosp_capable(hdev); ret = qca_read_soc_version(hdev, &ver, soc_type);
BT adapter going into UNCONFIGURED state during BT turn ON when devicetree has no local-bd-address node. Bluetooth will not work out of the box on such devices, to avoid this problem, added check to set HCI_QUIRK_USE_BDADDR_PROPERTY based on local-bd-address node entry. When this quirk is not set, the public Bluetooth address read by host from controller though HCI Read BD Address command is considered as valid. Fixes: e668eb1e1578 ("Bluetooth: hci_core: Don't stop BT if the BD address missing in dts") Signed-off-by: Janaki Ramaiah Thota <quic_janathot@quicinc.com> --- drivers/bluetooth/hci_qca.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-)