xref: /wlan-dirver/platform/cnss2/coexistence_service_v01.c (revision 5b29459b17821e3d9b1e6fcc7bd0a69222e90f53)
1*5b29459bSYue Ma // SPDX-License-Identifier: GPL-2.0-only
2*5b29459bSYue Ma /* Copyright (c) 2019-2021, The Linux Foundation. All rights reserved. */
3*5b29459bSYue Ma 
4*5b29459bSYue Ma #include <linux/soc/qcom/qmi.h>
5*5b29459bSYue Ma 
6*5b29459bSYue Ma #include "coexistence_service_v01.h"
7*5b29459bSYue Ma 
8*5b29459bSYue Ma struct qmi_elem_info coex_antenna_switch_to_wlan_req_msg_v01_ei[] = {
9*5b29459bSYue Ma 	{
10*5b29459bSYue Ma 		.data_type      = QMI_UNSIGNED_8_BYTE,
11*5b29459bSYue Ma 		.elem_len       = 1,
12*5b29459bSYue Ma 		.elem_size      = sizeof(u64),
13*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
14*5b29459bSYue Ma 		.tlv_type       = 0x01,
15*5b29459bSYue Ma 		.offset         = offsetof(struct
16*5b29459bSYue Ma 				coex_antenna_switch_to_wlan_req_msg_v01,
17*5b29459bSYue Ma 				antenna),
18*5b29459bSYue Ma 	},
19*5b29459bSYue Ma 	{
20*5b29459bSYue Ma 		.data_type      = QMI_EOTI,
21*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
22*5b29459bSYue Ma 		.tlv_type       = QMI_COMMON_TLV_TYPE,
23*5b29459bSYue Ma 	},
24*5b29459bSYue Ma };
25*5b29459bSYue Ma 
26*5b29459bSYue Ma struct qmi_elem_info coex_antenna_switch_to_wlan_resp_msg_v01_ei[] = {
27*5b29459bSYue Ma 	{
28*5b29459bSYue Ma 		.data_type      = QMI_STRUCT,
29*5b29459bSYue Ma 		.elem_len       = 1,
30*5b29459bSYue Ma 		.elem_size      = sizeof(struct qmi_response_type_v01),
31*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
32*5b29459bSYue Ma 		.tlv_type       = 0x02,
33*5b29459bSYue Ma 		.offset         = offsetof(struct
34*5b29459bSYue Ma 				coex_antenna_switch_to_wlan_resp_msg_v01,
35*5b29459bSYue Ma 				resp),
36*5b29459bSYue Ma 		.ei_array      = qmi_response_type_v01_ei,
37*5b29459bSYue Ma 	},
38*5b29459bSYue Ma 	{
39*5b29459bSYue Ma 		.data_type      = QMI_OPT_FLAG,
40*5b29459bSYue Ma 		.elem_len       = 1,
41*5b29459bSYue Ma 		.elem_size      = sizeof(u8),
42*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
43*5b29459bSYue Ma 		.tlv_type       = 0x10,
44*5b29459bSYue Ma 		.offset         = offsetof(struct
45*5b29459bSYue Ma 				coex_antenna_switch_to_wlan_resp_msg_v01,
46*5b29459bSYue Ma 				grant_valid),
47*5b29459bSYue Ma 	},
48*5b29459bSYue Ma 	{
49*5b29459bSYue Ma 		.data_type      = QMI_UNSIGNED_8_BYTE,
50*5b29459bSYue Ma 		.elem_len       = 1,
51*5b29459bSYue Ma 		.elem_size      = sizeof(u64),
52*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
53*5b29459bSYue Ma 		.tlv_type       = 0x10,
54*5b29459bSYue Ma 		.offset         = offsetof(struct
55*5b29459bSYue Ma 				coex_antenna_switch_to_wlan_resp_msg_v01,
56*5b29459bSYue Ma 				grant),
57*5b29459bSYue Ma 	},
58*5b29459bSYue Ma 	{
59*5b29459bSYue Ma 		.data_type      = QMI_EOTI,
60*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
61*5b29459bSYue Ma 		.tlv_type       = QMI_COMMON_TLV_TYPE,
62*5b29459bSYue Ma 	},
63*5b29459bSYue Ma };
64*5b29459bSYue Ma 
65*5b29459bSYue Ma struct qmi_elem_info coex_antenna_switch_to_mdm_req_msg_v01_ei[] = {
66*5b29459bSYue Ma 	{
67*5b29459bSYue Ma 		.data_type      = QMI_UNSIGNED_8_BYTE,
68*5b29459bSYue Ma 		.elem_len       = 1,
69*5b29459bSYue Ma 		.elem_size      = sizeof(u64),
70*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
71*5b29459bSYue Ma 		.tlv_type       = 0x01,
72*5b29459bSYue Ma 		.offset         = offsetof(struct
73*5b29459bSYue Ma 				coex_antenna_switch_to_mdm_req_msg_v01,
74*5b29459bSYue Ma 				antenna),
75*5b29459bSYue Ma 	},
76*5b29459bSYue Ma 	{
77*5b29459bSYue Ma 		.data_type      = QMI_EOTI,
78*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
79*5b29459bSYue Ma 		.tlv_type       = QMI_COMMON_TLV_TYPE,
80*5b29459bSYue Ma 	},
81*5b29459bSYue Ma };
82*5b29459bSYue Ma 
83*5b29459bSYue Ma struct qmi_elem_info coex_antenna_switch_to_mdm_resp_msg_v01_ei[] = {
84*5b29459bSYue Ma 	{
85*5b29459bSYue Ma 		.data_type      = QMI_STRUCT,
86*5b29459bSYue Ma 		.elem_len       = 1,
87*5b29459bSYue Ma 		.elem_size      = sizeof(struct qmi_response_type_v01),
88*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
89*5b29459bSYue Ma 		.tlv_type       = 0x02,
90*5b29459bSYue Ma 		.offset         = offsetof(struct
91*5b29459bSYue Ma 				coex_antenna_switch_to_mdm_resp_msg_v01,
92*5b29459bSYue Ma 				resp),
93*5b29459bSYue Ma 		.ei_array      = qmi_response_type_v01_ei,
94*5b29459bSYue Ma 	},
95*5b29459bSYue Ma 	{
96*5b29459bSYue Ma 		.data_type      = QMI_EOTI,
97*5b29459bSYue Ma 		.array_type       = NO_ARRAY,
98*5b29459bSYue Ma 		.tlv_type       = QMI_COMMON_TLV_TYPE,
99*5b29459bSYue Ma 	},
100*5b29459bSYue Ma };
101