Linux Audio

Check our new training course

Embedded Linux training

Mar 31-Apr 8, 2025
Register
Loading...
  1/*
  2 * This file is part of wl12xx
  3 *
  4 * Copyright (C) 2011 Texas Instruments Inc.
  5 *
  6 * This program is free software; you can redistribute it and/or
  7 * modify it under the terms of the GNU General Public License
  8 * version 2 as published by the Free Software Foundation.
  9 *
 10 * This program is distributed in the hope that it will be useful, but
 11 * WITHOUT ANY WARRANTY; without even the implied warranty of
 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 13 * General Public License for more details.
 14 *
 15 * You should have received a copy of the GNU General Public License
 16 * along with this program; if not, write to the Free Software
 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 18 * 02110-1301 USA
 19 *
 20 */
 21
 22#ifndef __WL12XX_CONF_H__
 23#define __WL12XX_CONF_H__
 24
 25/* these are number of channels on the band divided by two, rounded up */
 26#define CONF_TX_PWR_COMPENSATION_LEN_2 7
 27#define CONF_TX_PWR_COMPENSATION_LEN_5 18
 28
 29struct wl12xx_conf_rf {
 30	/*
 31	 * Per channel power compensation for 2.4GHz
 32	 *
 33	 * Range: s8
 34	 */
 35	u8 tx_per_channel_power_compensation_2[CONF_TX_PWR_COMPENSATION_LEN_2];
 36
 37	/*
 38	 * Per channel power compensation for 5GHz
 39	 *
 40	 * Range: s8
 41	 */
 42	u8 tx_per_channel_power_compensation_5[CONF_TX_PWR_COMPENSATION_LEN_5];
 43};
 44
 45struct wl12xx_priv_conf {
 46	struct wl12xx_conf_rf rf;
 47	struct conf_memory_settings mem_wl127x;
 48};
 49
 50enum wl12xx_sg_params {
 51	/*
 52	* Configure the min and max time BT gains the antenna
 53	* in WLAN / BT master basic rate
 54	*
 55	* Range: 0 - 255 (ms)
 56	*/
 57	WL12XX_CONF_SG_ACL_BT_MASTER_MIN_BR = 0,
 58	WL12XX_CONF_SG_ACL_BT_MASTER_MAX_BR,
 59
 60	/*
 61	* Configure the min and max time BT gains the antenna
 62	* in WLAN / BT slave basic rate
 63	*
 64	* Range: 0 - 255 (ms)
 65	*/
 66	WL12XX_CONF_SG_ACL_BT_SLAVE_MIN_BR,
 67	WL12XX_CONF_SG_ACL_BT_SLAVE_MAX_BR,
 68
 69	/*
 70	* Configure the min and max time BT gains the antenna
 71	* in WLAN / BT master EDR
 72	*
 73	* Range: 0 - 255 (ms)
 74	*/
 75	WL12XX_CONF_SG_ACL_BT_MASTER_MIN_EDR,
 76	WL12XX_CONF_SG_ACL_BT_MASTER_MAX_EDR,
 77
 78	/*
 79	* Configure the min and max time BT gains the antenna
 80	* in WLAN / BT slave EDR
 81	*
 82	* Range: 0 - 255 (ms)
 83	*/
 84	WL12XX_CONF_SG_ACL_BT_SLAVE_MIN_EDR,
 85	WL12XX_CONF_SG_ACL_BT_SLAVE_MAX_EDR,
 86
 87	/*
 88	* The maximum time WLAN can gain the antenna
 89	* in WLAN PSM / BT master/slave BR
 90	*
 91	* Range: 0 - 255 (ms)
 92	*/
 93	WL12XX_CONF_SG_ACL_WLAN_PS_MASTER_BR,
 94	WL12XX_CONF_SG_ACL_WLAN_PS_SLAVE_BR,
 95
 96	/*
 97	* The maximum time WLAN can gain the antenna
 98	* in WLAN PSM / BT master/slave EDR
 99	*
100	* Range: 0 - 255 (ms)
101	*/
102	WL12XX_CONF_SG_ACL_WLAN_PS_MASTER_EDR,
103	WL12XX_CONF_SG_ACL_WLAN_PS_SLAVE_EDR,
104
105	/* TODO: explain these values */
106	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_MASTER_MIN_BR,
107	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_MASTER_MAX_BR,
108	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_SLAVE_MIN_BR,
109	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_SLAVE_MAX_BR,
110	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_MASTER_MIN_EDR,
111	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_MASTER_MAX_EDR,
112	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_SLAVE_MIN_EDR,
113	WL12XX_CONF_SG_ACL_WLAN_ACTIVE_SLAVE_MAX_EDR,
114
115	WL12XX_CONF_SG_ACL_ACTIVE_SCAN_WLAN_BR,
116	WL12XX_CONF_SG_ACL_ACTIVE_SCAN_WLAN_EDR,
117	WL12XX_CONF_SG_ACL_PASSIVE_SCAN_BT_BR,
118	WL12XX_CONF_SG_ACL_PASSIVE_SCAN_WLAN_BR,
119	WL12XX_CONF_SG_ACL_PASSIVE_SCAN_BT_EDR,
120	WL12XX_CONF_SG_ACL_PASSIVE_SCAN_WLAN_EDR,
121
122	/*
123	* Compensation percentage of probe requests when scan initiated
124	* during BT voice/ACL link.
125	*
126	* Range: 0 - 255 (%)
127	*/
128	WL12XX_CONF_SG_AUTO_SCAN_PROBE_REQ,
129
130	/*
131	* Compensation percentage of probe requests when active scan initiated
132	* during BT voice
133	*
134	* Range: 0 - 255 (%)
135	*/
136	WL12XX_CONF_SG_ACTIVE_SCAN_DURATION_FACTOR_HV3,
137
138	/*
139	* Compensation percentage of WLAN active scan window if initiated
140	* during BT A2DP
141	*
142	* Range: 0 - 1000 (%)
143	*/
144	WL12XX_CONF_SG_ACTIVE_SCAN_DURATION_FACTOR_A2DP,
145
146	/*
147	* Compensation percentage of WLAN passive scan window if initiated
148	* during BT A2DP BR
149	*
150	* Range: 0 - 1000 (%)
151	*/
152	WL12XX_CONF_SG_PASSIVE_SCAN_DUR_FACTOR_A2DP_BR,
153
154	/*
155	* Compensation percentage of WLAN passive scan window if initiated
156	* during BT A2DP EDR
157	*
158	* Range: 0 - 1000 (%)
159	*/
160	WL12XX_CONF_SG_PASSIVE_SCAN_DUR_FACTOR_A2DP_EDR,
161
162	/*
163	* Compensation percentage of WLAN passive scan window if initiated
164	* during BT voice
165	*
166	* Range: 0 - 1000 (%)
167	*/
168	WL12XX_CONF_SG_PASSIVE_SCAN_DUR_FACTOR_HV3,
169
170	/* TODO: explain these values */
171	WL12XX_CONF_SG_CONSECUTIVE_HV3_IN_PASSIVE_SCAN,
172	WL12XX_CONF_SG_BCN_HV3_COLL_THR_IN_PASSIVE_SCAN,
173	WL12XX_CONF_SG_TX_RX_PROTECT_BW_IN_PASSIVE_SCAN,
174
175	/*
176	* Defines whether the SG will force WLAN host to enter/exit PSM
177	*
178	* Range: 1 - SG can force, 0 - host handles PSM
179	*/
180	WL12XX_CONF_SG_STA_FORCE_PS_IN_BT_SCO,
181
182	/*
183	* Defines antenna configuration (single/dual antenna)
184	*
185	* Range: 0 - single antenna, 1 - dual antenna
186	*/
187	WL12XX_CONF_SG_ANTENNA_CONFIGURATION,
188
189	/*
190	* The threshold (percent) of max consecutive beacon misses before
191	* increasing priority of beacon reception.
192	*
193	* Range: 0 - 100 (%)
194	*/
195	WL12XX_CONF_SG_BEACON_MISS_PERCENT,
196
197	/*
198	* Protection time of the DHCP procedure.
199	*
200	* Range: 0 - 100000 (ms)
201	*/
202	WL12XX_CONF_SG_DHCP_TIME,
203
204	/*
205	* RX guard time before the beginning of a new BT voice frame during
206	* which no new WLAN trigger frame is transmitted.
207	*
208	* Range: 0 - 100000 (us)
209	*/
210	WL12XX_CONF_SG_RXT,
211
212	/*
213	* TX guard time before the beginning of a new BT voice frame during
214	* which no new WLAN frame is transmitted.
215	*
216	* Range: 0 - 100000 (us)
217	*/
218	WL12XX_CONF_SG_TXT,
219
220	/*
221	* Enable adaptive RXT/TXT algorithm. If disabled, the host values
222	* will be utilized.
223	*
224	* Range: 0 - disable, 1 - enable
225	*/
226	WL12XX_CONF_SG_ADAPTIVE_RXT_TXT,
227
228	/* TODO: explain this value */
229	WL12XX_CONF_SG_GENERAL_USAGE_BIT_MAP,
230
231	/*
232	* Number of consecutive BT voice frames not interrupted by WLAN
233	*
234	* Range: 0 - 100
235	*/
236	WL12XX_CONF_SG_HV3_MAX_SERVED,
237
238	/*
239	* The used WLAN legacy service period during active BT ACL link
240	*
241	* Range: 0 - 255 (ms)
242	*/
243	WL12XX_CONF_SG_PS_POLL_TIMEOUT,
244
245	/*
246	* The used WLAN UPSD service period during active BT ACL link
247	*
248	* Range: 0 - 255 (ms)
249	*/
250	WL12XX_CONF_SG_UPSD_TIMEOUT,
251
252	WL12XX_CONF_SG_CONSECUTIVE_CTS_THRESHOLD,
253	WL12XX_CONF_SG_STA_RX_WINDOW_AFTER_DTIM,
254	WL12XX_CONF_SG_STA_CONNECTION_PROTECTION_TIME,
255
256	/* AP params */
257	WL12XX_CONF_AP_BEACON_MISS_TX,
258	WL12XX_CONF_AP_RX_WINDOW_AFTER_BEACON,
259	WL12XX_CONF_AP_BEACON_WINDOW_INTERVAL,
260	WL12XX_CONF_AP_CONNECTION_PROTECTION_TIME,
261	WL12XX_CONF_AP_BT_ACL_VAL_BT_SERVE_TIME,
262	WL12XX_CONF_AP_BT_ACL_VAL_WL_SERVE_TIME,
263
264	/* CTS Diluting params */
265	WL12XX_CONF_SG_CTS_DILUTED_BAD_RX_PACKETS_TH,
266	WL12XX_CONF_SG_CTS_CHOP_IN_DUAL_ANT_SCO_MASTER,
267
268	WL12XX_CONF_SG_TEMP_PARAM_1,
269	WL12XX_CONF_SG_TEMP_PARAM_2,
270	WL12XX_CONF_SG_TEMP_PARAM_3,
271	WL12XX_CONF_SG_TEMP_PARAM_4,
272	WL12XX_CONF_SG_TEMP_PARAM_5,
273	WL12XX_CONF_SG_TEMP_PARAM_6,
274	WL12XX_CONF_SG_TEMP_PARAM_7,
275	WL12XX_CONF_SG_TEMP_PARAM_8,
276	WL12XX_CONF_SG_TEMP_PARAM_9,
277	WL12XX_CONF_SG_TEMP_PARAM_10,
278
279	WL12XX_CONF_SG_PARAMS_MAX,
280	WL12XX_CONF_SG_PARAMS_ALL = 0xff
281};
282
283#endif /* __WL12XX_CONF_H__ */
 1/*
 2 * This file is part of wl12xx
 3 *
 4 * Copyright (C) 2011 Texas Instruments Inc.
 5 *
 6 * This program is free software; you can redistribute it and/or
 7 * modify it under the terms of the GNU General Public License
 8 * version 2 as published by the Free Software Foundation.
 9 *
10 * This program is distributed in the hope that it will be useful, but
11 * WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 * General Public License for more details.
14 *
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
18 * 02110-1301 USA
19 *
20 */
21
22#ifndef __WL12XX_CONF_H__
23#define __WL12XX_CONF_H__
24
25/* these are number of channels on the band divided by two, rounded up */
26#define CONF_TX_PWR_COMPENSATION_LEN_2 7
27#define CONF_TX_PWR_COMPENSATION_LEN_5 18
28
29struct wl12xx_conf_rf {
30	/*
31	 * Per channel power compensation for 2.4GHz
32	 *
33	 * Range: s8
34	 */
35	u8 tx_per_channel_power_compensation_2[CONF_TX_PWR_COMPENSATION_LEN_2];
36
37	/*
38	 * Per channel power compensation for 5GHz
39	 *
40	 * Range: s8
41	 */
42	u8 tx_per_channel_power_compensation_5[CONF_TX_PWR_COMPENSATION_LEN_5];
43};
44
45struct wl12xx_priv_conf {
46	struct wl12xx_conf_rf rf;
47	struct conf_memory_settings mem_wl127x;
48};
49
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50#endif /* __WL12XX_CONF_H__ */