qcacmn: Public definitions for agile Spectral
Add agile Spectral capability, Spectral scan frequency parameter, and Spectral mode. CRs-Fixed: 2446467 Change-Id: I8e82469bb362228a029583ec4b7a29b2404e47df
This commit is contained in:
@@ -55,30 +55,45 @@
|
||||
/*
|
||||
* ioctl parameter types
|
||||
*/
|
||||
enum spectral_params {
|
||||
SPECTRAL_PARAM_FFT_PERIOD = 1,
|
||||
SPECTRAL_PARAM_SCAN_PERIOD,
|
||||
SPECTRAL_PARAM_SCAN_COUNT,
|
||||
SPECTRAL_PARAM_SHORT_REPORT,
|
||||
SPECTRAL_PARAM_SPECT_PRI,
|
||||
SPECTRAL_PARAM_FFT_SIZE,
|
||||
SPECTRAL_PARAM_GC_ENA,
|
||||
SPECTRAL_PARAM_RESTART_ENA,
|
||||
SPECTRAL_PARAM_NOISE_FLOOR_REF,
|
||||
SPECTRAL_PARAM_INIT_DELAY,
|
||||
SPECTRAL_PARAM_NB_TONE_THR,
|
||||
SPECTRAL_PARAM_STR_BIN_THR,
|
||||
SPECTRAL_PARAM_WB_RPT_MODE,
|
||||
SPECTRAL_PARAM_RSSI_RPT_MODE,
|
||||
SPECTRAL_PARAM_RSSI_THR,
|
||||
SPECTRAL_PARAM_PWR_FORMAT,
|
||||
SPECTRAL_PARAM_RPT_MODE,
|
||||
SPECTRAL_PARAM_BIN_SCALE,
|
||||
SPECTRAL_PARAM_DBM_ADJ,
|
||||
SPECTRAL_PARAM_CHN_MASK,
|
||||
SPECTRAL_PARAM_ACTIVE,
|
||||
SPECTRAL_PARAM_STOP,
|
||||
SPECTRAL_PARAM_ENABLE,
|
||||
SPECTRAL_PARAM_FREQUENCY,
|
||||
SPECTRAL_PARAM_AFTER_LAST,
|
||||
SPECTRAL_PARAM_MAX = SPECTRAL_PARAM_AFTER_LAST - 1,
|
||||
};
|
||||
|
||||
#define SPECTRAL_PARAM_FFT_PERIOD (1)
|
||||
#define SPECTRAL_PARAM_SCAN_PERIOD (2)
|
||||
#define SPECTRAL_PARAM_SCAN_COUNT (3)
|
||||
#define SPECTRAL_PARAM_SHORT_REPORT (4)
|
||||
#define SPECTRAL_PARAM_SPECT_PRI (5)
|
||||
#define SPECTRAL_PARAM_FFT_SIZE (6)
|
||||
#define SPECTRAL_PARAM_GC_ENA (7)
|
||||
#define SPECTRAL_PARAM_RESTART_ENA (8)
|
||||
#define SPECTRAL_PARAM_NOISE_FLOOR_REF (9)
|
||||
#define SPECTRAL_PARAM_INIT_DELAY (10)
|
||||
#define SPECTRAL_PARAM_NB_TONE_THR (11)
|
||||
#define SPECTRAL_PARAM_STR_BIN_THR (12)
|
||||
#define SPECTRAL_PARAM_WB_RPT_MODE (13)
|
||||
#define SPECTRAL_PARAM_RSSI_RPT_MODE (14)
|
||||
#define SPECTRAL_PARAM_RSSI_THR (15)
|
||||
#define SPECTRAL_PARAM_PWR_FORMAT (16)
|
||||
#define SPECTRAL_PARAM_RPT_MODE (17)
|
||||
#define SPECTRAL_PARAM_BIN_SCALE (18)
|
||||
#define SPECTRAL_PARAM_DBM_ADJ (19)
|
||||
#define SPECTRAL_PARAM_CHN_MASK (20)
|
||||
#define SPECTRAL_PARAM_ACTIVE (21)
|
||||
#define SPECTRAL_PARAM_STOP (22)
|
||||
#define SPECTRAL_PARAM_ENABLE (23)
|
||||
/**
|
||||
* enum spectral_scan_mode - Spectral scan mode
|
||||
* @SPECTRAL_SCAN_MODE_NORMAL: Normal mode
|
||||
* @SPECTRAL_SCAN_MODE_AGILE: Agile mode
|
||||
*/
|
||||
enum spectral_scan_mode {
|
||||
SPECTRAL_SCAN_MODE_NORMAL,
|
||||
SPECTRAL_SCAN_MODE_AGILE,
|
||||
SPECTRAL_SCAN_MODE_MAX,
|
||||
};
|
||||
|
||||
struct spectral_ioctl_params {
|
||||
int16_t spectral_fft_period;
|
||||
@@ -158,6 +173,16 @@ enum spectral_cap_hw_gen {
|
||||
* @ss_nf_cal: nf calibrated values for ctl+ext
|
||||
* @ss_nf_pwr: nf pwr values for ctl+ext
|
||||
* @ss_nf_temp_data: temperature data taken during nf scan
|
||||
* @ss_frequency: This specifies the frequency span over which Spectral
|
||||
* scan would be carried out. Its value depends on the
|
||||
* Spectral scan mode.
|
||||
* Normal mode:-
|
||||
* Not applicable. Spectral scan would happen in the
|
||||
* operating span.
|
||||
* Agile mode:-
|
||||
* Center frequency (in MHz) of the interested span
|
||||
* or center frequency (in MHz) of any WLAN channel
|
||||
* in the interested span.
|
||||
*/
|
||||
struct spectral_config {
|
||||
uint16_t ss_fft_period;
|
||||
@@ -184,6 +209,7 @@ struct spectral_config {
|
||||
int8_t ss_nf_cal[AH_MAX_CHAINS * 2];
|
||||
int8_t ss_nf_pwr[AH_MAX_CHAINS * 2];
|
||||
int32_t ss_nf_temp_data;
|
||||
uint32_t ss_frequency;
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -199,6 +225,7 @@ struct spectral_config {
|
||||
* @high_level_offset: high_level_offset
|
||||
* @rssi_thr: rssi_thr
|
||||
* @default_agc_max_gain: default_agc_max_gain
|
||||
* @agile_spectral_cap: agile Spectral capability
|
||||
*/
|
||||
struct spectral_caps {
|
||||
uint8_t phydiag_cap;
|
||||
@@ -212,6 +239,7 @@ struct spectral_caps {
|
||||
int16_t high_level_offset;
|
||||
int16_t rssi_thr;
|
||||
uint8_t default_agc_max_gain;
|
||||
bool agile_spectral_cap;
|
||||
};
|
||||
|
||||
#define SPECTRAL_IOCTL_PARAM_NOVAL (65535)
|
||||
@@ -314,6 +342,7 @@ struct spectral_classifier_params {
|
||||
* @noise_floor_sec80: Indicates the current noise floor for secondary 80
|
||||
* segment
|
||||
* @ch_width: Channel width 20/40/80/160 MHz
|
||||
* @spectral_mode: Spectral scan mode
|
||||
*/
|
||||
struct spectral_samp_data {
|
||||
int16_t spectral_data_len;
|
||||
@@ -370,6 +399,7 @@ struct spectral_samp_data {
|
||||
uint8_t spectral_agc_total_gain_sec80;
|
||||
uint8_t spectral_gainchange;
|
||||
uint8_t spectral_gainchange_sec80;
|
||||
enum spectral_scan_mode spectral_mode;
|
||||
} __packed;
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user