Go to the documentation of this file.
83 #define CSR_BASE (0x000)
85 #define CSR_HW_IF_CONFIG_REG (CSR_BASE+0x000)
86 #define CSR_INT_COALESCING (CSR_BASE+0x004)
87 #define CSR_INT (CSR_BASE+0x008)
88 #define CSR_INT_MASK (CSR_BASE+0x00c)
89 #define CSR_FH_INT_STATUS (CSR_BASE+0x010)
90 #define CSR_GPIO_IN (CSR_BASE+0x018)
91 #define CSR_RESET (CSR_BASE+0x020)
92 #define CSR_GP_CNTRL (CSR_BASE+0x024)
95 #define CSR_INT_PERIODIC_REG (CSR_BASE+0x005)
108 #define CSR_HW_REV (CSR_BASE+0x028)
116 #define CSR_EEPROM_REG (CSR_BASE+0x02c)
117 #define CSR_EEPROM_GP (CSR_BASE+0x030)
119 #define CSR_GIO_REG (CSR_BASE+0x03C)
120 #define CSR_GP_UCODE_REG (CSR_BASE+0x048)
121 #define CSR_GP_DRIVER_REG (CSR_BASE+0x050)
127 #define CSR_UCODE_DRV_GP1 (CSR_BASE+0x054)
128 #define CSR_UCODE_DRV_GP1_SET (CSR_BASE+0x058)
129 #define CSR_UCODE_DRV_GP1_CLR (CSR_BASE+0x05c)
130 #define CSR_UCODE_DRV_GP2 (CSR_BASE+0x060)
132 #define CSR_LED_REG (CSR_BASE+0x094)
133 #define CSR_DRAM_INT_TBL_REG (CSR_BASE+0x0A0)
136 #define CSR_GIO_CHICKEN_BITS (CSR_BASE+0x100)
139 #define CSR_ANA_PLL_CFG (CSR_BASE+0x20c)
149 #define CSR_HW_REV_WA_REG (CSR_BASE+0x22C)
151 #define CSR_DBG_HPET_MEM_REG (CSR_BASE+0x240)
152 #define CSR_DBG_LINK_PWR_MGMT_REG (CSR_BASE+0x250)
155 #define CSR49_HW_IF_CONFIG_REG_BIT_4965_R (0x00000010)
156 #define CSR_HW_IF_CONFIG_REG_MSK_BOARD_VER (0x00000C00)
157 #define CSR_HW_IF_CONFIG_REG_BIT_MAC_SI (0x00000100)
158 #define CSR_HW_IF_CONFIG_REG_BIT_RADIO_SI (0x00000200)
160 #define CSR39_HW_IF_CONFIG_REG_BIT_3945_MB (0x00000100)
161 #define CSR39_HW_IF_CONFIG_REG_BIT_3945_MM (0x00000200)
162 #define CSR39_HW_IF_CONFIG_REG_BIT_SKU_MRC (0x00000400)
163 #define CSR39_HW_IF_CONFIG_REG_BIT_BOARD_TYPE (0x00000800)
164 #define CSR39_HW_IF_CONFIG_REG_BITS_SILICON_TYPE_A (0x00000000)
165 #define CSR39_HW_IF_CONFIG_REG_BITS_SILICON_TYPE_B (0x00001000)
167 #define CSR_HW_IF_CONFIG_REG_BIT_HAP_WAKE_L1A (0x00080000)
168 #define CSR_HW_IF_CONFIG_REG_BIT_EEPROM_OWN_SEM (0x00200000)
169 #define CSR_HW_IF_CONFIG_REG_BIT_NIC_READY (0x00400000)
170 #define CSR_HW_IF_CONFIG_REG_BIT_NIC_PREPARE_DONE (0x02000000)
171 #define CSR_HW_IF_CONFIG_REG_PREPARE (0x08000000)
173 #define CSR_INT_PERIODIC_DIS (0x00)
174 #define CSR_INT_PERIODIC_ENA (0xFF)
178 #define CSR_INT_BIT_FH_RX (1 << 31)
179 #define CSR_INT_BIT_HW_ERR (1 << 29)
180 #define CSR_INT_BIT_RX_PERIODIC (1 << 28)
181 #define CSR_INT_BIT_FH_TX (1 << 27)
182 #define CSR_INT_BIT_SCD (1 << 26)
183 #define CSR_INT_BIT_SW_ERR (1 << 25)
184 #define CSR_INT_BIT_RF_KILL (1 << 7)
185 #define CSR_INT_BIT_CT_KILL (1 << 6)
186 #define CSR_INT_BIT_SW_RX (1 << 3)
187 #define CSR_INT_BIT_WAKEUP (1 << 1)
188 #define CSR_INT_BIT_ALIVE (1 << 0)
190 #define CSR_INI_SET_MASK (CSR_INT_BIT_FH_RX | \
191 CSR_INT_BIT_HW_ERR | \
192 CSR_INT_BIT_FH_TX | \
193 CSR_INT_BIT_SW_ERR | \
194 CSR_INT_BIT_RF_KILL | \
195 CSR_INT_BIT_SW_RX | \
196 CSR_INT_BIT_WAKEUP | \
200 #define CSR_FH_INT_BIT_ERR (1 << 31)
201 #define CSR_FH_INT_BIT_HI_PRIOR (1 << 30)
202 #define CSR39_FH_INT_BIT_RX_CHNL2 (1 << 18)
203 #define CSR_FH_INT_BIT_RX_CHNL1 (1 << 17)
204 #define CSR_FH_INT_BIT_RX_CHNL0 (1 << 16)
205 #define CSR39_FH_INT_BIT_TX_CHNL6 (1 << 6)
206 #define CSR_FH_INT_BIT_TX_CHNL1 (1 << 1)
207 #define CSR_FH_INT_BIT_TX_CHNL0 (1 << 0)
209 #define CSR39_FH_INT_RX_MASK (CSR_FH_INT_BIT_HI_PRIOR | \
210 CSR39_FH_INT_BIT_RX_CHNL2 | \
211 CSR_FH_INT_BIT_RX_CHNL1 | \
212 CSR_FH_INT_BIT_RX_CHNL0)
214 #define CSR39_FH_INT_TX_MASK (CSR39_FH_INT_BIT_TX_CHNL6 | \
215 CSR_FH_INT_BIT_TX_CHNL1 | \
216 CSR_FH_INT_BIT_TX_CHNL0)
218 #define CSR49_FH_INT_RX_MASK (CSR_FH_INT_BIT_HI_PRIOR | \
219 CSR_FH_INT_BIT_RX_CHNL1 | \
220 CSR_FH_INT_BIT_RX_CHNL0)
222 #define CSR49_FH_INT_TX_MASK (CSR_FH_INT_BIT_TX_CHNL1 | \
223 CSR_FH_INT_BIT_TX_CHNL0)
226 #define CSR_GPIO_IN_BIT_AUX_POWER (0x00000200)
227 #define CSR_GPIO_IN_VAL_VAUX_PWR_SRC (0x00000000)
228 #define CSR_GPIO_IN_VAL_VMAIN_PWR_SRC (0x00000200)
231 #define CSR_RESET_REG_FLAG_NEVO_RESET (0x00000001)
232 #define CSR_RESET_REG_FLAG_FORCE_NMI (0x00000002)
233 #define CSR_RESET_REG_FLAG_SW_RESET (0x00000080)
234 #define CSR_RESET_REG_FLAG_MASTER_DISABLED (0x00000100)
235 #define CSR_RESET_REG_FLAG_STOP_MASTER (0x00000200)
236 #define CSR_RESET_LINK_PWR_MGMT_DISABLED (0x80000000)
276 #define CSR_GP_CNTRL_REG_FLAG_MAC_CLOCK_READY (0x00000001)
277 #define CSR_GP_CNTRL_REG_FLAG_INIT_DONE (0x00000004)
278 #define CSR_GP_CNTRL_REG_FLAG_MAC_ACCESS_REQ (0x00000008)
279 #define CSR_GP_CNTRL_REG_FLAG_GOING_TO_SLEEP (0x00000010)
281 #define CSR_GP_CNTRL_REG_VAL_MAC_ACCESS_EN (0x00000001)
283 #define CSR_GP_CNTRL_REG_MSK_POWER_SAVE_TYPE (0x07000000)
284 #define CSR_GP_CNTRL_REG_FLAG_MAC_POWER_SAVE (0x04000000)
285 #define CSR_GP_CNTRL_REG_FLAG_HW_RF_KILL_SW (0x08000000)
288 #define CSR_EEPROM_REG_READ_VALID_MSK (0x00000001)
289 #define CSR_EEPROM_REG_BIT_CMD (0x00000002)
290 #define CSR_EEPROM_REG_MSK_ADDR (0x0000FFFC)
291 #define CSR_EEPROM_REG_MSK_DATA (0xFFFF0000)
294 #define CSR_EEPROM_GP_VALID_MSK (0x00000007)
295 #define CSR_EEPROM_GP_IF_OWNER_MSK (0x00000180)
296 #define CSR_EEPROM_GP_GOOD_SIG_EEP_LESS_THAN_4K (0x00000002)
297 #define CSR_EEPROM_GP_GOOD_SIG_EEP_MORE_THAN_4K (0x00000004)
300 #define CSR_GP_REG_POWER_SAVE_STATUS_MSK (0x03000000)
301 #define CSR_GP_REG_NO_POWER_SAVE (0x00000000)
302 #define CSR_GP_REG_MAC_POWER_SAVE (0x01000000)
303 #define CSR_GP_REG_PHY_POWER_SAVE (0x02000000)
304 #define CSR_GP_REG_POWER_SAVE_ERROR (0x03000000)
307 #define CSR_GIO_REG_VAL_L0S_ENABLED (0x00000002)
337 #define CSR_UCODE_DRV_GP1_BIT_MAC_SLEEP (0x00000001)
338 #define CSR_UCODE_SW_BIT_RFKILL (0x00000002)
339 #define CSR_UCODE_DRV_GP1_BIT_CMD_BLOCKED (0x00000004)
340 #define CSR_UCODE_DRV_GP1_REG_BIT_CT_KILL_EXIT (0x00000008)
343 #define CSR_GIO_CHICKEN_BITS_REG_BIT_L1A_NO_L0S_RX (0x00800000)
344 #define CSR_GIO_CHICKEN_BITS_REG_BIT_DIS_L0S_EXIT_TIMER (0x20000000)
347 #define CSR_LED_BSM_CTRL_MSK (0xFFFFFFDF)
348 #define CSR_LED_REG_TRUN_ON (0x78)
349 #define CSR_LED_REG_TRUN_OFF (0x38)
352 #define CSR39_ANA_PLL_CFG_VAL (0x01000000)
355 #define CSR_DBG_HPET_MEM_REG_VAL (0xFFFF0000)
358 #define CSR_DRAM_INT_TBL_ENABLE (1 << 31)
359 #define CSR_DRAM_INIT_TBL_WRAP_CHECK (1 << 27)
377 #define HBUS_BASE (0x400)
388 #define HBUS_TARG_MEM_RADDR (HBUS_BASE+0x00c)
389 #define HBUS_TARG_MEM_WADDR (HBUS_BASE+0x010)
390 #define HBUS_TARG_MEM_WDAT (HBUS_BASE+0x018)
391 #define HBUS_TARG_MEM_RDAT (HBUS_BASE+0x01c)
394 #define HBUS_TARG_MBX_C (HBUS_BASE+0x030)
395 #define HBUS_TARG_MBX_C_REG_BIT_CMD_BLOCKED (0x00000004)
405 #define HBUS_TARG_PRPH_WADDR (HBUS_BASE+0x044)
406 #define HBUS_TARG_PRPH_RADDR (HBUS_BASE+0x048)
407 #define HBUS_TARG_PRPH_WDAT (HBUS_BASE+0x04c)
408 #define HBUS_TARG_PRPH_RDAT (HBUS_BASE+0x050)
417 #define HBUS_TARG_WRPTR (HBUS_BASE+0x060)