Mistake on this page?
Report an issue in GitHub or email us
whd_chip_reg.h
1 /*
2  * Copyright 2021, Cypress Semiconductor Corporation (an Infineon company)
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef INCLUDED_WHD_CHIP_REG_H_
19 #define INCLUDED_WHD_CHIP_REG_H_
20 
21 #ifdef __cplusplus
22 extern "C" {
23 #endif
24 
25 /******************************************************
26 * Architecture Constants
27 ******************************************************/
28 
29 /* D11 registers and SHM */
30 #define D11_BASE_ADDR 0x18001000
31 #define D11_AXI_BASE_ADDR 0xE8000000
32 #define D11_SHM_BASE_ADDR (D11_AXI_BASE_ADDR + 0x4000)
33 
34 #define D11REG_ADDR(offset) (D11_BASE_ADDR + offset)
35 #define D11IHR_ADDR(offset) (D11_AXI_BASE_ADDR + 0x400 + (2 * offset) )
36 #define D11SHM_ADDR(offset) (D11_SHM_BASE_ADDR + offset)
37 
38 #define M_DS1_CTRL_STATUS (0xe0b * 2)
39 
40 /* RMC operational modes */
41 enum ds1_ctrl_status
42 {
43  DS1_SLEEP = 0, /* DS1_SLEEP */
44  MAC_ON = 1, /* MAC_ON */
45  RADIO_PHY_ON = 2, /* RADIO_PHY_ON */
46  DS1_EXIT = 3 /* DS1_EXIT.*/
47 };
48 
49 #define M_DS1_CTRL_SDIO (0xe0c * 2)
50 
51 #define C_DS1_CTRL_SDIO_DS1_SLEEP (1 << 0)
52 #define C_DS1_CTRL_SDIO_MAC_ON (1 << 1)
53 #define C_DS1_CTRL_SDIO_RADIO_PHY_ON (1 << 2)
54 #define C_DS1_CTRL_SDIO_DS1_EXIT (1 << 3)
55 #define C_DS1_CTRL_PROC_DONE (1 << 8)
56 #define C_DS1_CTRL_REQ_VALID (1 << 9)
57 /* MacControl register */
58 #define D11_MACCONTROL_REG D11REG_ADDR(0x120)
59 #define D11_MACCONTROL_REG_SIZE 4
60 #define D11_MACCONTROL_REG_WAKE (1 << 26)
61 #define D11_MACCONTROL_CLEAR_WAKE (0xFBFFFFFF)
62 #define PMU_MINRESMASK (PMU_BASE_ADDRESS + 0x618)
63 #define DEFAULT_43012_MIN_RES_MASK 0x0f8bfe77
64 
65 /* Backplane architecture */
66 #define CHIPCOMMON_BASE_ADDRESS 0x18000000 /* Chipcommon core register region */
67 #define I2S0_BASE_ADDRESS 0x18001000 /* I2S0 core register region */
68 #define I2S1_BASE_ADDRESS 0x18002000 /* I2S1 core register region */
69 #define APPS_ARMCR4_BASE_ADDRESS 0x18003000 /* Apps Cortex-R4 core register region */
70 #define DMA_BASE_ADDRESS 0x18004000 /* DMA core register region */
71 #define GMAC_BASE_ADDRESS 0x18005000 /* GMAC core register region */
72 #define USB20H0_BASE_ADDRESS 0x18006000 /* USB20H0 core register region */
73 #define USB20D_BASE_ADDRESS 0x18007000 /* USB20D core register region */
74 #define SDIOH_BASE_ADDRESS 0x18008000 /* SDIOH Device core register region */
75 #define DOT11MAC_BASE_ADDRESS 0x18001000
76 
77 #define BACKPLANE_ADDRESS_MASK 0x7FFF
78 #define BACKPLANE_WINDOW_SIZE (BACKPLANE_ADDRESS_MASK + 1)
79 
80 #define CHIP_STA_INTERFACE 0
81 #define CHIP_AP_INTERFACE 1
82 #define CHIP_P2P_INTERFACE 2
83 
84 /* Chipcommon registers */
85 #define CHIPCOMMON_CORE_CAPEXT_ADDR ( (uint32_t)(CHIPCOMMON_BASE_ADDRESS + 0x64c) )
86 #define CHIPCOMMON_CORE_CAPEXT_SR_SUPPORTED ( (uint32_t)(1 << 1) )
87 #define CHIPCOMMON_CORE_RCTL_LOGIC_DISABLE ( (uint32_t)(1 << 27) )
88 #define CHIPCOMMON_CORE_RCTL_MACPHY_DISABLE ( (uint32_t)(1 << 26) )
89 #define CHIPCOMMON_CORE_RETENTION_CTL ( (uint32_t)(CHIPCOMMON_BASE_ADDRESS + 0x670) )
90 
91 #define CHIPCOMMON_GPIO_CONTROL ( (uint32_t)(CHIPCOMMON_BASE_ADDRESS + 0x6C) )
92 #define CHIPCOMMON_SR_CONTROL0 ( (uint32_t)(CHIPCOMMON_BASE_ADDRESS + 0x504) )
93 #define CHIPCOMMON_SR_CONTROL1 ( (uint32_t)(CHIPCOMMON_BASE_ADDRESS + 0x508) )
94 
95 /* SOCSRAM core registers */
96 #define SOCSRAM_BANKX_INDEX(wd) ( (uint32_t)(GET_C_VAR(wd, SOCSRAM_BASE_ADDRESS) + 0x10) )
97 #define SOCSRAM_BANKX_PDA(wd) ( (uint32_t)(GET_C_VAR(wd, SOCSRAM_BASE_ADDRESS) + 0x44) )
98 
99 /* PMU core registers */
100 #define RETENTION_CTL(wd) ( (uint32_t)(GET_C_VAR(wd, PMU_BASE_ADDRESS) + 0x670) )
101 #define RCTL_MACPHY_DISABLE ( (uint32_t)(1 << 26) )
102 #define RCTL_LOGIC_DISABLE ( (uint32_t)(1 << 27) )
103 
104 #ifdef __cplusplus
105 } /* extern "C" */
106 #endif
107 
108 #endif /* ifndef INCLUDED_WHD_CHIP_REG_H_ */
109 
Important Information for this Arm website

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies. If you are not happy with the use of these cookies, please review our Cookie Policy to learn how they can be disabled. By disabling cookies, some features of the site will not work.