270 lines
6.5 KiB
C
270 lines
6.5 KiB
C
/*
|
|
* Copyright (c) CompanyNameMagicTag 2012-2018. All rights reserved.
|
|
* Description: Phy NV definitions
|
|
* Author: CompanyName
|
|
* Create: 2012-07-16
|
|
*/
|
|
|
|
#ifndef PHY_NV_21_H
|
|
#define PHY_NV_21_H
|
|
|
|
#include "soc_types.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* Base value of the changed ID of the NV item */
|
|
/* Base value of the changed ID of the NV item */
|
|
#define DIAG_CMD_TONEMASK_NV_STRU_ID 0x020
|
|
#define DIAG_CMD_PHY_MAIN_PARAM_NV_STRU_ID 0x021
|
|
#define DIAG_CMD_NTB_CALC_NV_ID 0x022
|
|
#define DIAG_CMD_PHY_STUB_NV_STRU_ID 0x023
|
|
#define DIAG_CMD_DIGITAL_PWR_NV_STRU_ID 0x024
|
|
#define DIAG_CMD_AFE_PWR_NV_STRU_ID 0x025
|
|
#define DIAG_CMD_SPC_NV_STRU_ID 0x02d
|
|
#define DIAG_CMD_MAX_NV_ID DIAG_CMD_SPC_NV_STRU_ID
|
|
|
|
#define MAX_FREQ_NUM_V100 9 /* Number of V100 frequency bands (7) */
|
|
#define FREQ_MAX_CNT 8
|
|
|
|
#define MAX_TONEMASK_NUM 8
|
|
#define NBI_START_STOP_CNT 3
|
|
#define FREQ_BAND_CNT 3
|
|
#define FREQ_INFO_LEN 15
|
|
|
|
/* Data Structure Definition */
|
|
typedef struct {
|
|
td_u8 param1;
|
|
td_u8 param2;
|
|
td_u8 param3;
|
|
td_u8 param4;
|
|
} freq_self_detect_mask_stru;
|
|
|
|
typedef struct {
|
|
td_u32 param1 : 8;
|
|
td_u32 param2 : 1;
|
|
td_u32 param3 : 8;
|
|
td_u32 param4 : 6;
|
|
td_u32 param5 : 3;
|
|
td_u32 param6 : 6;
|
|
|
|
td_u32 param7 : 2;
|
|
td_u32 param8 : 7;
|
|
td_u32 param9 : 7;
|
|
td_u32 param10 : 7;
|
|
td_u32 param11 : 7;
|
|
td_u32 param12 : 1;
|
|
td_u32 param13 : 1;
|
|
|
|
freq_self_detect_mask_stru param14[4]; /* 4 items in mask entry */
|
|
|
|
td_u32 param15 : 1;
|
|
td_u32 param16 : 7;
|
|
td_s32 param17 : 7;
|
|
td_u32 param18 : 14;
|
|
td_u32 param19 : 3;
|
|
|
|
td_u32 param20 : 5;
|
|
td_u32 param21 : 6;
|
|
td_u32 param22 : 1;
|
|
td_u32 param23 : 20;
|
|
|
|
td_u32 param24 : 14;
|
|
td_u32 param25 : 14;
|
|
td_u32 param26 : 4;
|
|
|
|
td_u32 param27 : 14;
|
|
td_u32 param28 : 5;
|
|
td_u32 param29 : 1;
|
|
td_u32 param30 : 5;
|
|
td_u32 param31 : 7;
|
|
|
|
td_u32 param33 : 8;
|
|
td_u32 param34 : 8;
|
|
td_u32 param35 : 8;
|
|
td_u32 param36 : 8;
|
|
|
|
td_u32 param37;
|
|
|
|
td_u8 param38 : 1;
|
|
td_u8 param39 : 1;
|
|
td_u8 param40 : 1;
|
|
td_u8 param41 : 4;
|
|
td_u8 param42 : 1;
|
|
td_u8 param43[NBI_START_STOP_CNT];
|
|
|
|
td_u8 param44[NBI_START_STOP_CNT];
|
|
td_u8 param45;
|
|
|
|
td_u16 param46[NBI_START_STOP_CNT];
|
|
td_u16 param47 : 8;
|
|
td_u16 param48 : 8;
|
|
|
|
td_u8 param49;
|
|
td_u8 param50;
|
|
td_s8 param51;
|
|
td_s8 param52;
|
|
|
|
td_u16 param53 : 12;
|
|
td_u16 param54 : 3;
|
|
td_u16 param55 : 1;
|
|
td_u8 param56;
|
|
td_u8 param57;
|
|
|
|
td_u8 param58;
|
|
td_u8 param59;
|
|
td_u16 param60;
|
|
|
|
td_u32 param61 : 1;
|
|
td_u32 param62 : 1;
|
|
td_u32 param63 : 1;
|
|
td_u32 param64 : 8;
|
|
td_u32 param65 : 21;
|
|
} diag_cmd_phy_main_param_nv_stru;
|
|
|
|
typedef struct {
|
|
td_u32 param[MAX_TONEMASK_NUM];
|
|
} diag_cmd_tonemask_nv_mask_stru; /* 32 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u16 param1;
|
|
td_u8 param2;
|
|
td_u8 param3;
|
|
|
|
td_u32 param4;
|
|
td_u16 param5;
|
|
td_u16 param6;
|
|
} diag_cmd_ntb_calc_nv_mask_stru; /* 30 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u8 param1[FREQ_MAX_CNT];
|
|
} diag_cmd_digital_pwr_nv_mask_stru; /* 8 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u8 param1;
|
|
td_u8 param2[3]; /* Reserved 3Bytes */
|
|
} diag_cmd_afe_pwr_nv_mask_stru; /* 4 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u8 power_adjust[FREQ_MAX_CNT]; /* Indicates the adjusted transmit power. Value range: -40 to +26.
|
|
* The configured value is the corresponding complement.
|
|
*/
|
|
} diag_cmd_digital_pwr_nv_stru; /* 8 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u8 mpw_afe_gain;
|
|
td_u8 pad[3]; /* Reserved 3Bytes */
|
|
} diag_cmd_afe_pwr_nv_stru; /* 4 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u8 param1;
|
|
td_u8 param2;
|
|
td_u8 param3;
|
|
td_u8 param4;
|
|
|
|
td_u8 param5;
|
|
td_u8 param6;
|
|
td_u8 param7;
|
|
td_u8 param8;
|
|
|
|
td_u8 param9;
|
|
td_u8 param10;
|
|
td_u8 param11;
|
|
td_u8 param12;
|
|
|
|
td_u8 param13;
|
|
td_u8 param14;
|
|
td_u16 param15;
|
|
|
|
td_u8 param16;
|
|
td_u8 param17;
|
|
td_u8 param18;
|
|
td_u8 param19;
|
|
td_u32 param20;
|
|
td_u32 param21;
|
|
|
|
td_u32 param22;
|
|
td_u32 param23;
|
|
td_u16 param24;
|
|
td_u8 param25;
|
|
td_u8 param26;
|
|
} diag_cmd_phy_stub_nv_mask_stru; /* 36 bytes in total */
|
|
|
|
typedef struct {
|
|
td_u32 param_w0 : 1;
|
|
td_u32 param_w1 : 1;
|
|
td_u32 param_w2 : 1;
|
|
td_u32 param_w3 : 1;
|
|
td_u32 param_w4 : 1;
|
|
td_u32 param_w5 : 1;
|
|
td_u32 param_w6 : 1;
|
|
td_u32 param_w7 : 1;
|
|
td_u32 param_w8 : 1;
|
|
td_u32 param_w9 : 1;
|
|
td_u32 param_w10 : 1;
|
|
td_u32 reserve : 21;
|
|
} param_w_stru;
|
|
|
|
typedef struct {
|
|
td_u16 spc_cycle_num;
|
|
td_bool is_rcv_win_enable; /* Indicates whether the receive window is enabled. */
|
|
td_u8 spc_rxlpf_mul2_en;
|
|
|
|
td_u8 spc_rx_dec51200_mul2_en;
|
|
td_u8 spc_rx_dec10240_mul2_en;
|
|
td_u8 spc_rx_dec2048_mul2_en;
|
|
td_u8 spc_rx_dec512_mul2_en;
|
|
|
|
td_u8 spc_rx_dec128_mul2_en;
|
|
td_u8 spc_rx_dec32_mul2_en;
|
|
td_u8 spc_rx_dec8_mul2_en;
|
|
td_u8 tx_space_en;
|
|
|
|
td_u8 tx_mark_en;
|
|
td_bool is_spc_enable;
|
|
td_u8 tx_right_shift;
|
|
td_u8 tx6p25shift_num;
|
|
|
|
td_u8 tx_up_convert_freq;
|
|
td_u8 peakdisttoler;
|
|
td_u8 syn_cc_window_en;
|
|
td_u8 sync_win_advance;
|
|
|
|
td_u8 smallhalfwinmin;
|
|
td_u8 smallhalfwinmax;
|
|
td_u8 largehalfwin;
|
|
td_u8 absscale;
|
|
|
|
td_u8 sumscale;
|
|
td_u8 valley_scale;
|
|
td_u8 plc_chl_timeout; /* Timeout interval for switching to the PLC mode, in seconds. */
|
|
td_u8 gold_code_rep_num;
|
|
|
|
td_u8 gold_thres_large;
|
|
td_u8 gold_thres_small;
|
|
td_u8 cont_lost_sync_thres;
|
|
td_u8 total_lost_sync_thres;
|
|
|
|
td_u16 clear_identify_result_time_max; /* Maximum time for clearing the recognition result, in seconds. */
|
|
td_u16 gold_cycle_num;
|
|
/*
|
|
* Whether the function of ending the identification status
|
|
* upon receiving a network identification request is enabled
|
|
*/
|
|
td_bool is_single_rcv_to_over_enable;
|
|
td_bool is_sync_atten_enable; /* Indicates whether the attenuation threshold policy is enabled
|
|
* during synchronization.
|
|
*/
|
|
td_u8 neighbor_net_atten_thres;
|
|
td_u8 is_lock_snid_disable;
|
|
|
|
param_w_stru param_w;
|
|
} diag_cmd_spc_nv_stru; /* 32 bytes in total */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|