WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hmac_radar_sensor.c 文件参考
#include "hmac_radar_sensor.h"
#include "math.h"
#include "mac_resource_ext.h"
#include "hal_radar_sensor_rom.h"
#include "hmac_hook.h"
#include "hmac_config.h"
#include "hmac_power.h"
#include "hmac_alg_notify.h"
#include "hmac_vap.h"
#include "hmac_ccpriv.h"
#include "frw_util_notifier.h"
#include "hal_mac_rom.h"
#include "hal_phy.h"
#include "hal_mac.h"
#include "hal_rf.h"
#include "cali_data.h"
#include "cali_comp.h"
#include "memory_config_common.h"
#include "hmac_chan_mgmt.h"
#include "hal_chan_mgmt.h"
#include "hmac_feature_interface.h"
#include "hal_rx_rom.h"
#include "hal_device_fsm.h"
hmac_radar_sensor.c 的引用(Include)关系图:

结构体

struct  hmac_radar_sensor_info_stru
 
struct  hmac_radar_sensor_ppa_val_stru
 

宏定义

#define THIS_FILE_ID   OAM_FILE_ID_HMAC_RADAR_SENSOR_C
 
#define THIS_MOD_ID   DIAG_MOD_ID_WIFI_HOST
 
#define RADAR_SENSOR_MAX_LNA_GAIN   7
 
#define RADAR_SENSOR_MAX_VGA_GAIN   31
 
#define RADAR_SENSOR_RX_DELAY_160M   1023
 
#define RADAR_SENSOR_RX_DELAY_80M   1023
 
#define RADAR_SENSOR_MAX_LPF_GAIN   7
 
#define RADAR_SENSOR_MAX_DAC_GAIN   3
 
#define RADAR_SENSOR_MAX_PA_GAIN   255
 
#define RADAR_SENSOR_MAX_PPA_GAIN   65535
 
#define RADAR_SENSOR_MAX_T1   255
 
#define RADAR_SENSOR_MAX_T2   255
 
#define RADAR_SENSOR_MAX_T3   65535
 
#define RADAR_SENSOR_MAX_T4   255
 
#define DEVICE_SUPPORT_RX_NSS_NUM   0
 
#define DEVICE_SUPPORT_MAX_RX_NSS_NUM   3
 
#define MIN_RADAR_PERIOD   1000 /* 支持配置最小1ms的雷达周期,单位us */
 
#define MAX_RADAR_PERIOD   10000 /* 支持配置最大10ms的雷达周期,单位us */
 
#define MIN_RADAR_SENSOR_PHY_CNT   1 /* 支持配置最小phy侧内部循环次数为1 */
 
#define MAX_RADAR_SENSOR_PHY_CNT   32 /* 支持配置最大phy侧内部循环次数为32 */
 
#define MAX_RADAR_SENSOR_CYCLE_CNT   3 /* 支持配置雷达循环次数最大为3次 */
 
#define MAX_RADAR_WORK_MIN_CHAN   1
 
#define MAX_RADAR_WORK_MAX_CHAN   13
 
#define MAX_VGA_GAIN_VALUE   30
 
#define MIN_VGA_GAIN_VALUE   (-2)
 
#define DAC_OUTPUT_VALUE   (-8)
 
#define ADC_INPUT_VALUE   (4)
 
#define PA_CODE_VALUE   15
 
#define PPA_VALUE_CNT   10
 
#define DATA_LEN_TO_SIG_LEN_RATIO   4 /* 4:数据长度转换采样点数比例,一个采样点4个字节 */
 
#define RADAR_SENSOR_TX_MEM_ADDR   0xA98000
 
#define TX_MAX_RADAR_WAVEFORM_LEN   (1024 * 2)
 
#define RADAR_SENSOR_RX_MEM_ADDR   RADAR_SENSOR_RX_MEM_START
 
#define RX_MAX_RADAR_WAVEFORM_LEN   RADAR_SENSOR_RX_MEM_SIZE
 
#define RADAR_RX_DC_COMP_SHIFT_BIT   8
 
#define RADAR_MAX_VGA_DB   24
 
#define RADAR_VGA_REF_DB   32
 
#define RADAR_TX_PWR   11.5
 
#define RADAR_RX_LPF_PWR   3
 

函数

OSAL_STATIC osal_void hmac_radar_sensor_disable (osal_void)
 
OSAL_STATIC void hmac_set_tx_gain_info (osal_u8 lpf_gain, osal_u8 dac_gain, osal_u8 pa_gain, osal_u16 ppa_gain)
 
OSAL_STATIC hmac_radar_sensor_info_struhmac_radar_sensor_get_info (osal_void)
 
OSAL_STATIC hmac_radar_sensor_debug_struhmac_radar_sensor_get_debug_info (osal_void)
 
OSAL_STATIC osal_u8hmac_radar_sensor_get_tx_mem_addr (osal_void)
 
OSAL_STATIC osal_u8hmac_radar_sensor_get_rx_mem_addr (osal_void)
 
OSAL_STATIC osal_void hmac_radar_sensor_clear_tx_mem (osal_void)
 
OSAL_STATIC osal_void hmac_radar_sensor_clear_rx_mem (osal_void)
 
OSAL_STATIC osal_void report_radar_sensor_disable_reason (radar_sensor_disable_reason_enum_uint8 reason)
 
osal_void hmac_radar_sensor_set_report_disable_reason_fn (report_radar_sensor_disable_reason_cb cb)
 
OSAL_STATIC osal_void hmac_radar_sensor_info_init (osal_u16 period_cycle_cnt)
 
OSAL_STATIC osal_void hmac_radar_sensor_info_deinit (osal_void)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_get_work_chan (osal_u8 *channel_num)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_dc_val (osal_void)
 
osal_u32 hmac_radar_sensor_set_rx_dc_val (osal_u8 rxdc_gain_lna_lvl_num, osal_u8 rxdc_gain_vga_lvl_num)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_iq_val (osal_void)
 
osal_u32 hmac_radar_sensor_set_rx_iq_val (osal_u8 lna_code)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_power_val (osal_u16 *atx_pwr_cmp)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_param_check (hmac_radar_sensor_cfg_stru *radar_sensor_cfg)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_config_freq (osal_void)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_config_soc (osal_u8 *waveform_data, osal_u16 waveform_len, osal_u8 one_per_cnt)
 
OSAL_STATIC osal_void hmac_radar_sensor_config_phy (osal_u16 radar_data_len, osal_u8 one_per_cnt, osal_u8 rx_nss)
 
OSAL_STATIC osal_float hmac_radar_sensor_calc_trx_chain (osal_u8 lna_gain, osal_u8 vga_gain)
 
osal_u16 hamc_radar_sensor_get_ppa_gain (void)
 
osal_float hmac_radar_sensor_config_rx_gain (osal_u8 lna_gain, osal_u8 vga_gain, osal_u16 rx_dly_160m, osal_u16 rx_dly_80m)
 
osal_void hmac_radar_sensor_config_ch_num (osal_u8 ch_num)
 
OSAL_STATIC osal_u8 hmac_radar_sensor_get_work_ch_num (osal_void)
 
OSAL_STATIC osal_void hmac_radar_sensor_calc_t3 (osal_u16 radar_data_len, osal_u8 one_per_cnt, osal_u16 *t3)
 
OSAL_STATIC osal_void hmac_radar_sensor_config_mac (osal_u32 radar_period, osal_u16 radar_data_len, osal_u8 one_per_cnt)
 
OSAL_STATIC osal_void hmac_radar_sensor_config_related_reg (osal_bool is_on)
 
radar_sensor_wifi_mode_t hmac_radar_sensor_get_wifi_mode_info (osal_void)
 
OSAL_STATIC osal_u32 hmac_radar_sensor_enable (hmac_radar_sensor_cfg_stru *data)
 
osal_s32 hmac_radar_sensor_start (hmac_radar_sensor_cfg_stru *radar_sensor_cfg)
 
OAL_STATIC osal_void hmac_radar_sensor_del_vap (osal_void)
 
OSAL_STATIC osal_s32 hmac_radar_sensor_complete_handle (hmac_vap_stru *hmac_vap, frw_msg *msg)
 
osal_void hmac_radar_sensor_one_subframe_start (osal_void)
 
OSAL_STATIC osal_bool hmac_radar_sensor_scan_begin (osal_void *notify_data)
 
OSAL_STATIC osal_bool hmac_radar_sensor_scan_end (osal_void *notify_data)
 
osal_u32 hmac_radar_sensor_init (osal_void)
 
osal_void hmac_radar_sensor_deinit (osal_void)
 
osal_u32 hmac_radar_sensor_register_handle_cb (radar_handle_cb cb)
 
osal_void hmac_radar_sensor_cca_sw_opt (osal_bool radar_switch)
 

变量

OSAL_STATIC report_radar_sensor_disable_reason_cb g_report_radar_sensor_disable_reason = OSAL_NULL
 
OSAL_STATIC radar_sensor_wifi_mode_t g_wifi_mode_info = RADAR_SENSOR_WIFI_STA_MODE
 
hmac_radar_sensor_info_stru g_radar_sensor_info
 
uintptr_t g_radar_tx_mem = 0xA98000
 
uintptr_t g_radar_rx_mem = RADAR_SENSOR_RX_MEM_START
 
OSAL_STATIC radar_handle_cb g_radar_handle_cb = 0
 
OSAL_STATIC osal_bool g_is_cb_registered = OSAL_FALSE
 

宏定义说明

◆ ADC_INPUT_VALUE

#define ADC_INPUT_VALUE   (4)

◆ DAC_OUTPUT_VALUE

#define DAC_OUTPUT_VALUE   (-8)

◆ DATA_LEN_TO_SIG_LEN_RATIO

#define DATA_LEN_TO_SIG_LEN_RATIO   4 /* 4:数据长度转换采样点数比例,一个采样点4个字节 */

◆ DEVICE_SUPPORT_MAX_RX_NSS_NUM

#define DEVICE_SUPPORT_MAX_RX_NSS_NUM   3

◆ DEVICE_SUPPORT_RX_NSS_NUM

#define DEVICE_SUPPORT_RX_NSS_NUM   0

◆ MAX_RADAR_PERIOD

#define MAX_RADAR_PERIOD   10000 /* 支持配置最大10ms的雷达周期,单位us */

◆ MAX_RADAR_SENSOR_CYCLE_CNT

#define MAX_RADAR_SENSOR_CYCLE_CNT   3 /* 支持配置雷达循环次数最大为3次 */

◆ MAX_RADAR_SENSOR_PHY_CNT

#define MAX_RADAR_SENSOR_PHY_CNT   32 /* 支持配置最大phy侧内部循环次数为32 */

◆ MAX_RADAR_WORK_MAX_CHAN

#define MAX_RADAR_WORK_MAX_CHAN   13

◆ MAX_RADAR_WORK_MIN_CHAN

#define MAX_RADAR_WORK_MIN_CHAN   1

◆ MAX_VGA_GAIN_VALUE

#define MAX_VGA_GAIN_VALUE   30

◆ MIN_RADAR_PERIOD

#define MIN_RADAR_PERIOD   1000 /* 支持配置最小1ms的雷达周期,单位us */

◆ MIN_RADAR_SENSOR_PHY_CNT

#define MIN_RADAR_SENSOR_PHY_CNT   1 /* 支持配置最小phy侧内部循环次数为1 */

◆ MIN_VGA_GAIN_VALUE

#define MIN_VGA_GAIN_VALUE   (-2)

◆ PA_CODE_VALUE

#define PA_CODE_VALUE   15

◆ PPA_VALUE_CNT

#define PPA_VALUE_CNT   10

◆ RADAR_MAX_VGA_DB

#define RADAR_MAX_VGA_DB   24

◆ RADAR_RX_DC_COMP_SHIFT_BIT

#define RADAR_RX_DC_COMP_SHIFT_BIT   8

◆ RADAR_RX_LPF_PWR

#define RADAR_RX_LPF_PWR   3

◆ RADAR_SENSOR_MAX_DAC_GAIN

#define RADAR_SENSOR_MAX_DAC_GAIN   3

◆ RADAR_SENSOR_MAX_LNA_GAIN

#define RADAR_SENSOR_MAX_LNA_GAIN   7

◆ RADAR_SENSOR_MAX_LPF_GAIN

#define RADAR_SENSOR_MAX_LPF_GAIN   7

◆ RADAR_SENSOR_MAX_PA_GAIN

#define RADAR_SENSOR_MAX_PA_GAIN   255

◆ RADAR_SENSOR_MAX_PPA_GAIN

#define RADAR_SENSOR_MAX_PPA_GAIN   65535

◆ RADAR_SENSOR_MAX_T1

#define RADAR_SENSOR_MAX_T1   255

◆ RADAR_SENSOR_MAX_T2

#define RADAR_SENSOR_MAX_T2   255

◆ RADAR_SENSOR_MAX_T3

#define RADAR_SENSOR_MAX_T3   65535

◆ RADAR_SENSOR_MAX_T4

#define RADAR_SENSOR_MAX_T4   255

◆ RADAR_SENSOR_MAX_VGA_GAIN

#define RADAR_SENSOR_MAX_VGA_GAIN   31

◆ RADAR_SENSOR_RX_DELAY_160M

#define RADAR_SENSOR_RX_DELAY_160M   1023

◆ RADAR_SENSOR_RX_DELAY_80M

#define RADAR_SENSOR_RX_DELAY_80M   1023

◆ RADAR_SENSOR_RX_MEM_ADDR

#define RADAR_SENSOR_RX_MEM_ADDR   RADAR_SENSOR_RX_MEM_START

◆ RADAR_SENSOR_TX_MEM_ADDR

#define RADAR_SENSOR_TX_MEM_ADDR   0xA98000

◆ RADAR_TX_PWR

#define RADAR_TX_PWR   11.5

◆ RADAR_VGA_REF_DB

#define RADAR_VGA_REF_DB   32

◆ RX_MAX_RADAR_WAVEFORM_LEN

#define RX_MAX_RADAR_WAVEFORM_LEN   RADAR_SENSOR_RX_MEM_SIZE

◆ THIS_FILE_ID

#define THIS_FILE_ID   OAM_FILE_ID_HMAC_RADAR_SENSOR_C

◆ THIS_MOD_ID

#define THIS_MOD_ID   DIAG_MOD_ID_WIFI_HOST

◆ TX_MAX_RADAR_WAVEFORM_LEN

#define TX_MAX_RADAR_WAVEFORM_LEN   (1024 * 2)

函数说明

◆ hamc_radar_sensor_get_ppa_gain()

osal_u16 hamc_radar_sensor_get_ppa_gain ( void  )

◆ hmac_radar_sensor_calc_t3()

OSAL_STATIC osal_void hmac_radar_sensor_calc_t3 ( osal_u16  radar_data_len,
osal_u8  one_per_cnt,
osal_u16 t3 
)

◆ hmac_radar_sensor_calc_trx_chain()

OSAL_STATIC osal_float hmac_radar_sensor_calc_trx_chain ( osal_u8  lna_gain,
osal_u8  vga_gain 
)

◆ hmac_radar_sensor_cca_sw_opt()

osal_void hmac_radar_sensor_cca_sw_opt ( osal_bool  radar_switch)

◆ hmac_radar_sensor_clear_rx_mem()

OSAL_STATIC osal_void hmac_radar_sensor_clear_rx_mem ( osal_void  )

◆ hmac_radar_sensor_clear_tx_mem()

OSAL_STATIC osal_void hmac_radar_sensor_clear_tx_mem ( osal_void  )

◆ hmac_radar_sensor_complete_handle()

OSAL_STATIC osal_s32 hmac_radar_sensor_complete_handle ( hmac_vap_stru hmac_vap,
frw_msg msg 
)

◆ hmac_radar_sensor_config_ch_num()

osal_void hmac_radar_sensor_config_ch_num ( osal_u8  ch_num)

◆ hmac_radar_sensor_config_freq()

OSAL_STATIC osal_u32 hmac_radar_sensor_config_freq ( osal_void  )

◆ hmac_radar_sensor_config_mac()

OSAL_STATIC osal_void hmac_radar_sensor_config_mac ( osal_u32  radar_period,
osal_u16  radar_data_len,
osal_u8  one_per_cnt 
)

◆ hmac_radar_sensor_config_phy()

OSAL_STATIC osal_void hmac_radar_sensor_config_phy ( osal_u16  radar_data_len,
osal_u8  one_per_cnt,
osal_u8  rx_nss 
)

◆ hmac_radar_sensor_config_related_reg()

OSAL_STATIC osal_void hmac_radar_sensor_config_related_reg ( osal_bool  is_on)

◆ hmac_radar_sensor_config_rx_gain()

osal_float hmac_radar_sensor_config_rx_gain ( osal_u8  lna_gain,
osal_u8  vga_gain,
osal_u16  rx_dly_160m,
osal_u16  rx_dly_80m 
)

◆ hmac_radar_sensor_config_soc()

OSAL_STATIC osal_u32 hmac_radar_sensor_config_soc ( osal_u8 waveform_data,
osal_u16  waveform_len,
osal_u8  one_per_cnt 
)

◆ hmac_radar_sensor_deinit()

osal_void hmac_radar_sensor_deinit ( osal_void  )

◆ hmac_radar_sensor_del_vap()

OAL_STATIC osal_void hmac_radar_sensor_del_vap ( osal_void  )

◆ hmac_radar_sensor_disable()

OSAL_STATIC osal_void hmac_radar_sensor_disable ( osal_void  )

◆ hmac_radar_sensor_enable()

OSAL_STATIC osal_u32 hmac_radar_sensor_enable ( hmac_radar_sensor_cfg_stru data)

◆ hmac_radar_sensor_get_debug_info()

OSAL_STATIC hmac_radar_sensor_debug_stru * hmac_radar_sensor_get_debug_info ( osal_void  )

◆ hmac_radar_sensor_get_info()

OSAL_STATIC hmac_radar_sensor_info_stru * hmac_radar_sensor_get_info ( osal_void  )

◆ hmac_radar_sensor_get_rx_mem_addr()

OSAL_STATIC osal_u8 * hmac_radar_sensor_get_rx_mem_addr ( osal_void  )

◆ hmac_radar_sensor_get_tx_mem_addr()

OSAL_STATIC osal_u8 * hmac_radar_sensor_get_tx_mem_addr ( osal_void  )

◆ hmac_radar_sensor_get_wifi_mode_info()

radar_sensor_wifi_mode_t hmac_radar_sensor_get_wifi_mode_info ( osal_void  )

◆ hmac_radar_sensor_get_work_ch_num()

OSAL_STATIC osal_u8 hmac_radar_sensor_get_work_ch_num ( osal_void  )

◆ hmac_radar_sensor_get_work_chan()

OSAL_STATIC osal_u32 hmac_radar_sensor_get_work_chan ( osal_u8 channel_num)

◆ hmac_radar_sensor_info_deinit()

OSAL_STATIC osal_void hmac_radar_sensor_info_deinit ( osal_void  )

◆ hmac_radar_sensor_info_init()

OSAL_STATIC osal_void hmac_radar_sensor_info_init ( osal_u16  period_cycle_cnt)

◆ hmac_radar_sensor_init()

osal_u32 hmac_radar_sensor_init ( osal_void  )

◆ hmac_radar_sensor_one_subframe_start()

osal_void hmac_radar_sensor_one_subframe_start ( osal_void  )

◆ hmac_radar_sensor_param_check()

OSAL_STATIC osal_u32 hmac_radar_sensor_param_check ( hmac_radar_sensor_cfg_stru radar_sensor_cfg)

◆ hmac_radar_sensor_register_handle_cb()

osal_u32 hmac_radar_sensor_register_handle_cb ( radar_handle_cb  cb)

◆ hmac_radar_sensor_scan_begin()

OSAL_STATIC osal_bool hmac_radar_sensor_scan_begin ( osal_void notify_data)

◆ hmac_radar_sensor_scan_end()

OSAL_STATIC osal_bool hmac_radar_sensor_scan_end ( osal_void notify_data)

◆ hmac_radar_sensor_set_report_disable_reason_fn()

osal_void hmac_radar_sensor_set_report_disable_reason_fn ( report_radar_sensor_disable_reason_cb  cb)

◆ hmac_radar_sensor_set_rx_dc_val()

osal_u32 hmac_radar_sensor_set_rx_dc_val ( osal_u8  rxdc_gain_lna_lvl_num,
osal_u8  rxdc_gain_vga_lvl_num 
)

◆ hmac_radar_sensor_set_rx_iq_val()

osal_u32 hmac_radar_sensor_set_rx_iq_val ( osal_u8  lna_code)

◆ hmac_radar_sensor_set_tx_dc_val()

OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_dc_val ( osal_void  )

◆ hmac_radar_sensor_set_tx_iq_val()

OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_iq_val ( osal_void  )

◆ hmac_radar_sensor_set_tx_power_val()

OSAL_STATIC osal_u32 hmac_radar_sensor_set_tx_power_val ( osal_u16 atx_pwr_cmp)

◆ hmac_radar_sensor_start()

osal_s32 hmac_radar_sensor_start ( hmac_radar_sensor_cfg_stru radar_sensor_cfg)

◆ hmac_set_tx_gain_info()

OSAL_STATIC void hmac_set_tx_gain_info ( osal_u8  lpf_gain,
osal_u8  dac_gain,
osal_u8  pa_gain,
osal_u16  ppa_gain 
)

◆ report_radar_sensor_disable_reason()

OSAL_STATIC osal_void report_radar_sensor_disable_reason ( radar_sensor_disable_reason_enum_uint8  reason)

变量说明

◆ g_is_cb_registered

OSAL_STATIC osal_bool g_is_cb_registered = OSAL_FALSE

◆ g_radar_handle_cb

OSAL_STATIC radar_handle_cb g_radar_handle_cb = 0

◆ g_radar_rx_mem

◆ g_radar_sensor_info

hmac_radar_sensor_info_stru g_radar_sensor_info

◆ g_radar_tx_mem

uintptr_t g_radar_tx_mem = 0xA98000

◆ g_report_radar_sensor_disable_reason

OSAL_STATIC report_radar_sensor_disable_reason_cb g_report_radar_sensor_disable_reason = OSAL_NULL

◆ g_wifi_mode_info