1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /* Copyright (c) 2019, The Linux Foundation. All rights reserved. */
3 
4 #ifndef COEXISTENCE_SERVICE_V01_H
5 #define COEXISTENCE_SERVICE_V01_H
6 
7 #define COEX_SERVICE_ID_V01 0x22
8 #define COEX_SERVICE_VERS_V01 0x01
9 
10 #define COEX_SERVICE_MAX_MSG_LEN 8204
11 
12 #define QMI_COEX_SWITCH_ANTENNA_TO_WLAN_RESP_V01 0x0042
13 #define QMI_COEX_SWITCH_ANTENNA_TO_WLAN_REQ_V01 0x0042
14 #define QMI_COEX_SWITCH_ANTENNA_TO_MDM_RESP_V01 0x0042
15 #define QMI_COEX_SWITCH_ANTENNA_TO_MDM_REQ_V01 0x0042
16 
17 #define COEX_ANTENNA_BAND_2GHZ_CHAIN0_V01 ((u64)0x0000000000000001ULL)
18 #define COEX_ANTENNA_BAND_2GHZ_CHAIN1_V01 ((u64)0x0000000000000002ULL)
19 #define COEX_ANTENNA_BAND_5GHZ_CHAIN0_V01 ((u64)0x0000000000000004ULL)
20 #define COEX_ANTENNA_BAND_5GHZ_CHAIN1_V01 ((u64)0x0000000000000008ULL)
21 
22 struct coex_antenna_switch_to_wlan_req_msg_v01 {
23 	u64 antenna;
24 };
25 
26 #define COEX_ANTENNA_SWITCH_TO_WLAN_REQ_MSG_V01_MAX_MSG_LEN 11
27 extern struct qmi_elem_info coex_antenna_switch_to_wlan_req_msg_v01_ei[];
28 
29 struct coex_antenna_switch_to_wlan_resp_msg_v01 {
30 	struct qmi_response_type_v01 resp;
31 	u8 grant_valid;
32 	u64 grant;
33 };
34 
35 #define COEX_ANTENNA_SWITCH_TO_WLAN_RESP_MSG_V01_MAX_MSG_LEN 18
36 extern struct qmi_elem_info coex_antenna_switch_to_wlan_resp_msg_v01_ei[];
37 
38 struct coex_antenna_switch_to_mdm_req_msg_v01 {
39 	u64 antenna;
40 };
41 
42 #define COEX_ANTENNA_SWITCH_TO_MDM_REQ_MSG_V01_MAX_MSG_LEN 11
43 extern struct qmi_elem_info coex_antenna_switch_to_mdm_req_msg_v01_ei[];
44 
45 struct coex_antenna_switch_to_mdm_resp_msg_v01 {
46 	struct qmi_response_type_v01 resp;
47 };
48 
49 #define COEX_ANTENNA_SWITCH_TO_MDM_RESP_MSG_V01_MAX_MSG_LEN 7
50 extern struct qmi_elem_info coex_antenna_switch_to_mdm_resp_msg_v01_ei[];
51 
52 #endif
53