WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
plat_cali.h
浏览该文件的文档.
1/*
2 * Copyright (c) HiSilicon (Shanghai) Technologies Co., Ltd. 2015-2023. All rights reserved.
3 * Description: plat_cali.c头文件
4 * Create: 2015年7月16日
5 */
6
7#ifndef __PLAT_CALI_H__
8#define __PLAT_CALI_H__
9
10/*****************************************************************************
11 1 头文件包含
12*****************************************************************************/
13
14#include "oal_types.h"
15#include "oal_util.h"
16
17#if defined(_PRE_OS_VERSION) && defined(_PRE_OS_VERSION_LITEOS) && (_PRE_OS_VERSION_LITEOS == _PRE_OS_VERSION)
18#include "oal_plat_type.h"
19#endif
20
21#ifdef __cplusplus
22#if __cplusplus
23extern "C" {
24#endif
25#endif
26
27/*****************************************************************************
28 2 宏定义
29*****************************************************************************/
30
31#define OAL_2G_CHANNEL_NUM (3)
32#define OAL_5G_20M_CHANNEL_NUM (7)
33#define OAL_5G_80M_CHANNEL_NUM (7)
34#define OAL_5G_160M_CHANNEL_NUM (2)
35#define OAL_5G_CHANNEL_NUM (OAL_5G_20M_CHANNEL_NUM + OAL_5G_80M_CHANNEL_NUM + OAL_5G_160M_CHANNEL_NUM)
36#define OAL_5G_DEVICE_CHANNEL_NUM (7)
37#define OAL_CALI_HCC_BUF_NUM (3)
38#define OAL_CALI_HCC_BUF_SIZE (1500)
39#define OAL_CALI_IQ_TONE_NUM (16)
40#define OAL_CALI_TXDC_GAIN_LVL_NUM (16) /* tx dc补偿值档位数目 */
41#define OAL_BT_RF_FEQ_NUM (79) /* total Rf frequency number */
42#define OAL_BT_CHANNEL_NUM (8) /* total Rf frequency number */
43#define OAL_BT_POWER_CALI_CHANNEL_NUM (3)
44#define OAL_BT_NVRAM_DATA_LENGTH (104)
45#define OAL_BT_NVRAM_NAME "BTCALNV"
46#define OAL_BT_NVRAM_NUMBER (352)
47
48
49#define WIFI_2_4G_ONLY (0x2424)
50#define SYS_EXCEP_REBOOT (0xC7C7)
51#define OAL_CALI_PARAM_ADDITION_LEN (8)
52#define OAL_5G_IQ_CALI_TONE_NUM (8)
53
54#define CHECK_5G_ENABLE "radio_cap_0"
55
56/*****************************************************************************
57 3 枚举定义
58*****************************************************************************/
59
60/*****************************************************************************
61 4 全局变量定义
62*****************************************************************************/
63/*****************************************************************************
64 5 消息头定义
65*****************************************************************************/
66
67
68/*****************************************************************************
69 6 消息定义
70*****************************************************************************/
71/*****************************************************************************
72 7 STRUCT定义
73*****************************************************************************/
74
75typedef struct {
76 osal_u16 analog_rxdc_cmp;
77 osal_u16 digital_rxdc_cmp_i;
78 osal_u16 digital_rxdc_cmp_q;
79 osal_u8 reserve[2];
81
82typedef struct {
83 osal_u8 upc_ppa_cmp;
84 osal_s8 ac_atx_pwr_cmp;
85 osal_u8 dtx_pwr_cmp;
86 osal_u8 reserve[1];
88
89typedef struct {
90 osal_u8 upc_ppa_cmp;
91 osal_u8 upc_mx_cmp;
92 osal_s8 ac_atx_pwr_cmp;
93 osal_u8 dtx_pwr_cmp;
95
96typedef struct {
97 osal_u16 txdc_cmp_i;
98 osal_u16 txdc_cmp_q;
100
101typedef struct {
102 osal_u8 ppf_val;
103 osal_u8 reserve[3];
105
106typedef struct {
107 osal_u16 txiq_cmp_p;
108 osal_u16 txiq_cmp_e;
110
111typedef struct {
112 osal_u16 cali_time;
113 osal_u16 temperature : 3,
114 uc_5g_chan_idx1 : 5,
115 uc_5g_chan_idx2 : 5,
116 update_bt : 3;
118
119typedef struct {
120 osal_u32 wifi_2_4g_only;
121 osal_u32 excep_reboot;
124
125
126/*****************************************************************************
127 8 UNION定义
128*****************************************************************************/
129
130
131/*****************************************************************************
132 9 OTHERS定义
133*****************************************************************************/
134
135
136/*****************************************************************************
137 10 函数声明
138*****************************************************************************/
139
140#ifdef _PRE_PLAT_FEATURE_CUSTOMIZE
141typedef osal_u32 (*custom_cali_func)(osal_void);
142void set_custom_cali_func(custom_cali_func func);
143custom_cali_func get_custom_cali_func(void);
144void set_custom_exit_later_func(custom_cali_func func);
145custom_cali_func get_custom_exit_later_func(void);
146#endif
147
148/*****************************************************************************
149 10 add for bfgx
150*****************************************************************************/
151/* enum定义不能超过BFGX_BT_CUST_INI_SIZE/4 (128) */
152typedef enum {
204
207
208typedef struct {
209 char* name;
210 osal_s32 init_value;
212
213/* 以下5个宏定义,如果要修改长度,需要同步修改device的宏定义 */
214#define BFGX_BT_CALI_DATA_SIZE (492)
215#define WIFI_CALI_DATA_FOR_FM_RC_CODE_SIZE (20)
216#define BFGX_NV_DATA_SIZE (128)
217#define BFGX_BT_CUST_INI_SIZE (512)
218#define WIFI_CALI_DATA_FOR_BT (896)
219/* 考虑结构体总体长度考虑SDIO下载长度512对齐特性,这里长度为2048 */
220typedef struct {
223 osal_u8 nv_data[BFGX_NV_DATA_SIZE];
224 osal_u8 bt_cust_ini_data[BFGX_BT_CUST_INI_SIZE];
225 osal_u8 wifi_cali_for_bt_data[WIFI_CALI_DATA_FOR_BT];
227
228#define BFGX_CALI_DATA_BUF_LEN (sizeof(bfgx_cali_data_stru))
229
231
232#ifdef __cplusplus
233#if __cplusplus
234}
235#endif
236#endif
237
238#endif /* end of plat_cali.h */
239
#define WIFI_CALI_DATA_FOR_BT
Definition plat_cali.h:217
osal_s32 bt_customize_init(void)
#define BFGX_NV_DATA_SIZE
Definition plat_cali.h:215
#define BFGX_BT_CUST_INI_SIZE
Definition plat_cali.h:216
#define WIFI_CALI_DATA_FOR_FM_RC_CODE_SIZE
Definition plat_cali.h:214
bfgx_cfg_ini
Definition plat_cali.h:151
@ BFGX_CFG_INI_BT_RESERVED9
Definition plat_cali.h:201
@ BFGX_CFG_INI_BT_CALI_BT_TONE_AMP_GRADE
Definition plat_cali.h:172
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE6
Definition plat_cali.h:169
@ BFGX_CFG_INI_BT_DYNAMICSARCTRL_BT
Definition plat_cali.h:177
@ BFGX_CFG_INI_BT_RESERVED3
Definition plat_cali.h:195
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND5
Definition plat_cali.h:160
@ BFGX_CFG_INI_BT_PRODUCTLINE_UPCCODE_SEARCH_MIN
Definition plat_cali.h:176
@ BFGX_CFG_INI_BT_COUNTRY_CODE
Definition plat_cali.h:192
@ BFGX_CFG_INI_BT_RESERVED2
Definition plat_cali.h:194
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE4
Definition plat_cali.h:167
@ BFGX_CFG_INI_BT_POWER_LEVEL_CONTROL
Definition plat_cali.h:191
@ BFGX_CFG_INI_BT_RESERVED7
Definition plat_cali.h:199
@ BFGX_CFG_INI_BT_RXDC_BAND
Definition plat_cali.h:173
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND3
Definition plat_cali.h:158
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE2
Definition plat_cali.h:165
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND4
Definition plat_cali.h:159
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE1
Definition plat_cali.h:164
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND1
Definition plat_cali.h:156
@ BFGX_CFG_INI_BT_BLEPOW_OFFSET
Definition plat_cali.h:154
@ BFGX_CFG_INI_BT_RESERVED1
Definition plat_cali.h:193
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE3
Definition plat_cali.h:166
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE8
Definition plat_cali.h:171
@ BFGX_CFG_INI_BT_RESERVED4
Definition plat_cali.h:196
@ BFGX_CFG_INI_BT_ELNA_OFF2ON_TIME_NS
Definition plat_cali.h:184
@ BFGX_CFG_INI_BT_RESERVED10
Definition plat_cali.h:202
@ BFGX_CFG_INI_BT_RESERVED8
Definition plat_cali.h:200
@ BFGX_CFG_INI_BT_POWOFFSBT
Definition plat_cali.h:178
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE7
Definition plat_cali.h:170
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_NUM
Definition plat_cali.h:155
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND8
Definition plat_cali.h:163
@ BFGX_CFG_INI_BT_RESERVED5
Definition plat_cali.h:197
@ BFGX_CFG_INI_BT_FEM_CONTROL
Definition plat_cali.h:186
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND6
Definition plat_cali.h:161
@ BFGX_CFG_INI_BT_HIPOWER_MODE
Definition plat_cali.h:185
@ BFGX_CFG_INI_BT_CALI_SWTICH_ALL
Definition plat_cali.h:189
@ BFGX_CFG_INI_BT_RXISOBTELNABYP
Definition plat_cali.h:180
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_FRE5
Definition plat_cali.h:168
@ BFGX_CFG_INI_BUTT
Definition plat_cali.h:204
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND2
Definition plat_cali.h:157
@ BFGX_CFG_INI_BT_ELNA_ON2OFF_TIME_NS
Definition plat_cali.h:183
@ BFGX_CFG_INI_BT_PRODUCTLINE_UPCCODE_SEARCH_MAX
Definition plat_cali.h:175
@ BFGX_CFG_INI_BT_DBB_SCALING_SATURATION
Definition plat_cali.h:174
@ BFGX_CFG_INI_BT_FEATURE_LOG
Definition plat_cali.h:188
@ BFGX_CFG_INI_BT_ELNA_2G_BT
Definition plat_cali.h:179
@ BFGX_CFG_INI_BT_CALI_TXPWR_PA_REF_BAND7
Definition plat_cali.h:162
@ BFGX_CFG_INI_BT_RXBTEXTLOSS
Definition plat_cali.h:182
@ BFGX_CFG_INI_BT_ANT_NUM_BT
Definition plat_cali.h:190
@ BFGX_CFG_INI_BT_RESERVED6
Definition plat_cali.h:198
@ BFGX_CFG_INI_BT_FEATURE_32K_CLOCK
Definition plat_cali.h:187
@ BFGX_CFG_INI_BT_EDRPOW_OFFSET
Definition plat_cali.h:153
@ BFGX_CFG_INI_BT_RXGAINBTELNA
Definition plat_cali.h:181
@ BFGX_CFG_INI_BT_MAXPOWER
Definition plat_cali.h:152
#define OAL_CALI_PARAM_ADDITION_LEN
Definition plat_cali.h:51
#define BFGX_BT_CALI_DATA_SIZE
Definition plat_cali.h:213
int osal_s32
Definition osal_types.h:19
unsigned char osal_u8
Definition osal_types.h:11
signed char osal_s8
Definition osal_types.h:17
void osal_void
Definition osal_types.h:29
unsigned int osal_u32
Definition osal_types.h:13
unsigned short osal_u16
Definition osal_types.h:12
Definition plat_cali.h:219
Definition plat_cali.h:207
Definition plat_cali.h:83
Definition plat_cali.h:90
Definition plat_cali.h:120
Definition plat_cali.h:102
Definition plat_cali.h:76
Definition plat_cali.h:97
Definition plat_cali.h:107
Definition plat_cali.h:112