208d760d6af2fe781cb54905cb97efac7965a3cf
[project/bcm63xx/atf.git] / plat / mediatek / mt8183 / include / spm.h
1 /*
2 * Copyright (c) 2019, MediaTek Inc. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7 #ifndef SPM_H
8 #define SPM_H
9
10 #define POWERON_CONFIG_EN (SPM_BASE + 0x000)
11 #define SPM_POWER_ON_VAL0 (SPM_BASE + 0x004)
12 #define SPM_POWER_ON_VAL1 (SPM_BASE + 0x008)
13 #define SPM_CLK_CON (SPM_BASE + 0x00C)
14 #define SPM_CLK_SETTLE (SPM_BASE + 0x010)
15 #define SPM_AP_STANDBY_CON (SPM_BASE + 0x014)
16 #define PCM_CON0 (SPM_BASE + 0x018)
17 #define PCM_CON1 (SPM_BASE + 0x01C)
18 #define PCM_IM_PTR (SPM_BASE + 0x020)
19 #define PCM_IM_LEN (SPM_BASE + 0x024)
20 #define PCM_REG_DATA_INI (SPM_BASE + 0x028)
21 #define PCM_PWR_IO_EN (SPM_BASE + 0x02C)
22 #define PCM_TIMER_VAL (SPM_BASE + 0x030)
23 #define PCM_WDT_VAL (SPM_BASE + 0x034)
24 #define PCM_IM_HOST_RW_PTR (SPM_BASE + 0x038)
25 #define PCM_IM_HOST_RW_DAT (SPM_BASE + 0x03C)
26 #define PCM_EVENT_VECTOR0 (SPM_BASE + 0x040)
27 #define PCM_EVENT_VECTOR1 (SPM_BASE + 0x044)
28 #define PCM_EVENT_VECTOR2 (SPM_BASE + 0x048)
29 #define PCM_EVENT_VECTOR3 (SPM_BASE + 0x04C)
30 #define PCM_EVENT_VECTOR4 (SPM_BASE + 0x050)
31 #define PCM_EVENT_VECTOR5 (SPM_BASE + 0x054)
32 #define PCM_EVENT_VECTOR6 (SPM_BASE + 0x058)
33 #define PCM_EVENT_VECTOR7 (SPM_BASE + 0x05C)
34 #define PCM_EVENT_VECTOR8 (SPM_BASE + 0x060)
35 #define PCM_EVENT_VECTOR9 (SPM_BASE + 0x064)
36 #define PCM_EVENT_VECTOR10 (SPM_BASE + 0x068)
37 #define PCM_EVENT_VECTOR11 (SPM_BASE + 0x06C)
38 #define PCM_EVENT_VECTOR12 (SPM_BASE + 0x070)
39 #define PCM_EVENT_VECTOR13 (SPM_BASE + 0x074)
40 #define PCM_EVENT_VECTOR14 (SPM_BASE + 0x078)
41 #define PCM_EVENT_VECTOR15 (SPM_BASE + 0x07C)
42 #define PCM_EVENT_VECTOR_EN (SPM_BASE + 0x080)
43 #define SPM_SWINT (SPM_BASE + 0x08C)
44 #define SPM_SWINT_SET (SPM_BASE + 0x090)
45 #define SPM_SWINT_CLR (SPM_BASE + 0x094)
46 #define SPM_SCP_MAILBOX (SPM_BASE + 0x098)
47 #define SPM_SCP_IRQ (SPM_BASE + 0x09C)
48 #define SPM_TWAM_CON (SPM_BASE + 0x0A0)
49 #define SPM_TWAM_WINDOW_LEN (SPM_BASE + 0x0A4)
50 #define SPM_TWAM_IDLE_SEL (SPM_BASE + 0x0A8)
51 #define SPM_CPU_WAKEUP_EVENT (SPM_BASE + 0x0B0)
52 #define SPM_IRQ_MASK (SPM_BASE + 0x0B4)
53 #define SPM_SRC_REQ (SPM_BASE + 0x0B8)
54 #define SPM_SRC_MASK (SPM_BASE + 0x0BC)
55 #define SPM_SRC2_MASK (SPM_BASE + 0x0C0)
56 #define SPM_WAKEUP_EVENT_MASK (SPM_BASE + 0x0C4)
57 #define SPM_WAKEUP_EVENT_EXT_MASK (SPM_BASE + 0x0C8)
58 #define SCP_CLK_CON (SPM_BASE + 0x0D0)
59 #define PCM_DEBUG_CON (SPM_BASE + 0x0D4)
60 #define PCM_REG0_DATA (SPM_BASE + 0x100)
61 #define PCM_REG1_DATA (SPM_BASE + 0x104)
62 #define PCM_REG2_DATA (SPM_BASE + 0x108)
63 #define PCM_REG3_DATA (SPM_BASE + 0x10C)
64 #define PCM_REG4_DATA (SPM_BASE + 0x110)
65 #define PCM_REG5_DATA (SPM_BASE + 0x114)
66 #define PCM_REG6_DATA (SPM_BASE + 0x118)
67 #define PCM_REG7_DATA (SPM_BASE + 0x11C)
68 #define PCM_REG8_DATA (SPM_BASE + 0x120)
69 #define PCM_REG9_DATA (SPM_BASE + 0x124)
70 #define PCM_REG10_DATA (SPM_BASE + 0x128)
71 #define PCM_REG11_DATA (SPM_BASE + 0x12C)
72 #define PCM_REG12_DATA (SPM_BASE + 0x130)
73 #define PCM_REG13_DATA (SPM_BASE + 0x134)
74 #define PCM_REG14_DATA (SPM_BASE + 0x138)
75 #define PCM_REG15_DATA (SPM_BASE + 0x13C)
76 #define PCM_REG12_MASK_B_STA (SPM_BASE + 0x140)
77 #define PCM_REG12_EXT_DATA (SPM_BASE + 0x144)
78 #define PCM_REG12_EXT_MASK_B_STA (SPM_BASE + 0x148)
79 #define PCM_EVENT_REG_STA (SPM_BASE + 0x14C)
80 #define PCM_TIMER_OUT (SPM_BASE + 0x150)
81 #define PCM_WDT_OUT (SPM_BASE + 0x154)
82 #define SPM_IRQ_STA (SPM_BASE + 0x158)
83 #define SPM_WAKEUP_STA (SPM_BASE + 0x15C)
84 #define SPM_WAKEUP_EXT_STA (SPM_BASE + 0x160)
85 #define SPM_WAKEUP_MISC (SPM_BASE + 0x164)
86 #define BUS_PROTECT_RDY (SPM_BASE + 0x168)
87 #define BUS_PROTECT2_RDY (SPM_BASE + 0x16C)
88 #define SUBSYS_IDLE_STA (SPM_BASE + 0x170)
89 #define CPU_IDLE_STA (SPM_BASE + 0x174)
90 #define PCM_FSM_STA (SPM_BASE + 0x178)
91 #define PWR_STATUS (SPM_BASE + 0x180)
92 #define PWR_STATUS_2ND (SPM_BASE + 0x184)
93 #define CPU_PWR_STATUS (SPM_BASE + 0x188)
94 #define CPU_PWR_STATUS_2ND (SPM_BASE + 0x18C)
95 #define PCM_WDT_LATCH_0 (SPM_BASE + 0x190)
96 #define PCM_WDT_LATCH_1 (SPM_BASE + 0x194)
97 #define PCM_WDT_LATCH_2 (SPM_BASE + 0x198)
98 #define DRAMC_DBG_LATCH (SPM_BASE + 0x19C)
99 #define SPM_TWAM_LAST_STA0 (SPM_BASE + 0x1A0)
100 #define SPM_TWAM_LAST_STA1 (SPM_BASE + 0x1A4)
101 #define SPM_TWAM_LAST_STA2 (SPM_BASE + 0x1A8)
102 #define SPM_TWAM_LAST_STA3 (SPM_BASE + 0x1AC)
103 #define SPM_TWAM_CURR_STA0 (SPM_BASE + 0x1B0)
104 #define SPM_TWAM_CURR_STA1 (SPM_BASE + 0x1B4)
105 #define SPM_TWAM_CURR_STA2 (SPM_BASE + 0x1B8)
106 #define SPM_TWAM_CURR_STA3 (SPM_BASE + 0x1BC)
107 #define SPM_TWAM_TIMER_OUT (SPM_BASE + 0x1C0)
108 #define PCM_WDT_LATCH_3 (SPM_BASE + 0x1C4)
109 #define SPM_SRC_RDY_STA (SPM_BASE + 0x1D0)
110 #define MISC_STA (SPM_BASE + 0x1D4)
111 #define MCU_PWR_CON (SPM_BASE + 0x200)
112 #define MP0_CPUTOP_PWR_CON (SPM_BASE + 0x204)
113 #define MP0_CPU0_PWR_CON (SPM_BASE + 0x208)
114 #define MP0_CPU1_PWR_CON (SPM_BASE + 0x20C)
115 #define MP0_CPU2_PWR_CON (SPM_BASE + 0x210)
116 #define MP0_CPU3_PWR_CON (SPM_BASE + 0x214)
117 #define MP1_CPUTOP_PWR_CON (SPM_BASE + 0x218)
118 #define MP1_CPU0_PWR_CON (SPM_BASE + 0x21C)
119 #define MP1_CPU1_PWR_CON (SPM_BASE + 0x220)
120 #define MP1_CPU2_PWR_CON (SPM_BASE + 0x224)
121 #define MP1_CPU3_PWR_CON (SPM_BASE + 0x228)
122 #define MP0_CPUTOP_L2_PDN (SPM_BASE + 0x240)
123 #define MP0_CPUTOP_L2_SLEEP_B (SPM_BASE + 0x244)
124 #define MP0_CPU0_L1_PDN (SPM_BASE + 0x248)
125 #define MP0_CPU1_L1_PDN (SPM_BASE + 0x24C)
126 #define MP0_CPU2_L1_PDN (SPM_BASE + 0x250)
127 #define MP0_CPU3_L1_PDN (SPM_BASE + 0x254)
128 #define MP1_CPUTOP_L2_PDN (SPM_BASE + 0x258)
129 #define MP1_CPUTOP_L2_SLEEP_B (SPM_BASE + 0x25C)
130 #define MP1_CPU0_L1_PDN (SPM_BASE + 0x260)
131 #define MP1_CPU1_L1_PDN (SPM_BASE + 0x264)
132 #define MP1_CPU2_L1_PDN (SPM_BASE + 0x268)
133 #define MP1_CPU3_L1_PDN (SPM_BASE + 0x26C)
134 #define CPU_EXT_BUCK_ISO (SPM_BASE + 0x290)
135 #define DUMMY1_PWR_CON (SPM_BASE + 0x2B0)
136 #define BYPASS_SPMC (SPM_BASE + 0x2B4)
137 #define SPMC_DORMANT_ENABLE (SPM_BASE + 0x2B8)
138 #define ARMPLL_CLK_CON (SPM_BASE + 0x2BC)
139 #define SPMC_IN_RET (SPM_BASE + 0x2C0)
140 #define VDE_PWR_CON (SPM_BASE + 0x300)
141 #define VEN_PWR_CON (SPM_BASE + 0x304)
142 #define ISP_PWR_CON (SPM_BASE + 0x308)
143 #define DIS_PWR_CON (SPM_BASE + 0x30C)
144 #define MJC_PWR_CON (SPM_BASE + 0x310)
145 #define AUDIO_PWR_CON (SPM_BASE + 0x314)
146 #define IFR_PWR_CON (SPM_BASE + 0x318)
147 #define DPY_PWR_CON (SPM_BASE + 0x31C)
148 #define MD1_PWR_CON (SPM_BASE + 0x320)
149 #define MD2_PWR_CON (SPM_BASE + 0x324)
150 #define C2K_PWR_CON (SPM_BASE + 0x328)
151 #define CONN_PWR_CON (SPM_BASE + 0x32C)
152 #define VCOREPDN_PWR_CON (SPM_BASE + 0x330)
153 #define MFG_ASYNC_PWR_CON (SPM_BASE + 0x334)
154 #define MFG_PWR_CON (SPM_BASE + 0x338)
155 #define MFG_CORE0_PWR_CON (SPM_BASE + 0x33C)
156 #define MFG_CORE1_PWR_CON (SPM_BASE + 0x340)
157 #define CAM_PWR_CON (SPM_BASE + 0x344)
158 #define SYSRAM_CON (SPM_BASE + 0x350)
159 #define SYSROM_CON (SPM_BASE + 0x354)
160 #define SCP_SRAM_CON (SPM_BASE + 0x358)
161 #define GCPU_SRAM_CON (SPM_BASE + 0x35C)
162 #define MDSYS_INTF_INFRA_PWR_CON (SPM_BASE + 0x360)
163 #define MDSYS_INTF_MD1_PWR_CON (SPM_BASE + 0x364)
164 #define MDSYS_INTF_C2K_PWR_CON (SPM_BASE + 0x368)
165 #define BSI_TOP_SRAM_CON (SPM_BASE + 0x370)
166 #define DVFSP_SRAM_CON (SPM_BASE + 0x374)
167 #define MD_EXT_BUCK_ISO (SPM_BASE + 0x390)
168 #define DUMMY2_PWR_CON (SPM_BASE + 0x3B0)
169 #define MD1_OUTPUT_PISO_S_EN_IZ (SPM_BASE + 0x3B4)
170 #define SPM_DVFS_CON (SPM_BASE + 0x400)
171 #define SPM_MDBSI_CON (SPM_BASE + 0x404)
172 #define SPM_MAS_PAUSE_MASK_B (SPM_BASE + 0x408)
173 #define SPM_MAS_PAUSE2_MASK_B (SPM_BASE + 0x40C)
174 #define SPM_BSI_GEN (SPM_BASE + 0x410)
175 #define SPM_BSI_EN_SR (SPM_BASE + 0x414)
176 #define SPM_BSI_CLK_SR (SPM_BASE + 0x418)
177 #define SPM_BSI_D0_SR (SPM_BASE + 0x41C)
178 #define SPM_BSI_D1_SR (SPM_BASE + 0x420)
179 #define SPM_BSI_D2_SR (SPM_BASE + 0x424)
180 #define SPM_AP_SEMA (SPM_BASE + 0x428)
181 #define SPM_SPM_SEMA (SPM_BASE + 0x42C)
182 #define AP2MD_CROSS_TRIGGER (SPM_BASE + 0x430)
183 #define AP_MDSRC_REQ (SPM_BASE + 0x434)
184 #define SPM2MD_DVFS_CON (SPM_BASE + 0x438)
185 #define MD2SPM_DVFS_CON (SPM_BASE + 0x43C)
186 #define DRAMC_DPY_CLK_SW_CON_RSV (SPM_BASE + 0x440)
187 #define DPY_LP_CON (SPM_BASE + 0x444)
188 #define CPU_DVFS_REQ (SPM_BASE + 0x448)
189 #define SPM_PLL_CON (SPM_BASE + 0x44C)
190 #define SPM_EMI_BW_MODE (SPM_BASE + 0x450)
191 #define AP2MD_PEER_WAKEUP (SPM_BASE + 0x454)
192 #define ULPOSC_CON (SPM_BASE + 0x458)
193 #define DRAMC_DPY_CLK_SW_CON_SEL (SPM_BASE + 0x460)
194 #define DRAMC_DPY_CLK_SW_CON (SPM_BASE + 0x464)
195 #define DRAMC_DPY_CLK_SW_CON_SEL2 (SPM_BASE + 0x470)
196 #define DRAMC_DPY_CLK_SW_CON2 (SPM_BASE + 0x474)
197 #define SPM_SEMA_M0 (SPM_BASE + 0x480)
198 #define SPM_SEMA_M1 (SPM_BASE + 0x484)
199 #define SPM_SEMA_M2 (SPM_BASE + 0x488)
200 #define SPM_SEMA_M3 (SPM_BASE + 0x48C)
201 #define SPM_SEMA_M4 (SPM_BASE + 0x490)
202 #define SPM_SEMA_M5 (SPM_BASE + 0x494)
203 #define SPM_SEMA_M6 (SPM_BASE + 0x498)
204 #define SPM_SEMA_M7 (SPM_BASE + 0x49C)
205 #define SPM_SEMA_M8 (SPM_BASE + 0x4A0)
206 #define SPM_SEMA_M9 (SPM_BASE + 0x4A4)
207 #define SRAM_DREQ_ACK (SPM_BASE + 0x4AC)
208 #define SRAM_DREQ_CON (SPM_BASE + 0x4B0)
209 #define SRAM_DREQ_CON_SET (SPM_BASE + 0x4B4)
210 #define SRAM_DREQ_CON_CLR (SPM_BASE + 0x4B8)
211 #define MP0_CPU0_IRQ_MASK (SPM_BASE + 0x500)
212 #define MP0_CPU1_IRQ_MASK (SPM_BASE + 0x504)
213 #define MP0_CPU2_IRQ_MASK (SPM_BASE + 0x508)
214 #define MP0_CPU3_IRQ_MASK (SPM_BASE + 0x50C)
215 #define MP1_CPU0_IRQ_MASK (SPM_BASE + 0x510)
216 #define MP1_CPU1_IRQ_MASK (SPM_BASE + 0x514)
217 #define MP1_CPU2_IRQ_MASK (SPM_BASE + 0x518)
218 #define MP1_CPU3_IRQ_MASK (SPM_BASE + 0x51C)
219 #define MP0_CPU0_WFI_EN (SPM_BASE + 0x530)
220 #define MP0_CPU1_WFI_EN (SPM_BASE + 0x534)
221 #define MP0_CPU2_WFI_EN (SPM_BASE + 0x538)
222 #define MP0_CPU3_WFI_EN (SPM_BASE + 0x53C)
223 #define MP1_CPU0_WFI_EN (SPM_BASE + 0x540)
224 #define MP1_CPU1_WFI_EN (SPM_BASE + 0x544)
225 #define MP1_CPU2_WFI_EN (SPM_BASE + 0x548)
226 #define MP1_CPU3_WFI_EN (SPM_BASE + 0x54C)
227 #define CPU_PTPOD2_CON (SPM_BASE + 0x560)
228 #define ROOT_CPUTOP_ADDR (SPM_BASE + 0x570)
229 #define ROOT_CORE_ADDR (SPM_BASE + 0x574)
230 #define CPU_SPARE_CON (SPM_BASE + 0x580)
231 #define CPU_SPARE_CON_SET (SPM_BASE + 0x584)
232 #define CPU_SPARE_CON_CLR (SPM_BASE + 0x588)
233 #define SPM_SW_FLAG (SPM_BASE + 0x600)
234 #define SPM_SW_DEBUG (SPM_BASE + 0x604)
235 #define SPM_SW_RSV_0 (SPM_BASE + 0x608)
236 #define SPM_SW_RSV_1 (SPM_BASE + 0x60C)
237 #define SPM_SW_RSV_2 (SPM_BASE + 0x610)
238 #define SPM_SW_RSV_3 (SPM_BASE + 0x614)
239 #define SPM_SW_RSV_4 (SPM_BASE + 0x618)
240 #define SPM_SW_RSV_5 (SPM_BASE + 0x61C)
241 #define SPM_RSV_CON (SPM_BASE + 0x620)
242 #define SPM_RSV_STA (SPM_BASE + 0x624)
243 #define SPM_PASR_DPD_0 (SPM_BASE + 0x630)
244 #define SPM_PASR_DPD_1 (SPM_BASE + 0x634)
245 #define SPM_PASR_DPD_2 (SPM_BASE + 0x638)
246 #define SPM_PASR_DPD_3 (SPM_BASE + 0x63C)
247 #define SPM_SPARE_CON (SPM_BASE + 0x640)
248 #define SPM_SPARE_CON_SET (SPM_BASE + 0x644)
249 #define SPM_SPARE_CON_CLR (SPM_BASE + 0x648)
250 #define SPM_SW_RSV_6 (SPM_BASE + 0x64C)
251 #define SPM_SW_RSV_7 (SPM_BASE + 0x650)
252 #define SPM_SW_RSV_8 (SPM_BASE + 0x654)
253 #define SPM_SW_RSV_9 (SPM_BASE + 0x658)
254 #define SPM_SW_RSV_10 (SPM_BASE + 0x65C)
255 #define SPM_SW_RSV_11 (SPM_BASE + 0x660)
256 #define SPM_SW_RSV_12 (SPM_BASE + 0x664)
257 #define SPM_SW_RSV_13 (SPM_BASE + 0x668)
258 #define SPM_SW_RSV_14 (SPM_BASE + 0x66C)
259 #define SPM_SW_RSV_15 (SPM_BASE + 0x670)
260 #define SPM_SW_RSV_16 (SPM_BASE + 0x674)
261 #define SPM_SW_RSV_17 (SPM_BASE + 0x678)
262 #define SPM_SW_RSV_18 (SPM_BASE + 0x67C)
263 #define SPM_SW_RSV_19 (SPM_BASE + 0x680)
264 #define SW_CRTL_EVENT (SPM_BASE + 0x690)
265
266
267 #define MP1_CPU3_PWR_STA_MASK (1U << 19)
268 #define MP1_CPU2_PWR_STA_MASK (1U << 18)
269 #define MP1_CPU1_PWR_STA_MASK (1U << 17)
270 #define MP1_CPU0_PWR_STA_MASK (1U << 16)
271 #define MP1_CPUTOP_PWR_STA_MASK (1U << 15)
272 #define MCU_PWR_STA_MASK (1U << 14)
273 #define MP0_CPU3_PWR_STA_MASK (1U << 12)
274 #define MP0_CPU2_PWR_STA_MASK (1U << 11)
275 #define MP0_CPU1_PWR_STA_MASK (1U << 10)
276 #define MP0_CPU0_PWR_STA_MASK (1U << 9)
277 #define MP0_CPUTOP_PWR_STA_MASK (1U << 8)
278
279
280 #define MP1_CPU3_STANDBYWFI (1U << 17)
281 #define MP1_CPU2_STANDBYWFI (1U << 16)
282 #define MP1_CPU1_STANDBYWFI (1U << 15)
283 #define MP1_CPU0_STANDBYWFI (1U << 14)
284 #define MP0_CPU3_STANDBYWFI (1U << 13)
285 #define MP0_CPU2_STANDBYWFI (1U << 12)
286 #define MP0_CPU1_STANDBYWFI (1U << 11)
287 #define MP0_CPU0_STANDBYWFI (1U << 10)
288
289 #define MP0_SPMC_SRAM_DORMANT_EN (1<<0)
290 #define MP1_SPMC_SRAM_DORMANT_EN (1<<1)
291 #define MP2_SPMC_SRAM_DORMANT_EN (1<<2)
292
293 /* POWERON_CONFIG_EN (0x10006000+0x000) */
294 #define BCLK_CG_EN_LSB (1U << 0) /* 1b */
295 #define PROJECT_CODE_LSB (1U << 16) /* 16b */
296
297 /* SPM_POWER_ON_VAL0 (0x10006000+0x004) */
298 #define POWER_ON_VAL0_LSB (1U << 0) /* 32b */
299
300 /* SPM_POWER_ON_VAL1 (0x10006000+0x008) */
301 #define POWER_ON_VAL1_LSB (1U << 0) /* 32b */
302
303 /* SPM_CLK_CON (0x10006000+0x00C) */
304 #define SYSCLK0_EN_CTRL_LSB (1U << 0) /* 2b */
305 #define SYSCLK1_EN_CTRL_LSB (1U << 2) /* 2b */
306 #define SYS_SETTLE_SEL_LSB (1U << 4) /* 1b */
307 #define SPM_LOCK_INFRA_DCM_LSB (1U << 5) /* 1b */
308 #define EXT_SRCCLKEN_MASK_LSB (1U << 6) /* 3b */
309 #define CXO32K_REMOVE_EN_MD1_LSB (1U << 9) /* 1b */
310 #define CXO32K_REMOVE_EN_MD2_LSB (1U << 10) /* 1b */
311 #define CLKSQ0_SEL_CTRL_LSB (1U << 11) /* 1b */
312 #define CLKSQ1_SEL_CTRL_LSB (1U << 12) /* 1b */
313 #define SRCLKEN0_EN_LSB (1U << 13) /* 1b */
314 #define SRCLKEN1_EN_LSB (1U << 14) /* 1b */
315 #define SCP_DCM_EN_LSB (1U << 15) /* 1b */
316 #define SYSCLK0_SRC_MASK_B_LSB (1U << 16) /* 7b */
317 #define SYSCLK1_SRC_MASK_B_LSB (1U << 23) /* 7b */
318
319 /* SPM_CLK_SETTLE (0x10006000+0x010) */
320 #define SYSCLK_SETTLE_LSB (1U << 0) /* 28b */
321
322 /* SPM_AP_STANDBY_CON (0x10006000+0x014) */
323 #define WFI_OP_LSB (1U << 0) /* 1b */
324 #define MP0_CPUTOP_IDLE_MASK_LSB (1U << 1) /* 1b */
325 #define MP1_CPUTOP_IDLE_MASK_LSB (1U << 2) /* 1b */
326 #define MCUSYS_IDLE_MASK_LSB (1U << 4) /* 1b */
327 #define MM_MASK_B_LSB (1U << 16) /* 2b */
328 #define MD_DDR_EN_DBC_EN_LSB (1U << 18) /* 1b */
329 #define MD_MASK_B_LSB (1U << 19) /* 2b */
330 #define SCP_MASK_B_LSB (1U << 21) /* 1b */
331 #define LTE_MASK_B_LSB (1U << 22) /* 1b */
332 #define SRCCLKENI_MASK_B_LSB (1U << 23) /* 1b */
333 #define MD_APSRC_1_SEL_LSB (1U << 24) /* 1b */
334 #define MD_APSRC_0_SEL_LSB (1U << 25) /* 1b */
335 #define CONN_MASK_B_LSB (1U << 26) /* 1b */
336 #define CONN_APSRC_SEL_LSB (1U << 27) /* 1b */
337
338 /* PCM_CON0 (0x10006000+0x018) */
339 #define PCM_KICK_L_LSB (1U << 0) /* 1b */
340 #define IM_KICK_L_LSB (1U << 1) /* 1b */
341 #define PCM_CK_EN_LSB (1U << 2) /* 1b */
342 #define EN_IM_SLEEP_DVS_LSB (1U << 3) /* 1b */
343 #define IM_AUTO_PDN_EN_LSB (1U << 4) /* 1b */
344 #define PCM_SW_RESET_LSB (1U << 15) /* 1b */
345 #define PROJECT_CODE_LSB (1U << 16) /* 16b */
346
347 /* PCM_CON1 (0x10006000+0x01C) */
348 #define IM_SLAVE_LSB (1U << 0) /* 1b */
349 #define IM_SLEEP_LSB (1U << 1) /* 1b */
350 #define MIF_APBEN_LSB (1U << 3) /* 1b */
351 #define IM_PDN_LSB (1U << 4) /* 1b */
352 #define PCM_TIMER_EN_LSB (1U << 5) /* 1b */
353 #define IM_NONRP_EN_LSB (1U << 6) /* 1b */
354 #define DIS_MIF_PROT_LSB (1U << 7) /* 1b */
355 #define PCM_WDT_EN_LSB (1U << 8) /* 1b */
356 #define PCM_WDT_WAKE_MODE_LSB (1U << 9) /* 1b */
357 #define SPM_SRAM_SLEEP_B_LSB (1U << 10) /* 1b */
358 #define SPM_SRAM_ISOINT_B_LSB (1U << 11) /* 1b */
359 #define EVENT_LOCK_EN_LSB (1U << 12) /* 1b */
360 #define SRCCLKEN_FAST_RESP_LSB (1U << 13) /* 1b */
361 #define SCP_APB_INTERNAL_EN_LSB (1U << 14) /* 1b */
362 #define PROJECT_CODE_LSB (1U << 16) /* 16b */
363
364 /* PCM_IM_PTR (0x10006000+0x020) */
365 #define PCM_IM_PTR_LSB (1U << 0) /* 32b */
366
367 /* PCM_IM_LEN (0x10006000+0x024) */
368 #define PCM_IM_LEN_LSB (1U << 0) /* 13b */
369
370 /* PCM_REG_DATA_INI (0x10006000+0x028) */
371 #define PCM_REG_DATA_INI_LSB (1U << 0) /* 32b */
372
373 /* PCM_PWR_IO_EN (0x10006000+0x02C) */
374 #define PCM_PWR_IO_EN_LSB (1U << 0) /* 8b */
375 #define PCM_RF_SYNC_EN_LSB (1U << 16) /* 8b */
376
377 /* PCM_TIMER_VAL (0x10006000+0x030) */
378 #define PCM_TIMER_VAL_LSB (1U << 0) /* 32b */
379
380 /* PCM_WDT_VAL (0x10006000+0x034) */
381 #define PCM_WDT_VAL_LSB (1U << 0) /* 32b */
382
383 /* PCM_IM_HOST_RW_PTR (0x10006000+0x038) */
384 #define PCM_IM_HOST_RW_PTR_LSB (1U << 0) /* 12b */
385 #define PCM_IM_HOST_W_EN_LSB (1U << 30) /* 1b */
386 #define PCM_IM_HOST_EN_LSB (1U << 31) /* 1b */
387
388 /* PCM_IM_HOST_RW_DAT (0x10006000+0x03C) */
389 #define PCM_IM_HOST_RW_DAT_LSB (1U << 0) /* 32b */
390
391 /* PCM_EVENT_VECTOR0 (0x10006000+0x040) */
392 #define PCM_EVENT_VECTOR_0_LSB (1U << 0) /* 6b */
393 #define PCM_EVENT_RESUME_0_LSB (1U << 6) /* 1b */
394 #define PCM_EVENT_IMMEDIA_0_LSB (1U << 7) /* 1b */
395 #define PCM_EVENT_VECTPC_0_LSB (1U << 16) /* 11b */
396
397 /* PCM_EVENT_VECTOR1 (0x10006000+0x044) */
398 #define PCM_EVENT_VECTOR_1_LSB (1U << 0) /* 6b */
399 #define PCM_EVENT_RESUME_1_LSB (1U << 6) /* 1b */
400 #define PCM_EVENT_IMMEDIA_1_LSB (1U << 7) /* 1b */
401 #define PCM_EVENT_VECTPC_1_LSB (1U << 16) /* 11b */
402
403 /* PCM_EVENT_VECTOR2 (0x10006000+0x048) */
404 #define PCM_EVENT_VECTOR_2_LSB (1U << 0) /* 6b */
405 #define PCM_EVENT_RESUME_2_LSB (1U << 6) /* 1b */
406 #define PCM_EVENT_IMMEDIA_2_LSB (1U << 7) /* 1b */
407 #define PCM_EVENT_VECTPC_2_LSB (1U << 16) /* 11b */
408
409 /* PCM_EVENT_VECTOR3 (0x10006000+0x04C) */
410 #define PCM_EVENT_VECTOR_3_LSB (1U << 0) /* 6b */
411 #define PCM_EVENT_RESUME_3_LSB (1U << 6) /* 1b */
412 #define PCM_EVENT_IMMEDIA_3_LSB (1U << 7) /* 1b */
413 #define PCM_EVENT_VECTPC_3_LSB (1U << 16) /* 11b */
414
415 /* PCM_EVENT_VECTOR4 (0x10006000+0x050) */
416 #define PCM_EVENT_VECTOR_4_LSB (1U << 0) /* 6b */
417 #define PCM_EVENT_RESUME_4_LSB (1U << 6) /* 1b */
418 #define PCM_EVENT_IMMEDIA_4_LSB (1U << 7) /* 1b */
419 #define PCM_EVENT_VECTPC_4_LSB (1U << 16) /* 11b */
420
421 /* PCM_EVENT_VECTOR5 (0x10006000+0x054) */
422 #define PCM_EVENT_VECTOR_5_LSB (1U << 0) /* 6b */
423 #define PCM_EVENT_RESUME_5_LSB (1U << 6) /* 1b */
424 #define PCM_EVENT_IMMEDIA_5_LSB (1U << 7) /* 1b */
425 #define PCM_EVENT_VECTPC_5_LSB (1U << 16) /* 11b */
426
427 /* PCM_EVENT_VECTOR6 (0x10006000+0x058) */
428 #define PCM_EVENT_VECTOR_6_LSB (1U << 0) /* 6b */
429 #define PCM_EVENT_RESUME_6_LSB (1U << 6) /* 1b */
430 #define PCM_EVENT_IMMEDIA_6_LSB (1U << 7) /* 1b */
431 #define PCM_EVENT_VECTPC_6_LSB (1U << 16) /* 11b */
432
433 /* PCM_EVENT_VECTOR7 (0x10006000+0x05C) */
434 #define PCM_EVENT_VECTOR_7_LSB (1U << 0) /* 6b */
435 #define PCM_EVENT_RESUME_7_LSB (1U << 6) /* 1b */
436 #define PCM_EVENT_IMMEDIA_7_LSB (1U << 7) /* 1b */
437 #define PCM_EVENT_VECTPC_7_LSB (1U << 16) /* 11b */
438
439 /* PCM_EVENT_VECTOR8 (0x10006000+0x060) */
440 #define PCM_EVENT_VECTOR_8_LSB (1U << 0) /* 6b */
441 #define PCM_EVENT_RESUME_8_LSB (1U << 6) /* 1b */
442 #define PCM_EVENT_IMMEDIA_8_LSB (1U << 7) /* 1b */
443 #define PCM_EVENT_VECTPC_8_LSB (1U << 16) /* 11b */
444
445 /* PCM_EVENT_VECTOR9 (0x10006000+0x064) */
446 #define PCM_EVENT_VECTOR_9_LSB (1U << 0) /* 6b */
447 #define PCM_EVENT_RESUME_9_LSB (1U << 6) /* 1b */
448 #define PCM_EVENT_IMMEDIA_9_LSB (1U << 7) /* 1b */
449 #define PCM_EVENT_VECTPC_9_LSB (1U << 16) /* 11b */
450
451 /* PCM_EVENT_VECTOR10 (0x10006000+0x068) */
452 #define PCM_EVENT_VECTOR_10_LSB (1U << 0) /* 6b */
453 #define PCM_EVENT_RESUME_10_LSB (1U << 6) /* 1b */
454 #define PCM_EVENT_IMMEDIA_10_LSB (1U << 7) /* 1b */
455 #define PCM_EVENT_VECTPC_10_LSB (1U << 16) /* 11b */
456
457 /* PCM_EVENT_VECTOR11 (0x10006000+0x06C) */
458 #define PCM_EVENT_VECTOR_11_LSB (1U << 0) /* 6b */
459 #define PCM_EVENT_RESUME_11_LSB (1U << 6) /* 1b */
460 #define PCM_EVENT_IMMEDIA_11_LSB (1U << 7) /* 1b */
461 #define PCM_EVENT_VECTPC_11_LSB (1U << 16) /* 11b */
462
463 /* PCM_EVENT_VECTOR12 (0x10006000+0x070) */
464 #define PCM_EVENT_VECTOR_12_LSB (1U << 0) /* 6b */
465 #define PCM_EVENT_RESUME_12_LSB (1U << 6) /* 1b */
466 #define PCM_EVENT_IMMEDIA_12_LSB (1U << 7) /* 1b */
467 #define PCM_EVENT_VECTPC_12_LSB (1U << 16) /* 11b */
468
469 /* PCM_EVENT_VECTOR13 (0x10006000+0x074) */
470 #define PCM_EVENT_VECTOR_13_LSB (1U << 0) /* 6b */
471 #define PCM_EVENT_RESUME_13_LSB (1U << 6) /* 1b */
472 #define PCM_EVENT_IMMEDIA_13_LSB (1U << 7) /* 1b */
473 #define PCM_EVENT_VECTPC_13_LSB (1U << 16) /* 11b */
474
475 /* PCM_EVENT_VECTOR14 (0x10006000+0x078) */
476 #define PCM_EVENT_VECTOR_14_LSB (1U << 0) /* 6b */
477 #define PCM_EVENT_RESUME_14_LSB (1U << 6) /* 1b */
478 #define PCM_EVENT_IMMEDIA_14_LSB (1U << 7) /* 1b */
479 #define PCM_EVENT_VECTPC_14_LSB (1U << 16) /* 11b */
480
481 /* PCM_EVENT_VECTOR15 (0x10006000+0x07C) */
482 #define PCM_EVENT_VECTOR_15_LSB (1U << 0) /* 6b */
483 #define PCM_EVENT_RESUME_15_LSB (1U << 6) /* 1b */
484 #define PCM_EVENT_IMMEDIA_15_LSB (1U << 7) /* 1b */
485 #define PCM_EVENT_VECTPC_15_LSB (1U << 16) /* 11b */
486
487 /* PCM_EVENT_VECTOR_EN (0x10006000+0x080) */
488 #define PCM_EVENT_VECTOR_EN_LSB (1U << 0) /* 16b */
489
490 /* SPM_SWINT (0x10006000+0x08C) */
491 #define SPM_SWINT_LSB (1U << 0) /* 10b */
492
493 /* SPM_SWINT_SET (0x10006000+0x090) */
494 #define SPM_SWINT_SET_LSB (1U << 0) /* 10b */
495
496 /* SPM_SWINT_CLR (0x10006000+0x094) */
497 #define SPM_SWINT_CLR_LSB (1U << 0) /* 10b */
498
499 /* SPM_SCP_MAILBOX (0x10006000+0x098) */
500 #define SPM_SCP_MAILBOX_LSB (1U << 0) /* 32b */
501
502 /* SPM_SCP_IRQ (0x10006000+0x09C) */
503 #define SPM_SCP_IRQ_LSB (1U << 0) /* 1b */
504 #define SPM_SCP_IRQ_SEL_LSB (1U << 4) /* 1b */
505
506 /* SPM_TWAM_CON (0x10006000+0x0A0) */
507 #define TWAM_ENABLE_LSB (1U << 0) /* 1b */
508 #define TWAM_SPEED_MODE_ENABLE_LSB (1U << 1) /* 1b */
509 #define TWAM_SW_RST_LSB (1U << 2) /* 1b */
510 #define TWAM_MON_TYPE0_LSB (1U << 4) /* 2b */
511 #define TWAM_MON_TYPE1_LSB (1U << 6) /* 2b */
512 #define TWAM_MON_TYPE2_LSB (1U << 8) /* 2b */
513 #define TWAM_MON_TYPE3_LSB (1U << 10) /* 2b */
514 #define TWAM_SIGNAL_SEL0_LSB (1U << 12) /* 5b */
515 #define TWAM_SIGNAL_SEL1_LSB (1U << 17) /* 5b */
516 #define TWAM_SIGNAL_SEL2_LSB (1U << 22) /* 5b */
517 #define TWAM_SIGNAL_SEL3_LSB (1U << 27) /* 5b */
518
519 /* SPM_TWAM_WINDOW_LEN (0x10006000+0x0A4) */
520 #define TWAM_WINDOW_LEN_LSB (1U << 0) /* 32b */
521
522 /* SPM_TWAM_IDLE_SEL (0x10006000+0x0A8) */
523 #define TWAM_IDLE_SEL_LSB (1U << 0) /* 5b */
524
525 /* SPM_CPU_WAKEUP_EVENT (0x10006000+0x0B0) */
526 #define SPM_CPU_WAKEUP_EVENT_LSB (1U << 0) /* 1b */
527
528 /* SPM_IRQ_MASK (0x10006000+0x0B4) */
529 #define SPM_TWAM_IRQ_MASK_LSB (1U << 2) /* 1b */
530 #define PCM_IRQ_ROOT_MASK_LSB (1U << 3) /* 1b */
531 #define SPM_IRQ_MASK_LSB (1U << 8) /* 10b */
532
533 /* SPM_SRC_REQ (0x10006000+0x0B8) */
534 #define SPM_APSRC_REQ_LSB (1U << 0) /* 1b */
535 #define SPM_F26M_REQ_LSB (1U << 1) /* 1b */
536 #define SPM_LTE_REQ_LSB (1U << 2) /* 1b */
537 #define SPM_INFRA_REQ_LSB (1U << 3) /* 1b */
538 #define SPM_VRF18_REQ_LSB (1U << 4) /* 1b */
539 #define SPM_DVFS_REQ_LSB (1U << 5) /* 1b */
540 #define SPM_DVFS_FORCE_DOWN_LSB (1U << 6) /* 1b */
541 #define SPM_DDREN_REQ_LSB (1U << 7) /* 1b */
542 #define SPM_RSV_SRC_REQ_LSB (1U << 8) /* 3b */
543 #define CPU_MD_DVFS_SOP_FORCE_ON_LSB (1U << 16) /* 1b */
544
545 /* SPM_SRC_MASK (0x10006000+0x0BC) */
546 #define CSYSPWREQ_MASK_LSB (1U << 0) /* 1b */
547 #define CCIF0_MD_EVENT_MASK_B_LSB (1U << 1) /* 1b */
548 #define CCIF0_AP_EVENT_MASK_B_LSB (1U << 2) /* 1b */
549 #define CCIF1_MD_EVENT_MASK_B_LSB (1U << 3) /* 1b */
550 #define CCIF1_AP_EVENT_MASK_B_LSB (1U << 4) /* 1b */
551 #define CCIFMD_MD1_EVENT_MASK_B_LSB (1U << 5) /* 1b */
552 #define CCIFMD_MD2_EVENT_MASK_B_LSB (1U << 6) /* 1b */
553 #define DSI0_VSYNC_MASK_B_LSB (1U << 7) /* 1b */
554 #define DSI1_VSYNC_MASK_B_LSB (1U << 8) /* 1b */
555 #define DPI_VSYNC_MASK_B_LSB (1U << 9) /* 1b */
556 #define ISP0_VSYNC_MASK_B_LSB (1U << 10) /* 1b */
557 #define ISP1_VSYNC_MASK_B_LSB (1U << 11) /* 1b */
558 #define MD_SRCCLKENA_0_INFRA_MASK_B_LSB (1U << 12) /* 1b */
559 #define MD_SRCCLKENA_1_INFRA_MASK_B_LSB (1U << 13) /* 1b */
560 #define CONN_SRCCLKENA_INFRA_MASK_B_LSB (1U << 14) /* 1b */
561 #define MD32_SRCCLKENA_INFRA_MASK_B_LSB (1U << 15) /* 1b */
562 #define SRCCLKENI_INFRA_MASK_B_LSB (1U << 16) /* 1b */
563 #define MD_APSRC_REQ_0_INFRA_MASK_B_LSB (1U << 17) /* 1b */
564 #define MD_APSRC_REQ_1_INFRA_MASK_B_LSB (1U << 18) /* 1b */
565 #define CONN_APSRCREQ_INFRA_MASK_B_LSB (1U << 19) /* 1b */
566 #define MD32_APSRCREQ_INFRA_MASK_B_LSB (1U << 20) /* 1b */
567 #define MD_DDR_EN_0_MASK_B_LSB (1U << 21) /* 1b */
568 #define MD_DDR_EN_1_MASK_B_LSB (1U << 22) /* 1b */
569 #define MD_VRF18_REQ_0_MASK_B_LSB (1U << 23) /* 1b */
570 #define MD_VRF18_REQ_1_MASK_B_LSB (1U << 24) /* 1b */
571 #define MD1_DVFS_REQ_MASK_LSB (1U << 25) /* 2b */
572 #define CPU_DVFS_REQ_MASK_LSB (1U << 27) /* 1b */
573 #define EMI_BW_DVFS_REQ_MASK_LSB (1U << 28) /* 1b */
574 #define MD_SRCCLKENA_0_DVFS_REQ_MASK_B_LSB (1U << 29) /* 1b */
575 #define MD_SRCCLKENA_1_DVFS_REQ_MASK_B_LSB (1U << 30) /* 1b */
576 #define CONN_SRCCLKENA_DVFS_REQ_MASK_B_LSB (1U << 31) /* 1b */
577
578 /* SPM_SRC2_MASK (0x10006000+0x0C0) */
579 #define DVFS_HALT_MASK_B_LSB (1U << 0) /* 5b */
580 #define VDEC_REQ_MASK_B_LSB (1U << 6) /* 1b */
581 #define GCE_REQ_MASK_B_LSB (1U << 7) /* 1b */
582 #define CPU_MD_DVFS_REQ_MERGE_MASK_B_LSB (1U << 8) /* 1b */
583 #define MD_DDR_EN_DVFS_HALT_MASK_B_LSB (1U << 9) /* 2b */
584 #define DSI0_VSYNC_DVFS_HALT_MASK_B_LSB (1U << 11) /* 1b */
585 #define DSI1_VSYNC_DVFS_HALT_MASK_B_LSB (1U << 12) /* 1b */
586 #define DPI_VSYNC_DVFS_HALT_MASK_B_LSB (1U << 13) /* 1b */
587 #define ISP0_VSYNC_DVFS_HALT_MASK_B_LSB (1U << 14) /* 1b */
588 #define ISP1_VSYNC_DVFS_HALT_MASK_B_LSB (1U << 15) /* 1b */
589 #define CONN_DDR_EN_MASK_B_LSB (1U << 16) /* 1b */
590 #define DISP_REQ_MASK_B_LSB (1U << 17) /* 1b */
591 #define DISP1_REQ_MASK_B_LSB (1U << 18) /* 1b */
592 #define MFG_REQ_MASK_B_LSB (1U << 19) /* 1b */
593 #define C2K_PS_RCCIF_WAKE_MASK_B_LSB (1U << 20) /* 1b */
594 #define C2K_L1_RCCIF_WAKE_MASK_B_LSB (1U << 21) /* 1b */
595 #define PS_C2K_RCCIF_WAKE_MASK_B_LSB (1U << 22) /* 1b */
596 #define L1_C2K_RCCIF_WAKE_MASK_B_LSB (1U << 23) /* 1b */
597 #define SDIO_ON_DVFS_REQ_MASK_B_LSB (1U << 24) /* 1b */
598 #define EMI_BOOST_DVFS_REQ_MASK_B_LSB (1U << 25) /* 1b */
599 #define CPU_MD_EMI_DVFS_REQ_PROT_DIS_LSB (1U << 26) /* 1b */
600 #define DRAMC_SPCMD_APSRC_REQ_MASK_B_LSB (1U << 27) /* 1b */
601
602 /* SPM_WAKEUP_EVENT_MASK (0x10006000+0x0C4) */
603 #define SPM_WAKEUP_EVENT_MASK_LSB (1U << 0) /* 32b */
604
605 /* SPM_WAKEUP_EVENT_EXT_MASK (0x10006000+0x0C8) */
606 #define SPM_WAKEUP_EVENT_EXT_MASK_LSB (1U << 0) /* 32b */
607
608 /* SCP_CLK_CON (0x10006000+0x0D0) */
609 #define SCP_26M_CK_SEL_LSB (1U << 0) /* 1b */
610
611 /* PCM_DEBUG_CON (0x10006000+0x0D4) */
612 #define PCM_DEBUG_OUT_ENABLE_LSB (1U << 0) /* 1b */
613
614 /* PCM_REG0_DATA (0x10006000+0x100) */
615 #define PCM_REG0_DATA_LSB (1U << 0) /* 32b */
616
617 /* PCM_REG1_DATA (0x10006000+0x104) */
618 #define PCM_REG1_DATA_LSB (1U << 0) /* 32b */
619
620 /* PCM_REG2_DATA (0x10006000+0x108) */
621 #define PCM_REG2_DATA_LSB (1U << 0) /* 32b */
622
623 /* PCM_REG3_DATA (0x10006000+0x10C) */
624 #define PCM_REG3_DATA_LSB (1U << 0) /* 32b */
625
626 /* PCM_REG4_DATA (0x10006000+0x110) */
627 #define PCM_REG4_DATA_LSB (1U << 0) /* 32b */
628
629 /* PCM_REG5_DATA (0x10006000+0x114) */
630 #define PCM_REG5_DATA_LSB (1U << 0) /* 32b */
631
632 /* PCM_REG6_DATA (0x10006000+0x118) */
633 #define PCM_REG6_DATA_LSB (1U << 0) /* 32b */
634
635 /* PCM_REG7_DATA (0x10006000+0x11C) */
636 #define PCM_REG7_DATA_LSB (1U << 0) /* 32b */
637
638 /* PCM_REG8_DATA (0x10006000+0x120) */
639 #define PCM_REG8_DATA_LSB (1U << 0) /* 32b */
640
641 /* PCM_REG9_DATA (0x10006000+0x124) */
642 #define PCM_REG9_DATA_LSB (1U << 0) /* 32b */
643
644 /* PCM_REG10_DATA (0x10006000+0x128) */
645 #define PCM_REG10_DATA_LSB (1U << 0) /* 32b */
646
647 /* PCM_REG11_DATA (0x10006000+0x12C) */
648 #define PCM_REG11_DATA_LSB (1U << 0) /* 32b */
649
650 /* PCM_REG12_DATA (0x10006000+0x130) */
651 #define PCM_REG12_DATA_LSB (1U << 0) /* 32b */
652
653 /* PCM_REG13_DATA (0x10006000+0x134) */
654 #define PCM_REG13_DATA_LSB (1U << 0) /* 32b */
655
656 /* PCM_REG14_DATA (0x10006000+0x138) */
657 #define PCM_REG14_DATA_LSB (1U << 0) /* 32b */
658
659 /* PCM_REG15_DATA (0x10006000+0x13C) */
660 #define PCM_REG15_DATA_LSB (1U << 0) /* 32b */
661
662 /* PCM_REG12_MASK_B_STA (0x10006000+0x140) */
663 #define PCM_REG12_MASK_B_STA_LSB (1U << 0) /* 32b */
664
665 /* PCM_REG12_EXT_DATA (0x10006000+0x144) */
666 #define PCM_REG12_EXT_DATA_LSB (1U << 0) /* 32b */
667
668 /* PCM_REG12_EXT_MASK_B_STA (0x10006000+0x148) */
669 #define PCM_REG12_EXT_MASK_B_STA_LSB (1U << 0) /* 32b */
670
671 /* PCM_EVENT_REG_STA (0x10006000+0x14C) */
672 #define PCM_EVENT_REG_STA_LSB (1U << 0) /* 32b */
673
674 /* PCM_TIMER_OUT (0x10006000+0x150) */
675 #define PCM_TIMER_OUT_LSB (1U << 0) /* 32b */
676
677 /* PCM_WDT_OUT (0x10006000+0x154) */
678 #define PCM_WDT_OUT_LSB (1U << 0) /* 32b */
679
680 /* SPM_IRQ_STA (0x10006000+0x158) */
681 #define TWAM_IRQ_LSB (1U << 2) /* 1b */
682 #define PCM_IRQ_LSB (1U << 3) /* 1b */
683 #define SPM_IRQ_SWINT_LSB (1U << 4) /* 10b */
684
685 /* SPM_WAKEUP_STA (0x10006000+0x15C) */
686 #define SPM_WAKEUP_EVENT_STA_LSB (1U << 0) /* 32b */
687
688 /* SPM_WAKEUP_EXT_STA (0x10006000+0x160) */
689 #define SPM_WAKEUP_EVENT_EXT_STA_LSB (1U << 0) /* 32b */
690
691 /* SPM_WAKEUP_MISC (0x10006000+0x164) */
692 #define SPM_WAKEUP_EVENT_MISC_LSB (1U << 0) /* 30b */
693 #define SPM_PWRAP_IRQ_ACK_LSB (1U << 30) /* 1b */
694 #define SPM_PWRAP_IRQ_LSB (1U << 31) /* 1b */
695
696 /* BUS_PROTECT_RDY (0x10006000+0x168) */
697 #define BUS_PROTECT_RDY_LSB (1U << 0) /* 32b */
698
699 /* BUS_PROTECT2_RDY (0x10006000+0x16C) */
700 #define BUS_PROTECT2_RDY_LSB (1U << 0) /* 32b */
701
702 /* SUBSYS_IDLE_STA (0x10006000+0x170) */
703 #define SUBSYS_IDLE_STA_LSB (1U << 0) /* 32b */
704
705 /* CPU_IDLE_STA (0x10006000+0x174) */
706 #define MP0_CPU0_STANDBYWFI_AFTER_SEL_LSB (1U << 0) /* 1b */
707 #define MP0_CPU1_STANDBYWFI_AFTER_SEL_LSB (1U << 1) /* 1b */
708 #define MP0_CPU2_STANDBYWFI_AFTER_SEL_LSB (1U << 2) /* 1b */
709 #define MP0_CPU3_STANDBYWFI_AFTER_SEL_LSB (1U << 3) /* 1b */
710 #define MP1_CPU0_STANDBYWFI_AFTER_SEL_LSB (1U << 4) /* 1b */
711 #define MP1_CPU1_STANDBYWFI_AFTER_SEL_LSB (1U << 5) /* 1b */
712 #define MP1_CPU2_STANDBYWFI_AFTER_SEL_LSB (1U << 6) /* 1b */
713 #define MP1_CPU3_STANDBYWFI_AFTER_SEL_LSB (1U << 7) /* 1b */
714 #define MP0_CPU0_STANDBYWFI_LSB (1U << 10) /* 1b */
715 #define MP0_CPU1_STANDBYWFI_LSB (1U << 11) /* 1b */
716 #define MP0_CPU2_STANDBYWFI_LSB (1U << 12) /* 1b */
717 #define MP0_CPU3_STANDBYWFI_LSB (1U << 13) /* 1b */
718 #define MP1_CPU0_STANDBYWFI_LSB (1U << 14) /* 1b */
719 #define MP1_CPU1_STANDBYWFI_LSB (1U << 15) /* 1b */
720 #define MP1_CPU2_STANDBYWFI_LSB (1U << 16) /* 1b */
721 #define MP1_CPU3_STANDBYWFI_LSB (1U << 17) /* 1b */
722 #define MP0_CPUTOP_IDLE_LSB (1U << 20) /* 1b */
723 #define MP1_CPUTOP_IDLE_LSB (1U << 21) /* 1b */
724 #define MCU_BIU_IDLE_LSB (1U << 22) /* 1b */
725 #define MCUSYS_IDLE_LSB (1U << 23) /* 1b */
726
727 /* PCM_FSM_STA (0x10006000+0x178) */
728 #define EXEC_INST_OP_LSB (1U << 0) /* 4b */
729 #define PC_STATE_LSB (1U << 4) /* 3b */
730 #define IM_STATE_LSB (1U << 7) /* 3b */
731 #define MASTER_STATE_LSB (1U << 10) /* 5b */
732 #define EVENT_FSM_LSB (1U << 15) /* 3b */
733 #define PCM_CLK_SEL_STA_LSB (1U << 18) /* 3b */
734 #define PCM_KICK_LSB (1U << 21) /* 1b */
735 #define IM_KICK_LSB (1U << 22) /* 1b */
736 #define EXT_SRCCLKEN_STA_LSB (1U << 23) /* 2b */
737 #define EXT_SRCVOLTEN_STA_LSB (1U << 25) /* 1b */
738
739 /* PWR_STATUS (0x10006000+0x180) */
740 #define PWR_STATUS_LSB (1U << 0) /* 32b */
741
742 /* PWR_STATUS_2ND (0x10006000+0x184) */
743 #define PWR_STATUS_2ND_LSB (1U << 0) /* 32b */
744
745 /* CPU_PWR_STATUS (0x10006000+0x188) */
746 #define CPU_PWR_STATUS_LSB (1U << 0) /* 32b */
747
748 /* CPU_PWR_STATUS_2ND (0x10006000+0x18C) */
749 #define CPU_PWR_STATUS_2ND_LSB (1U << 0) /* 32b */
750
751 /* PCM_WDT_LATCH_0 (0x10006000+0x190) */
752 #define PCM_WDT_LATCH_0_LSB (1U << 0) /* 32b */
753
754 /* PCM_WDT_LATCH_1 (0x10006000+0x194) */
755 #define PCM_WDT_LATCH_1_LSB (1U << 0) /* 32b */
756
757 /* PCM_WDT_LATCH_2 (0x10006000+0x198) */
758 #define PCM_WDT_LATCH_2_LSB (1U << 0) /* 32b */
759
760 /* DRAMC_DBG_LATCH (0x10006000+0x19C) */
761 #define DRAMC_DEBUG_LATCH_STATUS_LSB (1U << 0) /* 32b */
762
763 /* SPM_TWAM_LAST_STA0 (0x10006000+0x1A0) */
764 #define SPM_TWAM_LAST_STA0_LSB (1U << 0) /* 32b */
765
766 /* SPM_TWAM_LAST_STA1 (0x10006000+0x1A4) */
767 #define SPM_TWAM_LAST_STA1_LSB (1U << 0) /* 32b */
768
769 /* SPM_TWAM_LAST_STA2 (0x10006000+0x1A8) */
770 #define SPM_TWAM_LAST_STA2_LSB (1U << 0) /* 32b */
771
772 /* SPM_TWAM_LAST_STA3 (0x10006000+0x1AC) */
773 #define SPM_TWAM_LAST_STA3_LSB (1U << 0) /* 32b */
774
775 /* SPM_TWAM_CURR_STA0 (0x10006000+0x1B0) */
776 #define SPM_TWAM_CURR_STA0_LSB (1U << 0) /* 32b */
777
778 /* SPM_TWAM_CURR_STA1 (0x10006000+0x1B4) */
779 #define SPM_TWAM_CURR_STA1_LSB (1U << 0) /* 32b */
780
781 /* SPM_TWAM_CURR_STA2 (0x10006000+0x1B8) */
782 #define SPM_TWAM_CURR_STA2_LSB (1U << 0) /* 32b */
783
784 /* SPM_TWAM_CURR_STA3 (0x10006000+0x1BC) */
785 #define SPM_TWAM_CURR_STA3_LSB (1U << 0) /* 32b */
786
787 /* SPM_TWAM_TIMER_OUT (0x10006000+0x1C0) */
788 #define SPM_TWAM_TIMER_OUT_LSB (1U << 0) /* 32b */
789
790 /* PCM_WDT_LATCH_3 (0x10006000+0x1C4) */
791 #define PCM_WDT_LATCH_3_LSB (1U << 0) /* 32b */
792
793 /* SPM_SRC_RDY_STA (0x10006000+0x1D0) */
794 #define SPM_INFRA_SRC_ACK_LSB (1U << 0) /* 1b */
795 #define SPM_VRF18_SRC_ACK_LSB (1U << 1) /* 1b */
796
797 /* MISC_STA (0x10006000+0x1D4) */
798 #define MM_DVFS_HALT_AF_MASK_LSB (1U << 0) /* 5b */
799
800 /* MCU_PWR_CON (0x10006000+0x200) */
801 #define MCU_PWR_RST_B_LSB (1U << 0) /* 1b */
802 #define MCU_PWR_ISO_LSB (1U << 1) /* 1b */
803 #define MCU_PWR_ON_LSB (1U << 2) /* 1b */
804 #define MCU_PWR_ON_2ND_LSB (1U << 3) /* 1b */
805 #define MCU_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
806 #define MCU_SRAM_CKISO_LSB (1U << 5) /* 1b */
807 #define MCU_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
808 #define MCU_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
809 #define MCU_SRAM_PDN_LSB (1U << 8) /* 1b */
810 #define MCU_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
811 #define SC_MCU_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
812 #define SC_MCU_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
813
814 /* MP0_CPUTOP_PWR_CON (0x10006000+0x204) */
815 #define MP0_CPUTOP_PWR_RST_B_LSB (1U << 0) /* 1b */
816 #define MP0_CPUTOP_PWR_ISO_LSB (1U << 1) /* 1b */
817 #define MP0_CPUTOP_PWR_ON_LSB (1U << 2) /* 1b */
818 #define MP0_CPUTOP_PWR_ON_2ND_LSB (1U << 3) /* 1b */
819 #define MP0_CPUTOP_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
820 #define MP0_CPUTOP_SRAM_CKISO_LSB (1U << 5) /* 1b */
821 #define MP0_CPUTOP_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
822 #define MP0_CPUTOP_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
823 #define MP0_CPUTOP_SRAM_PDN_LSB (1U << 8) /* 1b */
824 #define MP0_CPUTOP_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
825 #define SC_MP0_CPUTOP_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
826 #define SC_MP0_CPUTOP_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
827
828 /* MP0_CPU0_PWR_CON (0x10006000+0x208) */
829 #define MP0_CPU0_PWR_RST_B_LSB (1U << 0) /* 1b */
830 #define MP0_CPU0_PWR_ISO_LSB (1U << 1) /* 1b */
831 #define MP0_CPU0_PWR_ON_LSB (1U << 2) /* 1b */
832 #define MP0_CPU0_PWR_ON_2ND_LSB (1U << 3) /* 1b */
833 #define MP0_CPU0_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
834 #define MP0_CPU0_SRAM_CKISO_LSB (1U << 5) /* 1b */
835 #define MP0_CPU0_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
836 #define MP0_CPU0_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
837 #define MP0_CPU0_SRAM_PDN_LSB (1U << 8) /* 1b */
838 #define MP0_CPU0_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
839 #define SC_MP0_CPU0_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
840 #define SC_MP0_CPU0_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
841
842 /* MP0_CPU1_PWR_CON (0x10006000+0x20C) */
843 #define MP0_CPU1_PWR_RST_B_LSB (1U << 0) /* 1b */
844 #define MP0_CPU1_PWR_ISO_LSB (1U << 1) /* 1b */
845 #define MP0_CPU1_PWR_ON_LSB (1U << 2) /* 1b */
846 #define MP0_CPU1_PWR_ON_2ND_LSB (1U << 3) /* 1b */
847 #define MP0_CPU1_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
848 #define MP0_CPU1_SRAM_CKISO_LSB (1U << 5) /* 1b */
849 #define MP0_CPU1_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
850 #define MP0_CPU1_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
851 #define MP0_CPU1_SRAM_PDN_LSB (1U << 8) /* 1b */
852 #define MP0_CPU1_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
853 #define SC_MP0_CPU1_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
854 #define SC_MP0_CPU1_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
855
856 /* MP0_CPU2_PWR_CON (0x10006000+0x210) */
857 #define MP0_CPU2_PWR_RST_B_LSB (1U << 0) /* 1b */
858 #define MP0_CPU2_PWR_ISO_LSB (1U << 1) /* 1b */
859 #define MP0_CPU2_PWR_ON_LSB (1U << 2) /* 1b */
860 #define MP0_CPU2_PWR_ON_2ND_LSB (1U << 3) /* 1b */
861 #define MP0_CPU2_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
862 #define MP0_CPU2_SRAM_CKISO_LSB (1U << 5) /* 1b */
863 #define MP0_CPU2_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
864 #define MP0_CPU2_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
865 #define MP0_CPU2_SRAM_PDN_LSB (1U << 8) /* 1b */
866 #define MP0_CPU2_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
867 #define SC_MP0_CPU2_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
868 #define SC_MP0_CPU2_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
869
870 /* MP0_CPU3_PWR_CON (0x10006000+0x214) */
871 #define MP0_CPU3_PWR_RST_B_LSB (1U << 0) /* 1b */
872 #define MP0_CPU3_PWR_ISO_LSB (1U << 1) /* 1b */
873 #define MP0_CPU3_PWR_ON_LSB (1U << 2) /* 1b */
874 #define MP0_CPU3_PWR_ON_2ND_LSB (1U << 3) /* 1b */
875 #define MP0_CPU3_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
876 #define MP0_CPU3_SRAM_CKISO_LSB (1U << 5) /* 1b */
877 #define MP0_CPU3_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
878 #define MP0_CPU3_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
879 #define MP0_CPU3_SRAM_PDN_LSB (1U << 8) /* 1b */
880 #define MP0_CPU3_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
881 #define SC_MP0_CPU3_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
882 #define SC_MP0_CPU3_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
883
884 /* MP1_CPUTOP_PWR_CON (0x10006000+0x218) */
885 #define MP1_CPUTOP_PWR_RST_B_LSB (1U << 0) /* 1b */
886 #define MP1_CPUTOP_PWR_ISO_LSB (1U << 1) /* 1b */
887 #define MP1_CPUTOP_PWR_ON_LSB (1U << 2) /* 1b */
888 #define MP1_CPUTOP_PWR_ON_2ND_LSB (1U << 3) /* 1b */
889 #define MP1_CPUTOP_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
890 #define MP1_CPUTOP_SRAM_CKISO_LSB (1U << 5) /* 1b */
891 #define MP1_CPUTOP_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
892 #define MP1_CPUTOP_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
893 #define MP1_CPUTOP_SRAM_PDN_LSB (1U << 8) /* 1b */
894 #define MP1_CPUTOP_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
895 #define SC_MP1_CPUTOP_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
896 #define SC_MP1_CPUTOP_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
897
898 /* MP1_CPU0_PWR_CON (0x10006000+0x21C) */
899 #define MP1_CPU0_PWR_RST_B_LSB (1U << 0) /* 1b */
900 #define MP1_CPU0_PWR_ISO_LSB (1U << 1) /* 1b */
901 #define MP1_CPU0_PWR_ON_LSB (1U << 2) /* 1b */
902 #define MP1_CPU0_PWR_ON_2ND_LSB (1U << 3) /* 1b */
903 #define MP1_CPU0_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
904 #define MP1_CPU0_SRAM_CKISO_LSB (1U << 5) /* 1b */
905 #define MP1_CPU0_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
906 #define MP1_CPU0_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
907 #define MP1_CPU0_SRAM_PDN_LSB (1U << 8) /* 1b */
908 #define MP1_CPU0_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
909 #define SC_MP1_CPU0_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
910 #define SC_MP1_CPU0_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
911
912 /* MP1_CPU1_PWR_CON (0x10006000+0x220) */
913 #define MP1_CPU1_PWR_RST_B_LSB (1U << 0) /* 1b */
914 #define MP1_CPU1_PWR_ISO_LSB (1U << 1) /* 1b */
915 #define MP1_CPU1_PWR_ON_LSB (1U << 2) /* 1b */
916 #define MP1_CPU1_PWR_ON_2ND_LSB (1U << 3) /* 1b */
917 #define MP1_CPU1_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
918 #define MP1_CPU1_SRAM_CKISO_LSB (1U << 5) /* 1b */
919 #define MP1_CPU1_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
920 #define MP1_CPU1_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
921 #define MP1_CPU1_SRAM_PDN_LSB (1U << 8) /* 1b */
922 #define MP1_CPU1_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
923 #define SC_MP1_CPU1_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
924 #define SC_MP1_CPU1_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
925
926 /* MP1_CPU2_PWR_CON (0x10006000+0x224) */
927 #define MP1_CPU2_PWR_RST_B_LSB (1U << 0) /* 1b */
928 #define MP1_CPU2_PWR_ISO_LSB (1U << 1) /* 1b */
929 #define MP1_CPU2_PWR_ON_LSB (1U << 2) /* 1b */
930 #define MP1_CPU2_PWR_ON_2ND_LSB (1U << 3) /* 1b */
931 #define MP1_CPU2_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
932 #define MP1_CPU2_SRAM_CKISO_LSB (1U << 5) /* 1b */
933 #define MP1_CPU2_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
934 #define MP1_CPU2_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
935 #define MP1_CPU2_SRAM_PDN_LSB (1U << 8) /* 1b */
936 #define MP1_CPU2_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
937 #define SC_MP1_CPU2_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
938 #define SC_MP1_CPU2_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
939
940 /* MP1_CPU3_PWR_CON (0x10006000+0x228) */
941 #define MP1_CPU3_PWR_RST_B_LSB (1U << 0) /* 1b */
942 #define MP1_CPU3_PWR_ISO_LSB (1U << 1) /* 1b */
943 #define MP1_CPU3_PWR_ON_LSB (1U << 2) /* 1b */
944 #define MP1_CPU3_PWR_ON_2ND_LSB (1U << 3) /* 1b */
945 #define MP1_CPU3_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
946 #define MP1_CPU3_SRAM_CKISO_LSB (1U << 5) /* 1b */
947 #define MP1_CPU3_SRAM_ISOINT_B_LSB (1U << 6) /* 1b */
948 #define MP1_CPU3_SRAM_PD_SLPB_CLAMP_LSB (1U << 7) /* 1b */
949 #define MP1_CPU3_SRAM_PDN_LSB (1U << 8) /* 1b */
950 #define MP1_CPU3_SRAM_SLEEP_B_LSB (1U << 12) /* 1b */
951 #define SC_MP1_CPU3_SRAM_PDN_ACK_LSB (1U << 24) /* 1b */
952 #define SC_MP1_CPU3_SRAM_SLEEP_B_ACK_LSB (1U << 28) /* 1b */
953
954 /* MP0_CPUTOP_L2_PDN (0x10006000+0x240) */
955 #define MP0_CPUTOP_L2_SRAM_PDN_LSB (1U << 0) /* 1b */
956 #define MP0_CPUTOP_L2_SRAM_PDN_ACK_LSB (1U << 8) /* 1b */
957
958 /* MP0_CPUTOP_L2_SLEEP_B (0x10006000+0x244) */
959 #define MP0_CPUTOP_L2_SRAM_SLEEP_B_LSB (1U << 0) /* 1b */
960 #define MP0_CPUTOP_L2_SRAM_SLEEP_B_ACK_LSB (1U << 8) /* 1b */
961
962 /* MP0_CPU0_L1_PDN (0x10006000+0x248) */
963 #define MP0_CPU0_L1_PDN_LSB (1U << 0) /* 1b */
964 #define MP0_CPU0_L1_PDN_ACK_LSB (1U << 8) /* 1b */
965
966 /* MP0_CPU1_L1_PDN (0x10006000+0x24C) */
967 #define MP0_CPU1_L1_PDN_LSB (1U << 0) /* 1b */
968 #define MP0_CPU1_L1_PDN_ACK_LSB (1U << 8) /* 1b */
969
970 /* MP0_CPU2_L1_PDN (0x10006000+0x250) */
971 #define MP0_CPU2_L1_PDN_LSB (1U << 0) /* 1b */
972 #define MP0_CPU2_L1_PDN_ACK_LSB (1U << 8) /* 1b */
973
974 /* MP0_CPU3_L1_PDN (0x10006000+0x254) */
975 #define MP0_CPU3_L1_PDN_LSB (1U << 0) /* 1b */
976 #define MP0_CPU3_L1_PDN_ACK_LSB (1U << 8) /* 1b */
977
978 /* MP1_CPUTOP_L2_PDN (0x10006000+0x258) */
979 #define MP1_CPUTOP_L2_SRAM_PDN_LSB (1U << 0) /* 1b */
980 #define MP1_CPUTOP_L2_SRAM_PDN_ACK_LSB (1U << 8) /* 1b */
981
982 /* MP1_CPUTOP_L2_SLEEP_B (0x10006000+0x25C) */
983 #define MP1_CPUTOP_L2_SRAM_SLEEP_B_LSB (1U << 0) /* 1b */
984 #define MP1_CPUTOP_L2_SRAM_SLEEP_B_ACK_LSB (1U << 8) /* 1b */
985
986 /* MP1_CPU0_L1_PDN (0x10006000+0x260) */
987 #define MP1_CPU0_L1_PDN_LSB (1U << 0) /* 1b */
988 #define MP1_CPU0_L1_PDN_ACK_LSB (1U << 8) /* 1b */
989
990 /* MP1_CPU1_L1_PDN (0x10006000+0x264) */
991 #define MP1_CPU1_L1_PDN_LSB (1U << 0) /* 1b */
992 #define MP1_CPU1_L1_PDN_ACK_LSB (1U << 8) /* 1b */
993
994 /* MP1_CPU2_L1_PDN (0x10006000+0x268) */
995 #define MP1_CPU2_L1_PDN_LSB (1U << 0) /* 1b */
996 #define MP1_CPU2_L1_PDN_ACK_LSB (1U << 8) /* 1b */
997
998 /* MP1_CPU3_L1_PDN (0x10006000+0x26C) */
999 #define MP1_CPU3_L1_PDN_LSB (1U << 0) /* 1b */
1000 #define MP1_CPU3_L1_PDN_ACK_LSB (1U << 8) /* 1b */
1001
1002 /* CPU_EXT_BUCK_ISO (0x10006000+0x290) */
1003 #define MP0_EXT_BUCK_ISO_LSB (1U << 0) /* 1b */
1004 #define MP1_EXT_BUCK_ISO_LSB (1U << 1) /* 1b */
1005
1006 /* DUMMY1_PWR_CON (0x10006000+0x2B0) */
1007 #define DUMMY1_PWR_RST_B_LSB (1U << 0) /* 1b */
1008 #define DUMMY1_PWR_ISO_LSB (1U << 1) /* 1b */
1009 #define DUMMY1_PWR_ON_LSB (1U << 2) /* 1b */
1010 #define DUMMY1_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1011 #define DUMMY1_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1012
1013 /* BYPASS_SPMC (0x10006000+0x2B4) */
1014 #define BYPASS_CPU_SPMC_MODE_LSB (1U << 0) /* 1b */
1015
1016 /* SPMC_DORMANT_ENABLE (0x10006000+0x2B8) */
1017 #define MP0_SPMC_SRAM_DORMANT_EN_LSB (1U << 0) /* 1b */
1018 #define MP1_SPMC_SRAM_DORMANT_EN_LSB (1U << 1) /* 1b */
1019
1020 /* ARMPLL_CLK_CON (0x10006000+0x2BC) */
1021 #define MUXSEL_SC_CCIPLL_LSB (1U << 0) /* 1b */
1022 #define MUXSEL_SC_ARMPLL1_LSB (1U << 1) /* 1b */
1023 #define MUXSEL_SC_ARMPLL2_LSB (1U << 2) /* 1b */
1024 #define REG_SC_ARM_CLK_OFF_LSB (1U << 8) /* 4b */
1025 #define REG_SC_ARMPLL_OFF_LSB (1U << 12) /* 4b */
1026 #define REG_SC_ARMPLLOUT_OFF_LSB (1U << 16) /* 4b */
1027 #define REG_SC_FHC_PAUSE_LSB (1U << 20) /* 4b */
1028 #define REG_SC_ARMPLL_S_OFF_LSB (1U << 24) /* 4b */
1029
1030 /* SPMC_IN_RET (0x10006000+0x2C0) */
1031 #define SPMC_STATUS_LSB (1U << 0) /* 8b */
1032
1033 /* VDE_PWR_CON (0x10006000+0x300) */
1034 #define VDE_PWR_RST_B_LSB (1U << 0) /* 1b */
1035 #define VDE_PWR_ISO_LSB (1U << 1) /* 1b */
1036 #define VDE_PWR_ON_LSB (1U << 2) /* 1b */
1037 #define VDE_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1038 #define VDE_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1039 #define VDE_SRAM_PDN_LSB (1U << 8) /* 4b */
1040 #define VDE_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1041
1042 /* VEN_PWR_CON (0x10006000+0x304) */
1043 #define VEN_PWR_RST_B_LSB (1U << 0) /* 1b */
1044 #define VEN_PWR_ISO_LSB (1U << 1) /* 1b */
1045 #define VEN_PWR_ON_LSB (1U << 2) /* 1b */
1046 #define VEN_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1047 #define VEN_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1048 #define VEN_SRAM_PDN_LSB (1U << 8) /* 4b */
1049 #define VEN_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1050
1051 /* ISP_PWR_CON (0x10006000+0x308) */
1052 #define ISP_PWR_RST_B_LSB (1U << 0) /* 1b */
1053 #define ISP_PWR_ISO_LSB (1U << 1) /* 1b */
1054 #define ISP_PWR_ON_LSB (1U << 2) /* 1b */
1055 #define ISP_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1056 #define ISP_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1057 #define ISP_SRAM_PDN_LSB (1U << 8) /* 4b */
1058 #define ISP_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1059
1060 /* DIS_PWR_CON (0x10006000+0x30C) */
1061 #define DIS_PWR_RST_B_LSB (1U << 0) /* 1b */
1062 #define DIS_PWR_ISO_LSB (1U << 1) /* 1b */
1063 #define DIS_PWR_ON_LSB (1U << 2) /* 1b */
1064 #define DIS_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1065 #define DIS_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1066 #define DIS_SRAM_PDN_LSB (1U << 8) /* 4b */
1067 #define DIS_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1068
1069 /* MJC_PWR_CON (0x10006000+0x310) */
1070 #define MJC_PWR_RST_B_LSB (1U << 0) /* 1b */
1071 #define MJC_PWR_ISO_LSB (1U << 1) /* 1b */
1072 #define MJC_PWR_ON_LSB (1U << 2) /* 1b */
1073 #define MJC_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1074 #define MJC_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1075 #define MJC_SRAM_PDN_LSB (1U << 8) /* 4b */
1076 #define MJC_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1077
1078 /* AUDIO_PWR_CON (0x10006000+0x314) */
1079 #define AUD_PWR_RST_B_LSB (1U << 0) /* 1b */
1080 #define AUD_PWR_ISO_LSB (1U << 1) /* 1b */
1081 #define AUD_PWR_ON_LSB (1U << 2) /* 1b */
1082 #define AUD_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1083 #define AUD_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1084 #define AUD_SRAM_PDN_LSB (1U << 8) /* 4b */
1085 #define AUD_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1086
1087 /* IFR_PWR_CON (0x10006000+0x318) */
1088 #define IFR_PWR_RST_B_LSB (1U << 0) /* 1b */
1089 #define IFR_PWR_ISO_LSB (1U << 1) /* 1b */
1090 #define IFR_PWR_ON_LSB (1U << 2) /* 1b */
1091 #define IFR_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1092 #define IFR_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1093 #define IFR_SRAM_PDN_LSB (1U << 8) /* 4b */
1094 #define IFR_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1095
1096 /* DPY_PWR_CON (0x10006000+0x31C) */
1097 #define DPY_PWR_RST_B_LSB (1U << 0) /* 1b */
1098 #define DPY_PWR_ISO_LSB (1U << 1) /* 1b */
1099 #define DPY_PWR_ON_LSB (1U << 2) /* 1b */
1100 #define DPY_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1101 #define DPY_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1102 #define DPY_SRAM_PDN_LSB (1U << 8) /* 4b */
1103 #define DPY_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1104
1105 /* MD1_PWR_CON (0x10006000+0x320) */
1106 #define MD1_PWR_RST_B_LSB (1U << 0) /* 1b */
1107 #define MD1_PWR_ISO_LSB (1U << 1) /* 1b */
1108 #define MD1_PWR_ON_LSB (1U << 2) /* 1b */
1109 #define MD1_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1110 #define MD1_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1111 #define MD1_SRAM_PDN_LSB (1U << 8) /* 1b */
1112
1113 /* MD2_PWR_CON (0x10006000+0x324) */
1114 #define MD2_PWR_RST_B_LSB (1U << 0) /* 1b */
1115 #define MD2_PWR_ISO_LSB (1U << 1) /* 1b */
1116 #define MD2_PWR_ON_LSB (1U << 2) /* 1b */
1117 #define MD2_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1118 #define MD2_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1119 #define MD2_SRAM_PDN_LSB (1U << 8) /* 1b */
1120
1121 /* C2K_PWR_CON (0x10006000+0x328) */
1122 #define C2K_PWR_RST_B_LSB (1U << 0) /* 1b */
1123 #define C2K_PWR_ISO_LSB (1U << 1) /* 1b */
1124 #define C2K_PWR_ON_LSB (1U << 2) /* 1b */
1125 #define C2K_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1126 #define C2K_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1127
1128 /* CONN_PWR_CON (0x10006000+0x32C) */
1129 #define CONN_PWR_RST_B_LSB (1U << 0) /* 1b */
1130 #define CONN_PWR_ISO_LSB (1U << 1) /* 1b */
1131 #define CONN_PWR_ON_LSB (1U << 2) /* 1b */
1132 #define CONN_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1133 #define CONN_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1134 #define CONN_SRAM_PDN_LSB (1U << 8) /* 1b */
1135 #define CONN_SRAM_PDN_ACK_LSB (1U << 12) /* 1b */
1136
1137 /* VCOREPDN_PWR_CON (0x10006000+0x330) */
1138 #define VCOREPDN_PWR_RST_B_LSB (1U << 0) /* 1b */
1139 #define VCOREPDN_PWR_ISO_LSB (1U << 1) /* 1b */
1140 #define VCOREPDN_PWR_ON_LSB (1U << 2) /* 1b */
1141 #define VCOREPDN_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1142 #define VCOREPDN_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1143
1144 /* MFG_ASYNC_PWR_CON (0x10006000+0x334) */
1145 #define MFG_ASYNC_PWR_RST_B_LSB (1U << 0) /* 1b */
1146 #define MFG_ASYNC_PWR_ISO_LSB (1U << 1) /* 1b */
1147 #define MFG_ASYNC_PWR_ON_LSB (1U << 2) /* 1b */
1148 #define MFG_ASYNC_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1149 #define MFG_ASYNC_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1150 #define MFG_ASYNC_SRAM_PDN_LSB (1U << 8) /* 4b */
1151 #define MFG_ASYNC_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1152
1153 /* MFG_PWR_CON (0x10006000+0x338) */
1154 #define MFG_PWR_RST_B_LSB (1U << 0) /* 1b */
1155 #define MFG_PWR_ISO_LSB (1U << 1) /* 1b */
1156 #define MFG_PWR_ON_LSB (1U << 2) /* 1b */
1157 #define MFG_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1158 #define MFG_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1159 #define MFG_SRAM_PDN_LSB (1U << 8) /* 6b */
1160 #define MFG_SRAM_PDN_ACK_LSB (1U << 16) /* 6b */
1161
1162 /* MFG_CORE0_PWR_CON (0x10006000+0x33C) */
1163 #define MFG_CORE0_PWR_RST_B_LSB (1U << 0) /* 1b */
1164 #define MFG_CORE0_PWR_ISO_LSB (1U << 1) /* 1b */
1165 #define MFG_CORE0_PWR_ON_LSB (1U << 2) /* 1b */
1166 #define MFG_CORE0_ON_2ND_LSB (1U << 3) /* 1b */
1167 #define MFG_CORE0_CLK_DIS_LSB (1U << 4) /* 1b */
1168 #define MFG_CORE0_SRAM_PDN_LSB (1U << 5) /* 1b */
1169 #define MFG_CORE0_SRAM_PDN_ACK_LSB (1U << 6) /* 1b */
1170
1171 /* MFG_CORE1_PWR_CON (0x10006000+0x340) */
1172 #define MFG_CORE1_PWR_RST_B_LSB (1U << 0) /* 1b */
1173 #define MFG_CORE1_PWR_ISO_LSB (1U << 1) /* 1b */
1174 #define MFG_CORE1_PWR_ON_LSB (1U << 2) /* 1b */
1175 #define MFG_CORE1_ON_2ND_LSB (1U << 3) /* 1b */
1176 #define MFG_CORE1_CLK_DIS_LSB (1U << 4) /* 1b */
1177 #define MFG_CORE1_SRAM_PDN_LSB (1U << 5) /* 1b */
1178 #define MFG_CORE1_SRAM_PDN_ACK_LSB (1U << 6) /* 1b */
1179
1180 /* CAM_PWR_CON (0x10006000+0x344) */
1181 #define CAM_PWR_RST_B_LSB (1U << 0) /* 1b */
1182 #define CAM_PWR_ISO_LSB (1U << 1) /* 1b */
1183 #define CAM_PWR_ON_LSB (1U << 2) /* 1b */
1184 #define CAM_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1185 #define CAM_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1186 #define CAM_SRAM_PDN_LSB (1U << 8) /* 4b */
1187 #define CAM_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1188
1189 /* SYSRAM_CON (0x10006000+0x350) */
1190 #define IFR_SRAMROM_SRAM_PDN_LSB (1U << 0) /* 8b */
1191 #define IFR_SRAMROM_SRAM_CKISO_LSB (1U << 8) /* 8b */
1192 #define IFR_SRAMROM_SRAM_SLEEP_B_LSB (1U << 16) /* 8b */
1193 #define IFR_SRAMROM_SRAM_ISOINT_B_LSB (1U << 24) /* 8b */
1194
1195 /* SYSROM_CON (0x10006000+0x354) */
1196 #define IFR_SRAMROM_ROM_PDN_LSB (1U << 0) /* 6b */
1197
1198 /* SCP_SRAM_CON (0x10006000+0x358) */
1199 #define SCP_SRAM_PDN_LSB (1U << 0) /* 1b */
1200 #define SCP_SRAM_SLEEP_B_LSB (1U << 4) /* 1b */
1201 #define SCP_SRAM_ISOINT_B_LSB (1U << 8) /* 1b */
1202
1203 /* GCPU_SRAM_CON (0x10006000+0x35C) */
1204 #define GCPU_SRAM_PDN_LSB (1U << 0) /* 4b */
1205 #define GCPU_SRAM_CKISO_LSB (1U << 4) /* 4b */
1206 #define GCPU_SRAM_SLEEP_B_LSB (1U << 8) /* 4b */
1207 #define GCPU_SRAM_ISOINT_B_LSB (1U << 12) /* 4b */
1208
1209 /* MDSYS_INTF_INFRA_PWR_CON (0x10006000+0x360) */
1210 #define MDSYS_INTF_INFRA_PWR_RST_B_LSB (1U << 0) /* 1b */
1211 #define MDSYS_INTF_INFRA_PWR_ISO_LSB (1U << 1) /* 1b */
1212 #define MDSYS_INTF_INFRA_PWR_ON_LSB (1U << 2) /* 1b */
1213 #define MDSYS_INTF_INFRA_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1214 #define MDSYS_INTF_INFRA_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1215
1216 /* MDSYS_INTF_MD1_PWR_CON (0x10006000+0x364) */
1217 #define MDSYS_INTF_MD1_PWR_RST_B_LSB (1U << 0) /* 1b */
1218 #define MDSYS_INTF_MD1_PWR_ISO_LSB (1U << 1) /* 1b */
1219 #define MDSYS_INTF_MD1_PWR_ON_LSB (1U << 2) /* 1b */
1220 #define MDSYS_INTF_MD1_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1221 #define MDSYS_INTF_MD1_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1222
1223 /* MDSYS_INTF_C2K_PWR_CON (0x10006000+0x368) */
1224 #define MDSYS_INTF_C2K_PWR_RST_B_LSB (1U << 0) /* 1b */
1225 #define MDSYS_INTF_C2K_PWR_ISO_LSB (1U << 1) /* 1b */
1226 #define MDSYS_INTF_C2K_PWR_ON_LSB (1U << 2) /* 1b */
1227 #define MDSYS_INTF_C2K_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1228 #define MDSYS_INTF_C2K_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1229
1230 /* BSI_TOP_SRAM_CON (0x10006000+0x370) */
1231 #define BSI_TOP_SRAM_PDN_LSB (1U << 0) /* 7b */
1232 #define BSI_TOP_SRAM_DSLP_LSB (1U << 7) /* 7b */
1233 #define BSI_TOP_SRAM_SLEEP_B_LSB (1U << 14) /* 7b */
1234 #define BSI_TOP_SRAM_ISOINT_B_LSB (1U << 21) /* 7b */
1235 #define BSI_TOP_SRAM_ISO_EN_LSB (1U << 28) /* 2b */
1236
1237 /* DVFSP_SRAM_CON (0x10006000+0x374) */
1238 #define DVFSP_SRAM_PDN_LSB (1U << 0) /* 2b */
1239 #define DVFSP_SRAM_SLEEP_B_LSB (1U << 4) /* 2b */
1240 #define DVFSP_SRAM_ISOINT_B_LSB (1U << 8) /* 2b */
1241
1242 /* MD_EXT_BUCK_ISO (0x10006000+0x390) */
1243 #define MD_EXT_BUCK_ISO_LSB (1U << 0) /* 1b */
1244
1245 /* DUMMY2_PWR_CON (0x10006000+0x3B0) */
1246 #define DUMMY2_PWR_RST_B_LSB (1U << 0) /* 1b */
1247 #define DUMMY2_PWR_ISO_LSB (1U << 1) /* 1b */
1248 #define DUMMY2_PWR_ON_LSB (1U << 2) /* 1b */
1249 #define DUMMY2_PWR_ON_2ND_LSB (1U << 3) /* 1b */
1250 #define DUMMY2_PWR_CLK_DIS_LSB (1U << 4) /* 1b */
1251 #define DUMMY2_SRAM_PDN_LSB (1U << 8) /* 4b */
1252 #define DUMMY2_SRAM_PDN_ACK_LSB (1U << 12) /* 4b */
1253
1254 /* MD1_OUTPUT_PISO_S_EN_IZ (0x10006000+0x3B4) */
1255 #define MD1_OUTPUT_PISO_S_EN_IZ_LSB (1U << 0) /* 1b */
1256
1257 /* SPM_DVFS_CON (0x10006000+0x400) */
1258 #define SPM_DVFS_CON_LSB (1U << 0) /* 4b */
1259 #define SPM_DVFS_ACK_LSB (1U << 30) /* 2b */
1260
1261 /* SPM_MDBSI_CON (0x10006000+0x404) */
1262 #define SPM_MDBSI_CON_LSB (1U << 0) /* 3b */
1263
1264 /* SPM_MAS_PAUSE_MASK_B (0x10006000+0x408) */
1265 #define SPM_MAS_PAUSE_MASK_B_LSB (1U << 0) /* 32b */
1266
1267 /* SPM_MAS_PAUSE2_MASK_B (0x10006000+0x40C) */
1268 #define SPM_MAS_PAUSE2_MASK_B_LSB (1U << 0) /* 32b */
1269
1270 /* SPM_BSI_GEN (0x10006000+0x410) */
1271 #define SPM_BSI_START_LSB (1U << 0) /* 1b */
1272
1273 /* SPM_BSI_EN_SR (0x10006000+0x414) */
1274 #define SPM_BSI_EN_SR_LSB (1U << 0) /* 32b */
1275
1276 /* SPM_BSI_CLK_SR (0x10006000+0x418) */
1277 #define SPM_BSI_CLK_SR_LSB (1U << 0) /* 32b */
1278
1279 /* SPM_BSI_D0_SR (0x10006000+0x41C) */
1280 #define SPM_BSI_D0_SR_LSB (1U << 0) /* 32b */
1281
1282 /* SPM_BSI_D1_SR (0x10006000+0x420) */
1283 #define SPM_BSI_D1_SR_LSB (1U << 0) /* 32b */
1284
1285 /* SPM_BSI_D2_SR (0x10006000+0x424) */
1286 #define SPM_BSI_D2_SR_LSB (1U << 0) /* 32b */
1287
1288 /* SPM_AP_SEMA (0x10006000+0x428) */
1289 #define SPM_AP_SEMA_LSB (1U << 0) /* 1b */
1290
1291 /* SPM_SPM_SEMA (0x10006000+0x42C) */
1292 #define SPM_SPM_SEMA_LSB (1U << 0) /* 1b */
1293
1294 /* AP2MD_CROSS_TRIGGER (0x10006000+0x430) */
1295 #define AP2MD_CROSS_TRIGGER_REQ_LSB (1U << 0) /* 1b */
1296 #define AP2MD_CROSS_TRIGGER_ACK_LSB (1U << 1) /* 1b */
1297
1298 /* AP_MDSRC_REQ (0x10006000+0x434) */
1299 #define AP_MD1SRC_REQ_LSB (1U << 0) /* 1b */
1300 #define AP_MD2SRC_REQ_LSB (1U << 1) /* 1b */
1301 #define AP_MD1SRC_ACK_LSB (1U << 4) /* 1b */
1302 #define AP_MD2SRC_ACK_LSB (1U << 5) /* 1b */
1303
1304 /* SPM2MD_DVFS_CON (0x10006000+0x438) */
1305 #define SPM2MD_DVFS_CON_LSB (1U << 0) /* 16b */
1306
1307 /* MD2SPM_DVFS_CON (0x10006000+0x43C) */
1308 #define MD2SPM_DVFS_CON_LSB (1U << 0) /* 16b */
1309
1310 /* DRAMC_DPY_CLK_SW_CON_RSV (0x10006000+0x440) */
1311 #define SPM2DRAMC_SHUFFLE_START_LSB (1U << 0) /* 1b */
1312 #define SPM2DRAMC_SHUFFLE_SWITCH_LSB (1U << 1) /* 1b */
1313 #define SPM2DPY_DIV2_SYNC_LSB (1U << 2) /* 1b */
1314 #define SPM2DPY_1PLL_SWITCH_LSB (1U << 3) /* 1b */
1315 #define SPM2DPY_TEST_CK_MUX_LSB (1U << 4) /* 1b */
1316 #define SPM2DPY_ASYNC_MODE_LSB (1U << 5) /* 1b */
1317 #define SPM2TOP_ASYNC_MODE_LSB (1U << 6) /* 1b */
1318
1319 /* DPY_LP_CON (0x10006000+0x444) */
1320 #define SC_DDRPHY_LP_SIGNALS_LSB (1U << 0) /* 3b */
1321
1322 /* CPU_DVFS_REQ (0x10006000+0x448) */
1323 #define CPU_DVFS_REQ_LSB (1U << 0) /* 16b */
1324 #define DVFS_HALT_LSB (1U << 16) /* 1b */
1325 #define MD_DVFS_ERROR_STATUS_LSB (1U << 17) /* 1b */
1326
1327 /* SPM_PLL_CON (0x10006000+0x44C) */
1328 #define SC_MPLLOUT_OFF_LSB (1U << 0) /* 1b */
1329 #define SC_UNIPLLOUT_OFF_LSB (1U << 1) /* 1b */
1330 #define SC_MPLL_OFF_LSB (1U << 4) /* 1b */
1331 #define SC_UNIPLL_OFF_LSB (1U << 5) /* 1b */
1332 #define SC_MPLL_S_OFF_LSB (1U << 8) /* 1b */
1333 #define SC_UNIPLL_S_OFF_LSB (1U << 9) /* 1b */
1334 #define SC_SMI_CK_OFF_LSB (1U << 16) /* 1b */
1335 #define SC_MD32K_CK_OFF_LSB (1U << 17) /* 1b */
1336
1337 /* SPM_EMI_BW_MODE (0x10006000+0x450) */
1338 #define EMI_BW_MODE_LSB (1U << 0) /* 1b */
1339 #define EMI_BOOST_MODE_LSB (1U << 1) /* 1b */
1340
1341 /* AP2MD_PEER_WAKEUP (0x10006000+0x454) */
1342 #define AP2MD_PEER_WAKEUP_LSB (1U << 0) /* 1b */
1343
1344 /* ULPOSC_CON (0x10006000+0x458) */
1345 #define ULPOSC_EN_LSB (1U << 0) /* 1b */
1346 #define ULPOSC_RST_LSB (1U << 1) /* 1b */
1347 #define ULPOSC_CG_EN_LSB (1U << 2) /* 1b */
1348
1349 /* DRAMC_DPY_CLK_SW_CON_SEL (0x10006000+0x460) */
1350 #define SW_DR_GATE_RETRY_EN_SEL_LSB (1U << 0) /* 2b */
1351 #define SW_EMI_CLK_OFF_SEL_LSB (1U << 2) /* 2b */
1352 #define SW_DPY_MODE_SW_SEL_LSB (1U << 4) /* 2b */
1353 #define SW_DMSUS_OFF_SEL_LSB (1U << 6) /* 2b */
1354 #define SW_MEM_CK_OFF_SEL_LSB (1U << 8) /* 2b */
1355 #define SW_DPY_2ND_DLL_EN_SEL_LSB (1U << 10) /* 2b */
1356 #define SW_DPY_DLL_EN_SEL_LSB (1U << 12) /* 2b */
1357 #define SW_DPY_DLL_CK_EN_SEL_LSB (1U << 14) /* 2b */
1358 #define SW_DPY_VREF_EN_SEL_LSB (1U << 16) /* 2b */
1359 #define SW_PHYPLL_EN_SEL_LSB (1U << 18) /* 2b */
1360 #define SW_DDRPHY_FB_CK_EN_SEL_LSB (1U << 20) /* 2b */
1361 #define SEPERATE_PHY_PWR_SEL_LSB (1U << 23) /* 1b */
1362 #define SW_DMDRAMCSHU_ACK_SEL_LSB (1U << 24) /* 2b */
1363 #define SW_EMI_CLK_OFF_ACK_SEL_LSB (1U << 26) /* 2b */
1364 #define SW_DR_SHORT_QUEUE_ACK_SEL_LSB (1U << 28) /* 2b */
1365 #define SW_DRAMC_DFS_STA_SEL_LSB (1U << 30) /* 2b */
1366
1367 /* DRAMC_DPY_CLK_SW_CON (0x10006000+0x464) */
1368 #define SW_DR_GATE_RETRY_EN_LSB (1U << 0) /* 2b */
1369 #define SW_EMI_CLK_OFF_LSB (1U << 2) /* 2b */
1370 #define SW_DPY_MODE_SW_LSB (1U << 4) /* 2b */
1371 #define SW_DMSUS_OFF_LSB (1U << 6) /* 2b */
1372 #define SW_MEM_CK_OFF_LSB (1U << 8) /* 2b */
1373 #define SW_DPY_2ND_DLL_EN_LSB (1U << 10) /* 2b */
1374 #define SW_DPY_DLL_EN_LSB (1U << 12) /* 2b */
1375 #define SW_DPY_DLL_CK_EN_LSB (1U << 14) /* 2b */
1376 #define SW_DPY_VREF_EN_LSB (1U << 16) /* 2b */
1377 #define SW_PHYPLL_EN_LSB (1U << 18) /* 2b */
1378 #define SW_DDRPHY_FB_CK_EN_LSB (1U << 20) /* 2b */
1379 #define SC_DR_SHU_EN_ACK_LSB (1U << 24) /* 2b */
1380 #define EMI_CLK_OFF_ACK_LSB (1U << 26) /* 2b */
1381 #define SC_DR_SHORT_QUEUE_ACK_LSB (1U << 28) /* 2b */
1382 #define SC_DRAMC_DFS_STA_LSB (1U << 30) /* 2b */
1383
1384 /* DRAMC_DPY_CLK_SW_CON_SEL2 (0x10006000+0x470) */
1385 #define SW_PHYPLL_SHU_EN_SEL_LSB (1U << 0) /* 1b */
1386 #define SW_PHYPLL2_SHU_EN_SEL_LSB (1U << 1) /* 1b */
1387 #define SW_PHYPLL_MODE_SW_SEL_LSB (1U << 2) /* 1b */
1388 #define SW_PHYPLL2_MODE_SW_SEL_LSB (1U << 3) /* 1b */
1389 #define SW_DR_SHORT_QUEUE_SEL_LSB (1U << 4) /* 1b */
1390 #define SW_DR_SHU_EN_SEL_LSB (1U << 5) /* 1b */
1391 #define SW_DR_SHU_LEVEL_SEL_LSB (1U << 6) /* 1b */
1392
1393 /* DRAMC_DPY_CLK_SW_CON2 (0x10006000+0x474) */
1394 #define SW_PHYPLL_SHU_EN_LSB (1U << 0) /* 1b */
1395 #define SW_PHYPLL2_SHU_EN_LSB (1U << 1) /* 1b */
1396 #define SW_PHYPLL_MODE_SW_LSB (1U << 2) /* 1b */
1397 #define SW_PHYPLL2_MODE_SW_LSB (1U << 3) /* 1b */
1398 #define SW_DR_SHORT_QUEUE_LSB (1U << 4) /* 1b */
1399 #define SW_DR_SHU_EN_LSB (1U << 5) /* 1b */
1400 #define SW_DR_SHU_LEVEL_LSB (1U << 6) /* 2b */
1401 #define SPM2MM_ULTRAREQ_LSB (1U << 8) /* 1b */
1402 #define SPM2MD_ULTRAREQ_LSB (1U << 9) /* 1b */
1403 #define SPM2MM_ULTRAACK_D2T_LSB (1U << 30) /* 1b */
1404 #define SPM2MD_ULTRAACK_D2T_LSB (1U << 31) /* 1b */
1405
1406 /* SPM_SEMA_M0 (0x10006000+0x480) */
1407 #define SPM_SEMA_M0_LSB (1U << 0) /* 8b */
1408
1409 /* SPM_SEMA_M1 (0x10006000+0x484) */
1410 #define SPM_SEMA_M1_LSB (1U << 0) /* 8b */
1411
1412 /* SPM_SEMA_M2 (0x10006000+0x488) */
1413 #define SPM_SEMA_M2_LSB (1U << 0) /* 8b */
1414
1415 /* SPM_SEMA_M3 (0x10006000+0x48C) */
1416 #define SPM_SEMA_M3_LSB (1U << 0) /* 8b */
1417
1418 /* SPM_SEMA_M4 (0x10006000+0x490) */
1419 #define SPM_SEMA_M4_LSB (1U << 0) /* 8b */
1420
1421 /* SPM_SEMA_M5 (0x10006000+0x494) */
1422 #define SPM_SEMA_M5_LSB (1U << 0) /* 8b */
1423
1424 /* SPM_SEMA_M6 (0x10006000+0x498) */
1425 #define SPM_SEMA_M6_LSB (1U << 0) /* 8b */
1426
1427 /* SPM_SEMA_M7 (0x10006000+0x49C) */
1428 #define SPM_SEMA_M7_LSB (1U << 0) /* 8b */
1429
1430 /* SPM_SEMA_M8 (0x10006000+0x4A0) */
1431 #define SPM_SEMA_M8_LSB (1U << 0) /* 8b */
1432
1433 /* SPM_SEMA_M9 (0x10006000+0x4A4) */
1434 #define SPM_SEMA_M9_LSB (1U << 0) /* 8b */
1435
1436 /* SRAM_DREQ_ACK (0x10006000+0x4AC) */
1437 #define SRAM_DREQ_ACK_LSB (1U << 0) /* 16b */
1438
1439 /* SRAM_DREQ_CON (0x10006000+0x4B0) */
1440 #define SRAM_DREQ_CON_LSB (1U << 0) /* 16b */
1441
1442 /* SRAM_DREQ_CON_SET (0x10006000+0x4B4) */
1443 #define SRAM_DREQ_CON_SET_LSB (1U << 0) /* 16b */
1444
1445 /* SRAM_DREQ_CON_CLR (0x10006000+0x4B8) */
1446 #define SRAM_DREQ_CON_CLR_LSB (1U << 0) /* 16b */
1447
1448 /* MP0_CPU0_IRQ_MASK (0x10006000+0x500) */
1449 #define MP0_CPU0_IRQ_MASK_LSB (1U << 0) /* 1b */
1450 #define MP0_CPU0_AUX_LSB (1U << 8) /* 11b */
1451
1452 /* MP0_CPU1_IRQ_MASK (0x10006000+0x504) */
1453 #define MP0_CPU1_IRQ_MASK_LSB (1U << 0) /* 1b */
1454 #define MP0_CPU1_AUX_LSB (1U << 8) /* 11b */
1455
1456 /* MP0_CPU2_IRQ_MASK (0x10006000+0x508) */
1457 #define MP0_CPU2_IRQ_MASK_LSB (1U << 0) /* 1b */
1458 #define MP0_CPU2_AUX_LSB (1U << 8) /* 11b */
1459
1460 /* MP0_CPU3_IRQ_MASK (0x10006000+0x50C) */
1461 #define MP0_CPU3_IRQ_MASK_LSB (1U << 0) /* 1b */
1462 #define MP0_CPU3_AUX_LSB (1U << 8) /* 11b */
1463
1464 /* MP1_CPU0_IRQ_MASK (0x10006000+0x510) */
1465 #define MP1_CPU0_IRQ_MASK_LSB (1U << 0) /* 1b */
1466 #define MP1_CPU0_AUX_LSB (1U << 8) /* 11b */
1467
1468 /* MP1_CPU1_IRQ_MASK (0x10006000+0x514) */
1469 #define MP1_CPU1_IRQ_MASK_LSB (1U << 0) /* 1b */
1470 #define MP1_CPU1_AUX_LSB (1U << 8) /* 11b */
1471
1472 /* MP1_CPU2_IRQ_MASK (0x10006000+0x518) */
1473 #define MP1_CPU2_IRQ_MASK_LSB (1U << 0) /* 1b */
1474 #define MP1_CPU2_AUX_LSB (1U << 8) /* 11b */
1475
1476 /* MP1_CPU3_IRQ_MASK (0x10006000+0x51C) */
1477 #define MP1_CPU3_IRQ_MASK_LSB (1U << 0) /* 1b */
1478 #define MP1_CPU3_AUX_LSB (1U << 8) /* 11b */
1479
1480 /* MP0_CPU0_WFI_EN (0x10006000+0x530) */
1481 #define MP0_CPU0_WFI_EN_LSB (1U << 0) /* 1b */
1482
1483 /* MP0_CPU1_WFI_EN (0x10006000+0x534) */
1484 #define MP0_CPU1_WFI_EN_LSB (1U << 0) /* 1b */
1485
1486 /* MP0_CPU2_WFI_EN (0x10006000+0x538) */
1487 #define MP0_CPU2_WFI_EN_LSB (1U << 0) /* 1b */
1488
1489 /* MP0_CPU3_WFI_EN (0x10006000+0x53C) */
1490 #define MP0_CPU3_WFI_EN_LSB (1U << 0) /* 1b */
1491
1492 /* MP1_CPU0_WFI_EN (0x10006000+0x540) */
1493 #define MP1_CPU0_WFI_EN_LSB (1U << 0) /* 1b */
1494
1495 /* MP1_CPU1_WFI_EN (0x10006000+0x544) */
1496 #define MP1_CPU1_WFI_EN_LSB (1U << 0) /* 1b */
1497
1498 /* MP1_CPU2_WFI_EN (0x10006000+0x548) */
1499 #define MP1_CPU2_WFI_EN_LSB (1U << 0) /* 1b */
1500
1501 /* MP1_CPU3_WFI_EN (0x10006000+0x54C) */
1502 #define MP1_CPU3_WFI_EN_LSB (1U << 0) /* 1b */
1503
1504 /* CPU_PTPOD2_CON (0x10006000+0x560) */
1505 #define MP0_PTPOD2_FBB_EN_LSB (1U << 0) /* 1b */
1506 #define MP1_PTPOD2_FBB_EN_LSB (1U << 1) /* 1b */
1507 #define MP0_PTPOD2_SPARK_EN_LSB (1U << 2) /* 1b */
1508 #define MP1_PTPOD2_SPARK_EN_LSB (1U << 3) /* 1b */
1509 #define MP0_PTPOD2_FBB_ACK_LSB (1U << 4) /* 1b */
1510 #define MP1_PTPOD2_FBB_ACK_LSB (1U << 5) /* 1b */
1511
1512 /* ROOT_CPUTOP_ADDR (0x10006000+0x570) */
1513 #define ROOT_CPUTOP_ADDR_LSB (1U << 0) /* 32b */
1514
1515 /* ROOT_CORE_ADDR (0x10006000+0x574) */
1516 #define ROOT_CORE_ADDR_LSB (1U << 0) /* 32b */
1517
1518 /* CPU_SPARE_CON (0x10006000+0x580) */
1519 #define CPU_SPARE_CON_LSB (1U << 0) /* 32b */
1520
1521 /* CPU_SPARE_CON_SET (0x10006000+0x584) */
1522 #define CPU_SPARE_CON_SET_LSB (1U << 0) /* 32b */
1523
1524 /* CPU_SPARE_CON_CLR (0x10006000+0x588) */
1525 #define CPU_SPARE_CON_CLR_LSB (1U << 0) /* 32b */
1526
1527 /* SPM_SW_FLAG (0x10006000+0x600) */
1528 #define SPM_SW_FLAG_LSB (1U << 0) /* 32b */
1529
1530 /* SPM_SW_DEBUG (0x10006000+0x604) */
1531 #define SPM_SW_DEBUG_LSB (1U << 0) /* 32b */
1532
1533 /* SPM_SW_RSV_0 (0x10006000+0x608) */
1534 #define SPM_SW_RSV_0_LSB (1U << 0) /* 32b */
1535
1536 /* SPM_SW_RSV_1 (0x10006000+0x60C) */
1537 #define SPM_SW_RSV_1_LSB (1U << 0) /* 32b */
1538
1539 /* SPM_SW_RSV_2 (0x10006000+0x610) */
1540 #define SPM_SW_RSV_2_LSB (1U << 0) /* 32b */
1541
1542 /* SPM_SW_RSV_3 (0x10006000+0x614) */
1543 #define SPM_SW_RSV_3_LSB (1U << 0) /* 32b */
1544
1545 /* SPM_SW_RSV_4 (0x10006000+0x618) */
1546 #define SPM_SW_RSV_4_LSB (1U << 0) /* 32b */
1547
1548 /* SPM_SW_RSV_5 (0x10006000+0x61C) */
1549 #define SPM_SW_RSV_5_LSB (1U << 0) /* 32b */
1550
1551 /* SPM_RSV_CON (0x10006000+0x620) */
1552 #define SPM_RSV_CON_LSB (1U << 0) /* 16b */
1553
1554 /* SPM_RSV_STA (0x10006000+0x624) */
1555 #define SPM_RSV_STA_LSB (1U << 0) /* 16b */
1556
1557 /* SPM_PASR_DPD_0 (0x10006000+0x630) */
1558 #define SPM_PASR_DPD_0_LSB (1U << 0) /* 32b */
1559
1560 /* SPM_PASR_DPD_1 (0x10006000+0x634) */
1561 #define SPM_PASR_DPD_1_LSB (1U << 0) /* 32b */
1562
1563 /* SPM_PASR_DPD_2 (0x10006000+0x638) */
1564 #define SPM_PASR_DPD_2_LSB (1U << 0) /* 32b */
1565
1566 /* SPM_PASR_DPD_3 (0x10006000+0x63C) */
1567 #define SPM_PASR_DPD_3_LSB (1U << 0) /* 32b */
1568
1569 /* SPM_SPARE_CON (0x10006000+0x640) */
1570 #define SPM_SPARE_CON_LSB (1U << 0) /* 32b */
1571
1572 /* SPM_SPARE_CON_SET (0x10006000+0x644) */
1573 #define SPM_SPARE_CON_SET_LSB (1U << 0) /* 32b */
1574
1575 /* SPM_SPARE_CON_CLR (0x10006000+0x648) */
1576 #define SPM_SPARE_CON_CLR_LSB (1U << 0) /* 32b */
1577
1578 /* SPM_SW_RSV_6 (0x10006000+0x64C) */
1579 #define SPM_SW_RSV_6_LSB (1U << 0) /* 32b */
1580
1581 /* SPM_SW_RSV_7 (0x10006000+0x650) */
1582 #define SPM_SW_RSV_7_LSB (1U << 0) /* 32b */
1583
1584 /* SPM_SW_RSV_8 (0x10006000+0x654) */
1585 #define SPM_SW_RSV_8_LSB (1U << 0) /* 32b */
1586
1587 /* SPM_SW_RSV_9 (0x10006000+0x658) */
1588 #define SPM_SW_RSV_9_LSB (1U << 0) /* 32b */
1589
1590 /* SPM_SW_RSV_10 (0x10006000+0x65C) */
1591 #define SPM_SW_RSV_10_LSB (1U << 0) /* 32b */
1592
1593 /* SPM_SW_RSV_11 (0x10006000+0x660) */
1594 #define SPM_SW_RSV_11_LSB (1U << 0) /* 32b */
1595
1596 /* SPM_SW_RSV_12 (0x10006000+0x664) */
1597 #define SPM_SW_RSV_12_LSB (1U << 0) /* 32b */
1598
1599 /* SPM_SW_RSV_13 (0x10006000+0x668) */
1600 #define SPM_SW_RSV_13_LSB (1U << 0) /* 32b */
1601
1602 /* SPM_SW_RSV_14 (0x10006000+0x66C) */
1603 #define SPM_SW_RSV_14_LSB (1U << 0) /* 32b */
1604
1605 /* SPM_SW_RSV_15 (0x10006000+0x670) */
1606 #define SPM_SW_RSV_15_LSB (1U << 0) /* 32b */
1607
1608 /* SPM_SW_RSV_16 (0x10006000+0x674) */
1609 #define SPM_SW_RSV_16_LSB (1U << 0) /* 32b */
1610
1611 /* SPM_SW_RSV_17 (0x10006000+0x678) */
1612 #define SPM_SW_RSV_17_LSB (1U << 0) /* 32b */
1613
1614 /* SPM_SW_RSV_18 (0x10006000+0x67C) */
1615 #define SPM_SW_RSV_18_LSB (1U << 0) /* 32b */
1616
1617 /* SPM_SW_RSV_19 (0x10006000+0x680) */
1618 #define SPM_SW_RSV_19_LSB (1U << 0) /* 32b */
1619
1620 /* SW_CRTL_EVENT (0x10006000+0x690) */
1621 #define SW_CRTL_EVENT_ON_LSB (1U << 0) /* 1b */
1622
1623 #define SPM_PROJECT_CODE 0xb16
1624
1625 #define SPM_REGWR_EN (1U << 0)
1626 #define SPM_REGWR_CFG_KEY (SPM_PROJECT_CODE << 16)
1627
1628 #define SPM_CPU_PDN_DIS (1U << 0)
1629 #define SPM_INFRA_PDN_DIS (1U << 1)
1630 #define SPM_DDRPHY_PDN_DIS (1U << 2)
1631 #define SPM_DUALVCORE_PDN_DIS (1U << 3)
1632 #define SPM_PASR_DIS (1U << 4)
1633 #define SPM_DPD_DIS (1U << 5)
1634 #define SPM_SODI_DIS (1U << 6)
1635 #define SPM_MEMPLL_RESET (1U << 7)
1636 #define SPM_MAINPLL_PDN_DIS (1U << 8)
1637 #define SPM_CPU_DVS_DIS (1U << 9)
1638 #define SPM_CPU_DORMANT (1U << 10)
1639 #define SPM_EXT_VSEL_GPIO103 (1U << 11)
1640 #define SPM_DDR_HIGH_SPEED (1U << 12)
1641 #define SPM_OPT (1U << 13)
1642
1643 #define POWER_ON_VAL1_DEF 0x15820
1644 #define PCM_FSM_STA_DEF 0x48490
1645 #define PCM_END_FSM_STA_DEF 0x08490
1646 #define PCM_END_FSM_STA_MASK 0x3fff0
1647 #define PCM_HANDSHAKE_SEND1 0xbeefbeef
1648
1649 #define PCM_WDT_TIMEOUT (30 * 32768)
1650 #define PCM_TIMER_MAX (0xffffffff - PCM_WDT_TIMEOUT)
1651
1652 #define CON0_PCM_KICK (1U << 0)
1653 #define CON0_IM_KICK (1U << 1)
1654 #define CON0_IM_SLEEP_DVS (1U << 3)
1655 #define CON0_PCM_SW_RESET (1U << 15)
1656 #define CON0_CFG_KEY (SPM_PROJECT_CODE << 16)
1657
1658 #define CON1_IM_SLAVE (1U << 0)
1659 #define CON1_MIF_APBEN (1U << 3)
1660 #define CON1_PCM_TIMER_EN (1U << 5)
1661 #define CON1_IM_NONRP_EN (1U << 6)
1662 #define CON1_PCM_WDT_EN (1U << 8)
1663 #define CON1_PCM_WDT_WAKE_MODE (1U << 9)
1664 #define CON1_SPM_SRAM_SLP_B (1U << 10)
1665 #define CON1_SPM_SRAM_ISO_B (1U << 11)
1666 #define CON1_EVENT_LOCK_EN (1U << 12)
1667 #define CON1_CFG_KEY (SPM_PROJECT_CODE << 16)
1668
1669 #define PCM_PWRIO_EN_R0 (1U << 0)
1670 #define PCM_PWRIO_EN_R7 (1U << 7)
1671 #define PCM_RF_SYNC_R0 (1U << 16)
1672 #define PCM_RF_SYNC_R2 (1U << 18)
1673 #define PCM_RF_SYNC_R6 (1U << 22)
1674 #define PCM_RF_SYNC_R7 (1U << 23)
1675
1676 #define CC_SYSCLK0_EN_0 (1U << 0)
1677 #define CC_SYSCLK0_EN_1 (1U << 1)
1678 #define CC_SYSCLK1_EN_0 (1U << 2)
1679 #define CC_SYSCLK1_EN_1 (1U << 3)
1680 #define CC_SYSSETTLE_SEL (1U << 4)
1681 #define CC_LOCK_INFRA_DCM (1U << 5)
1682 #define CC_SRCLKENA_MASK_0 (1U << 6)
1683 #define CC_CXO32K_RM_EN_MD1 (1U << 9)
1684 #define CC_CXO32K_RM_EN_MD2 (1U << 10)
1685 #define CC_CLKSQ1_SEL (1U << 12)
1686 #define CC_DISABLE_DORM_PWR (1U << 14)
1687 #define CC_MD32_DCM_EN (1U << 18)
1688
1689 #define WFI_OP_AND 1
1690 #define WFI_OP_OR 0
1691
1692 #define WAKE_MISC_PCM_TIMER (1U << 19)
1693 #define WAKE_MISC_CPU_WAKE (1U << 20)
1694
1695 /* define WAKE_SRC_XXX */
1696 #define WAKE_SRC_SPM_MERGE (1 << 0)
1697 #define WAKE_SRC_KP (1 << 2)
1698 #define WAKE_SRC_WDT (1 << 3)
1699 #define WAKE_SRC_GPT (1 << 4)
1700 #define WAKE_SRC_EINT (1 << 6)
1701 #define WAKE_SRC_LOW_BAT (1 << 9)
1702 #define WAKE_SRC_MD32 (1 << 10)
1703 #define WAKE_SRC_USB_CD (1 << 14)
1704 #define WAKE_SRC_USB_PDN (1 << 15)
1705 #define WAKE_SRC_AFE (1 << 20)
1706 #define WAKE_SRC_THERM (1 << 21)
1707 #define WAKE_SRC_SYSPWREQ (1 << 24)
1708 #define WAKE_SRC_SEJ (1 << 27)
1709 #define WAKE_SRC_ALL_MD32 (1 << 28)
1710 #define WAKE_SRC_CPU_IRQ (1 << 29)
1711
1712 #define spm_read(addr) mmio_read_32(addr)
1713 #define spm_write(addr, val) mmio_write_32(addr, val)
1714
1715 #endif /* SPM_H */