diff options
author | Joseph Hwang <josephsih@chromium.org> | 2021-11-02 15:19:29 +0800 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2021-11-02 19:37:52 +0100 |
commit | 258f56d11bbbf39df5bc5faf0119d28be528f27d (patch) | |
tree | 769850e522989a3a8da1ff39e87840b55bcf6547 /net/bluetooth/aosp.h | |
parent | 749a6c594203b0e9ac59e3d8da492a8ac6a80510 (diff) | |
download | linux-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.h | 13 |
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 |