summaryrefslogtreecommitdiffstats
path: root/net/bluetooth/aosp.h
diff options
context:
space:
mode:
authorJoseph Hwang <josephsih@chromium.org>2021-11-02 15:19:29 +0800
committerMarcel Holtmann <marcel@holtmann.org>2021-11-02 19:37:52 +0100
commit258f56d11bbbf39df5bc5faf0119d28be528f27d (patch)
tree769850e522989a3a8da1ff39e87840b55bcf6547 /net/bluetooth/aosp.h
parent749a6c594203b0e9ac59e3d8da492a8ac6a80510 (diff)
downloadlinux-258f56d11bbbf39df5bc5faf0119d28be528f27d.tar.gz
linux-258f56d11bbbf39df5bc5faf0119d28be528f27d.tar.bz2
linux-258f56d11bbbf39df5bc5faf0119d28be528f27d.zip
Bluetooth: aosp: Support AOSP Bluetooth Quality Report
This patch adds the support of the AOSP Bluetooth Quality Report (BQR) events. Multiple vendors have supported the AOSP Bluetooth Quality Report. When a Bluetooth controller supports the capability, it can enable the aosp capability through hci_set_aosp_capable. Then hci_core will set up the hdev->aosp_set_quality_report callback through aosp_do_open if the controller responds to support the quality report capability. Note that Intel also supports a distinct telemetry quality report specification. Intel sets up the hdev->set_quality_report callback in the btusb driver module. Reviewed-by: Miao-chen Chou <mcchou@chromium.org> Signed-off-by: Joseph Hwang <josephsih@chromium.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'net/bluetooth/aosp.h')
-rw-r--r--net/bluetooth/aosp.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/net/bluetooth/aosp.h b/net/bluetooth/aosp.h
index 328fc6d39f70..2fd8886d51b2 100644
--- a/net/bluetooth/aosp.h
+++ b/net/bluetooth/aosp.h
@@ -8,9 +8,22 @@
void aosp_do_open(struct hci_dev *hdev);
void aosp_do_close(struct hci_dev *hdev);
+bool aosp_has_quality_report(struct hci_dev *hdev);
+int aosp_set_quality_report(struct hci_dev *hdev, bool enable);
+
#else
static inline void aosp_do_open(struct hci_dev *hdev) {}
static inline void aosp_do_close(struct hci_dev *hdev) {}
+static inline bool aosp_has_quality_report(struct hci_dev *hdev)
+{
+ return false;
+}
+
+static inline int aosp_set_quality_report(struct hci_dev *hdev, bool enable)
+{
+ return -EOPNOTSUPP;
+}
+
#endif