SAMA5D4 Xplained Ultra Board BSP
guowenxue
2019-08-19 2e7235d10c6dbff81960282e1a1e2e798f9b8db8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
/******************************************************************************
 *
 * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of version 2 of the GNU General Public License as
 * published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License along with
 * this program; if not, write to the Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
 *
 *
 ******************************************************************************/
/* ************************************************************
 * File Name: odm_reg.h
 *
 * Description:
 *
 * This file is for general register definition.
 *
 *
 * ************************************************************ */
#ifndef    __HAL_ODM_REG_H__
#define __HAL_ODM_REG_H__
 
/*
 * Register Definition
 *   */
 
/* MAC REG */
#define    ODM_BB_RESET                    0x002
#define    ODM_DUMMY                        0x4fe
#define    RF_T_METER_OLD                0x24
#define    RF_T_METER_NEW                0x42
 
#define    ODM_EDCA_VO_PARAM            0x500
#define    ODM_EDCA_VI_PARAM            0x504
#define    ODM_EDCA_BE_PARAM            0x508
#define    ODM_EDCA_BK_PARAM            0x50C
#define    ODM_TXPAUSE                    0x522
 
/* LTE_COEX */
#define REG_LTECOEX_CTRL            0x07C0
#define REG_LTECOEX_WRITE_DATA        0x07C4
#define REG_LTECOEX_READ_DATA        0x07C8
#define REG_LTECOEX_PATH_CONTROL    0x70
 
/* BB REG */
#define    ODM_FPGA_PHY0_PAGE8            0x800
#define    ODM_PSD_SETTING                0x808
#define    ODM_AFE_SETTING                0x818
#define    ODM_TXAGC_B_6_18                0x830
#define    ODM_TXAGC_B_24_54            0x834
#define    ODM_TXAGC_B_MCS32_5            0x838
#define    ODM_TXAGC_B_MCS0_MCS3        0x83c
#define    ODM_TXAGC_B_MCS4_MCS7        0x848
#define    ODM_TXAGC_B_MCS8_MCS11        0x84c
#define    ODM_ANALOG_REGISTER            0x85c
#define    ODM_RF_INTERFACE_OUTPUT        0x860
#define    ODM_TXAGC_B_MCS12_MCS15    0x868
#define    ODM_TXAGC_B_11_A_2_11        0x86c
#define    ODM_AD_DA_LSB_MASK            0x874
#define    ODM_ENABLE_3_WIRE            0x88c
#define    ODM_PSD_REPORT                0x8b4
#define    ODM_R_ANT_SELECT                0x90c
#define    ODM_CCK_ANT_SELECT            0xa07
#define    ODM_CCK_PD_THRESH            0xa0a
#define    ODM_CCK_RF_REG1                0xa11
#define    ODM_CCK_MATCH_FILTER            0xa20
#define    ODM_CCK_RAKE_MAC                0xa2e
#define    ODM_CCK_CNT_RESET            0xa2d
#define    ODM_CCK_TX_DIVERSITY            0xa2f
#define    ODM_CCK_FA_CNT_MSB            0xa5b
#define    ODM_CCK_FA_CNT_LSB            0xa5c
#define    ODM_CCK_NEW_FUNCTION        0xa75
#define    ODM_OFDM_PHY0_PAGE_C        0xc00
#define    ODM_OFDM_RX_ANT                0xc04
#define    ODM_R_A_RXIQI                    0xc14
#define    ODM_R_A_AGC_CORE1            0xc50
#define    ODM_R_A_AGC_CORE2            0xc54
#define    ODM_R_B_AGC_CORE1            0xc58
#define    ODM_R_AGC_PAR                    0xc70
#define    ODM_R_HTSTF_AGC_PAR            0xc7c
#define    ODM_TX_PWR_TRAINING_A        0xc90
#define    ODM_TX_PWR_TRAINING_B        0xc98
#define    ODM_OFDM_FA_CNT1                0xcf0
#define    ODM_OFDM_PHY0_PAGE_D        0xd00
#define    ODM_OFDM_FA_CNT2                0xda0
#define    ODM_OFDM_FA_CNT3                0xda4
#define    ODM_OFDM_FA_CNT4                0xda8
#define    ODM_TXAGC_A_6_18                0xe00
#define    ODM_TXAGC_A_24_54            0xe04
#define    ODM_TXAGC_A_1_MCS32            0xe08
#define    ODM_TXAGC_A_MCS0_MCS3        0xe10
#define    ODM_TXAGC_A_MCS4_MCS7        0xe14
#define    ODM_TXAGC_A_MCS8_MCS11        0xe18
#define    ODM_TXAGC_A_MCS12_MCS15        0xe1c
 
/* RF REG */
#define    ODM_GAIN_SETTING                0x00
#define    ODM_CHANNEL                    0x18
#define    ODM_RF_T_METER                0x24
#define    ODM_RF_T_METER_92D            0x42
#define    ODM_RF_T_METER_88E            0x42
#define    ODM_RF_T_METER_92E            0x42
#define    ODM_RF_T_METER_8812            0x42
#define    REG_RF_TX_GAIN_OFFSET                0x55
 
/* ant Detect Reg */
#define    ODM_DPDT                        0x300
 
/* PSD Init */
#define    ODM_PSDREG                    0x808
 
/* 92D path Div */
#define    PATHDIV_REG                    0xB30
#define    PATHDIV_TRI                    0xBA0
 
 
/*
 * Bitmap Definition
 *   */
#if (DM_ODM_SUPPORT_TYPE & (ODM_AP))
    /* TX AGC */
    #define        REG_TX_AGC_A_CCK_11_CCK_1_JAGUAR    0xc20
    #define        REG_TX_AGC_A_OFDM18_OFDM6_JAGUAR    0xc24
    #define        REG_TX_AGC_A_OFDM54_OFDM24_JAGUAR    0xc28
    #define        REG_TX_AGC_A_MCS3_MCS0_JAGUAR    0xc2c
    #define        REG_TX_AGC_A_MCS7_MCS4_JAGUAR    0xc30
    #define        REG_TX_AGC_A_MCS11_MCS8_JAGUAR    0xc34
    #define        REG_TX_AGC_A_MCS15_MCS12_JAGUAR    0xc38
    #define        REG_TX_AGC_A_NSS1_INDEX3_NSS1_INDEX0_JAGUAR    0xc3c
    #define        REG_TX_AGC_A_NSS1_INDEX7_NSS1_INDEX4_JAGUAR    0xc40
    #define        REG_TX_AGC_A_NSS2_INDEX1_NSS1_INDEX8_JAGUAR    0xc44
    #define        REG_TX_AGC_A_NSS2_INDEX5_NSS2_INDEX2_JAGUAR    0xc48
    #define        REG_TX_AGC_A_NSS2_INDEX9_NSS2_INDEX6_JAGUAR    0xc4c
    #if defined(CONFIG_WLAN_HAL_8814AE)
        #define        REG_TX_AGC_A_MCS19_MCS16_JAGUAR    0xcd8
        #define        REG_TX_AGC_A_MCS23_MCS20_JAGUAR    0xcdc
        #define        REG_TX_AGC_A_NSS3_INDEX3_NSS3_INDEX0_JAGUAR    0xce0
        #define        REG_TX_AGC_A_NSS3_INDEX7_NSS3_INDEX4_JAGUAR    0xce4
        #define        REG_TX_AGC_A_NSS3_INDEX9_NSS3_INDEX8_JAGUAR    0xce8
    #endif
    #define        REG_TX_AGC_B_CCK_11_CCK_1_JAGUAR    0xe20
    #define        REG_TX_AGC_B_OFDM18_OFDM6_JAGUAR    0xe24
    #define        REG_TX_AGC_B_OFDM54_OFDM24_JAGUAR    0xe28
    #define        REG_TX_AGC_B_MCS3_MCS0_JAGUAR    0xe2c
    #define        REG_TX_AGC_B_MCS7_MCS4_JAGUAR    0xe30
    #define        REG_TX_AGC_B_MCS11_MCS8_JAGUAR    0xe34
    #define        REG_TX_AGC_B_MCS15_MCS12_JAGUAR    0xe38
    #define        REG_TX_AGC_B_NSS1_INDEX3_NSS1_INDEX0_JAGUAR    0xe3c
    #define        REG_TX_AGC_B_NSS1_INDEX7_NSS1_INDEX4_JAGUAR    0xe40
    #define        REG_TX_AGC_B_NSS2_INDEX1_NSS1_INDEX8_JAGUAR    0xe44
    #define        REG_TX_AGC_B_NSS2_INDEX5_NSS2_INDEX2_JAGUAR    0xe48
    #define        REG_TX_AGC_B_NSS2_INDEX9_NSS2_INDEX6_JAGUAR    0xe4c
    #if defined(CONFIG_WLAN_HAL_8814AE)
        #define        REG_TX_AGC_B_MCS19_MCS16_JAGUAR    0xed8
        #define        REG_TX_AGC_B_MCS23_MCS20_JAGUAR    0xedc
        #define        REG_TX_AGC_B_NSS3_INDEX3_NSS3_INDEX0_JAGUAR    0xee0
        #define        REG_TX_AGC_B_NSS3_INDEX7_NSS3_INDEX4_JAGUAR    0xee4
        #define        REG_TX_AGC_B_NSS3_INDEX9_NSS3_INDEX8_JAGUAR    0xee8
        #define        REG_TX_AGC_C_CCK_11_CCK_1_JAGUAR    0x1820
        #define        REG_TX_AGC_C_OFDM18_OFDM6_JAGUAR    0x1824
        #define        REG_TX_AGC_C_OFDM54_OFDM24_JAGUAR    0x1828
        #define        REG_TX_AGC_C_MCS3_MCS0_JAGUAR    0x182c
        #define        REG_TX_AGC_C_MCS7_MCS4_JAGUAR    0x1830
        #define        REG_TX_AGC_C_MCS11_MCS8_JAGUAR    0x1834
        #define        REG_TX_AGC_C_MCS15_MCS12_JAGUAR    0x1838
        #define        REG_TX_AGC_C_NSS1_INDEX3_NSS1_INDEX0_JAGUAR    0x183c
        #define        REG_TX_AGC_C_NSS1_INDEX7_NSS1_INDEX4_JAGUAR    0x1840
        #define        REG_TX_AGC_C_NSS2_INDEX1_NSS1_INDEX8_JAGUAR    0x1844
        #define        REG_TX_AGC_C_NSS2_INDEX5_NSS2_INDEX2_JAGUAR    0x1848
        #define        REG_TX_AGC_C_NSS2_INDEX9_NSS2_INDEX6_JAGUAR    0x184c
        #define        REG_TX_AGC_C_MCS19_MCS16_JAGUAR    0x18d8
        #define        REG_TX_AGC_C_MCS23_MCS20_JAGUAR    0x18dc
        #define        REG_TX_AGC_C_NSS3_INDEX3_NSS3_INDEX0_JAGUAR    0x18e0
        #define        REG_TX_AGC_C_NSS3_INDEX7_NSS3_INDEX4_JAGUAR    0x18e4
        #define        REG_TX_AGC_C_NSS3_INDEX9_NSS3_INDEX8_JAGUAR    0x18e8
        #define        REG_TX_AGC_D_CCK_11_CCK_1_JAGUAR    0x1a20
        #define        REG_TX_AGC_D_OFDM18_OFDM6_JAGUAR    0x1a24
        #define        REG_TX_AGC_D_OFDM54_OFDM24_JAGUAR    0x1a28
        #define        REG_TX_AGC_D_MCS3_MCS0_JAGUAR    0x1a2c
        #define        REG_TX_AGC_D_MCS7_MCS4_JAGUAR    0x1a30
        #define        REG_TX_AGC_D_MCS11_MCS8_JAGUAR    0x1a34
        #define        REG_TX_AGC_D_MCS15_MCS12_JAGUAR    0x1a38
        #define        REG_TX_AGC_D_NSS1_INDEX3_NSS1_INDEX0_JAGUAR    0x1a3c
        #define        REG_TX_AGC_D_NSS1_INDEX7_NSS1_INDEX4_JAGUAR    0x1a40
        #define        REG_TX_AGC_D_NSS2_INDEX1_NSS1_INDEX8_JAGUAR    0x1a44
        #define        REG_TX_AGC_D_NSS2_INDEX5_NSS2_INDEX2_JAGUAR    0x1a48
        #define        REG_TX_AGC_D_NSS2_INDEX9_NSS2_INDEX6_JAGUAR    0x1a4c
        #define        REG_TX_AGC_D_MCS19_MCS16_JAGUAR    0x1ad8
        #define        REG_TX_AGC_D_MCS23_MCS20_JAGUAR    0x1adc
        #define        REG_TX_AGC_D_NSS3_INDEX3_NSS3_INDEX0_JAGUAR    0x1ae0
        #define        REG_TX_AGC_D_NSS3_INDEX7_NSS3_INDEX4_JAGUAR    0x1ae4
        #define        REG_TX_AGC_D_NSS3_INDEX9_NSS3_INDEX8_JAGUAR    0x1ae8
    #endif
 
    #define        is_tx_agc_byte0_jaguar    0xff
    #define        is_tx_agc_byte1_jaguar    0xff00
    #define        is_tx_agc_byte2_jaguar    0xff0000
    #define        is_tx_agc_byte3_jaguar    0xff000000
#endif
 
#define    BIT_FA_RESET                    BIT(0)
 
 
 
#endif