1 /* SPDX-License-Identifier: GPL-2.0 */
2 /******************************************************************************
4 * Copyright(c) 2007 - 2016 Realtek Corporation.
7 * wlanfae <wlanfae@realtek.com>
8 * Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
11 * Larry Finger <Larry.Finger@lwfinger.net>
13 *****************************************************************************/
14 #ifndef __INC_ADCSMP_H
15 #define __INC_ADCSMP_H
17 #define DYNAMIC_LA_MODE "1.0" /*2016.07.15 Dino */
19 struct rt_adcsmp_string {
26 enum rt_adcsmp_trig_sel {
27 PHYDM_ADC_BB_TRIG = 0,
28 PHYDM_ADC_MAC_TRIG = 1,
29 PHYDM_ADC_RF0_TRIG = 2,
30 PHYDM_ADC_RF1_TRIG = 3,
34 enum rt_adcsmp_trig_sig_sel {
35 ADCSMP_TRIG_CRCOK = 0,
36 ADCSMP_TRIG_CRCFAIL = 1,
41 enum rt_adcsmp_state {
42 ADCSMP_STATE_IDLE = 0,
44 ADCSMP_STATE_QUERY = 2
48 struct rt_adcsmp_string adc_smp_buf;
49 enum rt_adcsmp_state adc_smp_state;
60 u8 la_work_item_index;
63 void adc_smp_set(void *dm_void, u8 trig_mode, u32 trig_sig_sel,
64 u8 dma_data_sig_sel, u32 trigger_time, u16 polling_time);
66 void adc_smp_query(void *dm_void, void *output, u32 out_len, u32 *pused);
68 s32 adc_smp_get_sample_counts(void *dm_void);
70 s32 adc_smp_query_single_data(void *dm_void, void *output, u32 out_len,
73 void adc_smp_stop(void *dm_void);
75 void adc_smp_init(void *dm_void);
77 void adc_smp_de_init(void *dm_void);
79 void phydm_la_mode_bb_setting(void *dm_void);
81 void phydm_la_mode_set_trigger_time(void *dm_void, u32 trigger_time_mu_sec);
83 void phydm_lamode_trigger_setting(void *dm_void, char input[][16], u32 *_used,
84 char *output, u32 *_out_len, u32 input_num);