summaryrefslogtreecommitdiffstats
path: root/drivers/bluetooth/btqca.h
diff options
context:
space:
mode:
authorHarish Bandi2019-07-12 07:09:40 +0200
committerMarcel Holtmann2019-08-12 18:23:50 +0200
commita2780889e247561744dd8efbd3478a1999b72ae3 (patch)
treef2b671a852bc48705a7701a91850bd45dd86a75c /drivers/bluetooth/btqca.h
parentBluetooth: btqca: Use correct byte format for opcode of injected command (diff)
downloadkernel-qcow2-linux-a2780889e247561744dd8efbd3478a1999b72ae3.tar.gz
kernel-qcow2-linux-a2780889e247561744dd8efbd3478a1999b72ae3.tar.xz
kernel-qcow2-linux-a2780889e247561744dd8efbd3478a1999b72ae3.zip
Bluetooth: hci_qca: Send VS pre shutdown command.
WCN399x chips are coex chips, it needs a VS pre shutdown command while turning off the BT. So that chip can inform BT is OFF to other active clients. Signed-off-by: Harish Bandi <c-hbandi@codeaurora.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'drivers/bluetooth/btqca.h')
-rw-r--r--drivers/bluetooth/btqca.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/bluetooth/btqca.h b/drivers/bluetooth/btqca.h
index 6a291a7a5d96..69c5315a65fd 100644
--- a/drivers/bluetooth/btqca.h
+++ b/drivers/bluetooth/btqca.h
@@ -13,6 +13,7 @@
#define EDL_PATCH_TLV_REQ_CMD (0x1E)
#define EDL_NVM_ACCESS_SET_REQ_CMD (0x01)
#define MAX_SIZE_PER_TLV_SEGMENT (243)
+#define QCA_PRE_SHUTDOWN_CMD (0xFC08)
#define EDL_CMD_REQ_RES_EVT (0x00)
#define EDL_PATCH_VER_RES_EVT (0x19)
@@ -135,6 +136,7 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate,
const char *firmware_name);
int qca_read_soc_version(struct hci_dev *hdev, u32 *soc_version);
int qca_set_bdaddr(struct hci_dev *hdev, const bdaddr_t *bdaddr);
+int qca_send_pre_shutdown_cmd(struct hci_dev *hdev);
static inline bool qca_is_wcn399x(enum qca_btsoc_type soc_type)
{
return soc_type == QCA_WCN3990 || soc_type == QCA_WCN3998;
@@ -167,4 +169,9 @@ static inline bool qca_is_wcn399x(enum qca_btsoc_type soc_type)
{
return false;
}
+
+static inline int qca_send_pre_shutdown_cmd(struct hci_dev *hdev)
+{
+ return -EOPNOTSUPP;
+}
#endif