xref: /wlan-driver/fw-api/hw/qcn9224/v2/tx_fes_status_start_ppdu.h (revision 5113495b16420b49004c444715d2daae2066e7dc)
1 
2 /* Copyright (c) 2022, Qualcomm Innovation Center, Inc. All rights reserved.
3  *
4  * Permission to use, copy, modify, and/or distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15  */
16 
17 
18 
19 
20 
21 
22 
23 
24 
25 
26 #ifndef _TX_FES_STATUS_START_PPDU_H_
27 #define _TX_FES_STATUS_START_PPDU_H_
28 #if !defined(__ASSEMBLER__)
29 #endif
30 
31 #define NUM_OF_DWORDS_TX_FES_STATUS_START_PPDU 4
32 
33 #define NUM_OF_QWORDS_TX_FES_STATUS_START_PPDU 2
34 
35 
36 struct tx_fes_status_start_ppdu {
37 #ifndef WIFI_BIT_ORDER_BIG_ENDIAN
38              uint32_t ppdu_timestamp_lower_32                                 : 32;
39              uint32_t ppdu_timestamp_upper_32                                 : 32;
40              uint32_t subband_mask                                            : 16,
41                       ndp_frame                                               :  2,
42                       reserved_2b                                             :  2,
43                       coex_based_tx_bw                                        :  3,
44                       coex_based_ant_mask                                     :  8,
45                       reserved_2c                                             :  1;
46              uint32_t coex_based_tx_pwr_shared_ant                            :  8,
47                       coex_based_tx_pwr_ant                                   :  8,
48                       concurrent_bt_tx                                        :  1,
49                       concurrent_wlan_tx                                      :  1,
50                       concurrent_wan_tx                                       :  1,
51                       concurrent_wan_rx                                       :  1,
52                       coex_pwr_reduction_bt                                   :  1,
53                       coex_pwr_reduction_wlan                                 :  1,
54                       coex_pwr_reduction_wan                                  :  1,
55                       coex_result_alt_based                                   :  1,
56                       request_packet_bw                                       :  3,
57                       response_type                                           :  5;
58 #else
59              uint32_t ppdu_timestamp_lower_32                                 : 32;
60              uint32_t ppdu_timestamp_upper_32                                 : 32;
61              uint32_t reserved_2c                                             :  1,
62                       coex_based_ant_mask                                     :  8,
63                       coex_based_tx_bw                                        :  3,
64                       reserved_2b                                             :  2,
65                       ndp_frame                                               :  2,
66                       subband_mask                                            : 16;
67              uint32_t response_type                                           :  5,
68                       request_packet_bw                                       :  3,
69                       coex_result_alt_based                                   :  1,
70                       coex_pwr_reduction_wan                                  :  1,
71                       coex_pwr_reduction_wlan                                 :  1,
72                       coex_pwr_reduction_bt                                   :  1,
73                       concurrent_wan_rx                                       :  1,
74                       concurrent_wan_tx                                       :  1,
75                       concurrent_wlan_tx                                      :  1,
76                       concurrent_bt_tx                                        :  1,
77                       coex_based_tx_pwr_ant                                   :  8,
78                       coex_based_tx_pwr_shared_ant                            :  8;
79 #endif
80 };
81 
82 
83 
84 
85 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_LOWER_32_OFFSET                     0x0000000000000000
86 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_LOWER_32_LSB                        0
87 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_LOWER_32_MSB                        31
88 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_LOWER_32_MASK                       0x00000000ffffffff
89 
90 
91 
92 
93 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_UPPER_32_OFFSET                     0x0000000000000000
94 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_UPPER_32_LSB                        32
95 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_UPPER_32_MSB                        63
96 #define TX_FES_STATUS_START_PPDU_PPDU_TIMESTAMP_UPPER_32_MASK                       0xffffffff00000000
97 
98 
99 
100 
101 #define TX_FES_STATUS_START_PPDU_SUBBAND_MASK_OFFSET                                0x0000000000000008
102 #define TX_FES_STATUS_START_PPDU_SUBBAND_MASK_LSB                                   0
103 #define TX_FES_STATUS_START_PPDU_SUBBAND_MASK_MSB                                   15
104 #define TX_FES_STATUS_START_PPDU_SUBBAND_MASK_MASK                                  0x000000000000ffff
105 
106 
107 
108 
109 #define TX_FES_STATUS_START_PPDU_NDP_FRAME_OFFSET                                   0x0000000000000008
110 #define TX_FES_STATUS_START_PPDU_NDP_FRAME_LSB                                      16
111 #define TX_FES_STATUS_START_PPDU_NDP_FRAME_MSB                                      17
112 #define TX_FES_STATUS_START_PPDU_NDP_FRAME_MASK                                     0x0000000000030000
113 
114 
115 
116 
117 #define TX_FES_STATUS_START_PPDU_RESERVED_2B_OFFSET                                 0x0000000000000008
118 #define TX_FES_STATUS_START_PPDU_RESERVED_2B_LSB                                    18
119 #define TX_FES_STATUS_START_PPDU_RESERVED_2B_MSB                                    19
120 #define TX_FES_STATUS_START_PPDU_RESERVED_2B_MASK                                   0x00000000000c0000
121 
122 
123 
124 
125 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_BW_OFFSET                            0x0000000000000008
126 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_BW_LSB                               20
127 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_BW_MSB                               22
128 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_BW_MASK                              0x0000000000700000
129 
130 
131 
132 
133 #define TX_FES_STATUS_START_PPDU_COEX_BASED_ANT_MASK_OFFSET                         0x0000000000000008
134 #define TX_FES_STATUS_START_PPDU_COEX_BASED_ANT_MASK_LSB                            23
135 #define TX_FES_STATUS_START_PPDU_COEX_BASED_ANT_MASK_MSB                            30
136 #define TX_FES_STATUS_START_PPDU_COEX_BASED_ANT_MASK_MASK                           0x000000007f800000
137 
138 
139 
140 
141 #define TX_FES_STATUS_START_PPDU_RESERVED_2C_OFFSET                                 0x0000000000000008
142 #define TX_FES_STATUS_START_PPDU_RESERVED_2C_LSB                                    31
143 #define TX_FES_STATUS_START_PPDU_RESERVED_2C_MSB                                    31
144 #define TX_FES_STATUS_START_PPDU_RESERVED_2C_MASK                                   0x0000000080000000
145 
146 
147 
148 
149 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_SHARED_ANT_OFFSET                0x0000000000000008
150 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_SHARED_ANT_LSB                   32
151 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_SHARED_ANT_MSB                   39
152 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_SHARED_ANT_MASK                  0x000000ff00000000
153 
154 
155 
156 
157 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_ANT_OFFSET                       0x0000000000000008
158 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_ANT_LSB                          40
159 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_ANT_MSB                          47
160 #define TX_FES_STATUS_START_PPDU_COEX_BASED_TX_PWR_ANT_MASK                         0x0000ff0000000000
161 
162 
163 
164 
165 #define TX_FES_STATUS_START_PPDU_CONCURRENT_BT_TX_OFFSET                            0x0000000000000008
166 #define TX_FES_STATUS_START_PPDU_CONCURRENT_BT_TX_LSB                               48
167 #define TX_FES_STATUS_START_PPDU_CONCURRENT_BT_TX_MSB                               48
168 #define TX_FES_STATUS_START_PPDU_CONCURRENT_BT_TX_MASK                              0x0001000000000000
169 
170 
171 
172 
173 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WLAN_TX_OFFSET                          0x0000000000000008
174 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WLAN_TX_LSB                             49
175 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WLAN_TX_MSB                             49
176 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WLAN_TX_MASK                            0x0002000000000000
177 
178 
179 
180 
181 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_TX_OFFSET                           0x0000000000000008
182 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_TX_LSB                              50
183 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_TX_MSB                              50
184 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_TX_MASK                             0x0004000000000000
185 
186 
187 
188 
189 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_RX_OFFSET                           0x0000000000000008
190 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_RX_LSB                              51
191 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_RX_MSB                              51
192 #define TX_FES_STATUS_START_PPDU_CONCURRENT_WAN_RX_MASK                             0x0008000000000000
193 
194 
195 
196 
197 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_BT_OFFSET                       0x0000000000000008
198 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_BT_LSB                          52
199 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_BT_MSB                          52
200 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_BT_MASK                         0x0010000000000000
201 
202 
203 
204 
205 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WLAN_OFFSET                     0x0000000000000008
206 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WLAN_LSB                        53
207 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WLAN_MSB                        53
208 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WLAN_MASK                       0x0020000000000000
209 
210 
211 
212 
213 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WAN_OFFSET                      0x0000000000000008
214 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WAN_LSB                         54
215 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WAN_MSB                         54
216 #define TX_FES_STATUS_START_PPDU_COEX_PWR_REDUCTION_WAN_MASK                        0x0040000000000000
217 
218 
219 
220 
221 #define TX_FES_STATUS_START_PPDU_COEX_RESULT_ALT_BASED_OFFSET                       0x0000000000000008
222 #define TX_FES_STATUS_START_PPDU_COEX_RESULT_ALT_BASED_LSB                          55
223 #define TX_FES_STATUS_START_PPDU_COEX_RESULT_ALT_BASED_MSB                          55
224 #define TX_FES_STATUS_START_PPDU_COEX_RESULT_ALT_BASED_MASK                         0x0080000000000000
225 
226 
227 
228 
229 #define TX_FES_STATUS_START_PPDU_REQUEST_PACKET_BW_OFFSET                           0x0000000000000008
230 #define TX_FES_STATUS_START_PPDU_REQUEST_PACKET_BW_LSB                              56
231 #define TX_FES_STATUS_START_PPDU_REQUEST_PACKET_BW_MSB                              58
232 #define TX_FES_STATUS_START_PPDU_REQUEST_PACKET_BW_MASK                             0x0700000000000000
233 
234 
235 
236 
237 #define TX_FES_STATUS_START_PPDU_RESPONSE_TYPE_OFFSET                               0x0000000000000008
238 #define TX_FES_STATUS_START_PPDU_RESPONSE_TYPE_LSB                                  59
239 #define TX_FES_STATUS_START_PPDU_RESPONSE_TYPE_MSB                                  63
240 #define TX_FES_STATUS_START_PPDU_RESPONSE_TYPE_MASK                                 0xf800000000000000
241 
242 
243 
244 #endif
245