coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
spm.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef SOC_MEDIATEK_MT8183_SPM_H
4 #define SOC_MEDIATEK_MT8183_SPM_H
5 
6 #include <soc/addressmap.h>
7 #include <soc/mtcmos.h>
8 #include <types.h>
9 
10 /* SPM READ/WRITE CFG */
11 #define SPM_PROJECT_CODE 0xb16
12 #define SPM_REGWR_CFG_KEY (SPM_PROJECT_CODE << 16)
13 
14 /* POWERON_CONFIG_EN (0x10006000+0x000) */
15 #define BCLK_CG_EN_LSB (1U << 0) /* 1b */
16 #define MD_BCLK_CG_EN_LSB (1U << 1) /* 1b */
17 #define PCM_IM_HOST_W_EN_LSB (1U << 30) /* 1b */
18 #define PCM_IM_HOST_EN_LSB (1U << 31) /* 1b */
19 
20 /* SPM_CLK_CON (0x10006000+0x00C) */
21 #define SYSCLK0_EN_CTRL_LSB (1U << 0) /* 2b */
22 #define SYSCLK1_EN_CTRL_LSB (1U << 2) /* 2b */
23 #define SPM_LOCK_INFRA_DCM_LSB (1U << 5) /* 1b */
24 #define EXT_SRCCLKEN_MASK (1U << 6) /* 1b */
25 #define CXO32K_REMOVE_EN_MD1_LSB (1U << 9) /* 1b */
26 #define CLKSQ1_SEL_CTRL_LSB (1U << 12) /* 1b */
27 #define SRCLKEN0_EN_LSB (1U << 13) /* 1b */
28 
29 /* PCM_CON0 (0x10006000+0x018) */
30 #define PCM_KICK_L_LSB (1U << 0) /* 1b */
31 #define IM_KICK_L_LSB (1U << 1) /* 1b */
32 #define PCM_CK_EN_LSB (1U << 2) /* 1b */
33 #define EN_IM_SLEEP_DVS_LSB (1U << 3) /* 1b */
34 #define IM_AUTO_PDN_EN_LSB (1U << 4) /* 1b */
35 #define PCM_SW_RESET_LSB (1U << 15) /* 1b */
36 
37 /* PCM_CON1 (0x10006000+0x01C) */
38 #define IM_SLAVE_LSB (1U << 0) /* 1b */
39 #define IM_SLEEP_LSB (1U << 1) /* 1b */
40 #define MIF_APBEN_LSB (1U << 3) /* 1b */
41 #define IM_PDN_LSB (1U << 4) /* 1b */
42 #define PCM_TIMER_EN_LSB (1U << 5) /* 1b */
43 #define IM_NONRP_EN_LSB (1U << 6) /* 1b */
44 #define DIS_MIF_PROT_LSB (1U << 7) /* 1b */
45 #define PCM_WDT_EN_LSB (1U << 8) /* 1b */
46 #define PCM_WDT_WAKE_MODE_LSB (1U << 9) /* 1b */
47 #define SPM_SRAM_SLEEP_B_LSB (1U << 10) /* 1b */
48 #define SPM_SRAM_ISOINT_B_LSB (1U << 11) /* 1b */
49 #define EVENT_LOCK_EN_LSB (1U << 12) /* 1b */
50 #define SRCCLKEN_FAST_RESP_LSB (1U << 13) /* 1b */
51 #define SCP_APB_INTERNAL_EN_LSB (1U << 14) /* 1b */
52 
53 /* SPM_IRQ_MASK (0x10006000+0x0B4) */
54 #define PCM_IRQ_ROOT_MASK_LSB (1U << 3) /* 1b */
55 
56 /* SPM_WAKEUP_EVENT_MASK (0x10006000+0x0C4) */
57 #define WAKEUP_EVENT_MASK_B_BIT0 (1U << 0) /* 1b */
58 
59 /* SPARE_SRC_REQ_MASK (0x10006000+0x6C0) */
60 #define SPARE1_DDREN_MASK_B_LSB (1U << 0) /* 1b */
61 
62 /* SPM_PC_TRACE_CON (0x10006000+0x8C0) */
63 #define SPM_PC_TRACE_OFFSET_LSB (1U << 0) /* 12b */
64 #define SPM_PC_TRACE_OFFSET (1U << 3) /* 1b */
65 #define SPM_PC_TRACE_HW_EN_LSB (1U << 16) /* 1b */
66 
67 /* SPM_SPARE_ACK_MASK (0x10006000+0x6F4) */
68 #define SPARE_ACK_MASK_B_BIT0 (1U << 0) /* 1b */
69 #define SPARE_ACK_MASK_B_BIT1 (1U << 1) /* 1b */
70 
71 /**************************************
72  * Config and Parameter
73  **************************************/
74 #define CONN_DDR_EN_DBC_LEN (0x00000154 << 20)
75 #define IFR_SRAMROM_ROM_PDN (0x0000003f)
76 #define IM_STATE (0x4 << 7)
77 #define IM_STATE_MASK (0x7 << 7)
78 #define MD_DDR_EN_0_DBC_LEN (0x00000154)
79 #define MD_DDR_EN_1_DBC_LEN (0x00000154 << 10)
80 #define PCM_FSM_STA_DEF (0x00108490)
81 #define PCM_FSM_STA_MASK (0x7FFFFF)
82 #define POWER_ON_VAL1_DEF (0x00015800)
83 #define SPM_CORE_TIMEOUT (5000)
84 #define SPM_MAS_PAUSE_MASK_B_VAL (0xFFFFFFFF)
85 #define SPM_MAS_PAUSE2_MASK_B_VAL (0xFFFFFFFF)
86 #define SPM_PCM_REG1_DATA_CHECK (0x1)
87 #define SPM_PCM_REG15_DATA_CHECK (0x0)
88 #define SPM_WAKEUP_EVENT_MASK_DEF (0xF0F92218)
89 #define SYSCLK1_EN_CTRL (0x3 << 2)
90 #define SYSCLK1_SRC_MASK_B (0x10 << 23)
91 
92 /**************************************
93  * Define and Declare
94  **************************************/
95 /* SPM_IRQ_MASK */
96 #define ISRM_TWAM (1U << 2)
97 #define ISRM_PCM_RETURN (1U << 3)
98 #define ISRM_RET_IRQ_AUX (0x3FF00)
99 #define ISRM_ALL_EXC_TWAM (ISRM_RET_IRQ_AUX)
100 #define ISRM_ALL (ISRM_ALL_EXC_TWAM | ISRM_TWAM)
101 
102 /* SPM_IRQ_STA */
103 #define ISRS_TWAM (1U << 2)
104 #define ISRS_PCM_RETURN (1U << 3)
105 #define ISRS_SW_INT0 (1U << 4)
106 #define ISRC_TWAM (ISRS_TWAM)
107 #define ISRC_ALL_EXC_TWAM (ISRS_PCM_RETURN)
108 #define ISRC_ALL (ISRC_ALL_EXC_TWAM | ISRC_TWAM)
109 
110 /* PCM_PWR_IO_EN */
111 #define PCM_PWRIO_EN_R0 (1U << 0)
112 #define PCM_PWRIO_EN_R7 (1U << 7)
113 #define PCM_RF_SYNC_R0 (1U << 16)
114 #define PCM_RF_SYNC_R6 (1U << 22)
115 #define PCM_RF_SYNC_R7 (1U << 23)
116 
117 /* SPM_SWINT */
118 #define PCM_SW_INT_ALL (0x3FF)
119 
120 enum {
121  DISP_PWR_STA_MASK = 0x1 << 3,
122  DISP_SRAM_PDN_MASK = 0x1 << 8,
123  DISP_SRAM_ACK_MASK = 0x1 << 12,
124  AUDIO_PWR_STA_MASK = 0x1 << 24,
126  AUDIO_SRAM_ACK_MASK = 0xf << 12,
127 };
128 
129 #define PCM_EVENT_VECTOR_NUM 16
130 
131 struct mtk_spm_regs {
138  u32 pcm_con0;
139  u32 pcm_con1;
140  u32 pcm_im_ptr;
141  u32 pcm_im_len;
150  u32 reserved1[1];
176  u32 reserved2[5];
209  u32 pwr_status;
215  u32 reserved3[1];
226  u32 reserved4[1];
229  u32 reserved5[4];
231  u32 reserved6[7];
275  u32 reserved11[1];
289  u32 reserved12[3];
291  u32 reserved13[4];
293  u32 reserved14[3];
297  u32 reserved15[1];
299  u32 reserved16[11];
301  u32 reserved17[11];
315  u32 reserved18[1];
374  u32 reserved20[4];
383  u32 reserved21[1];
386  u32 reserved22[1];
388  u32 reserved23[3];
391  u32 reserved24[2];
395  u32 reserved25[17];
435  u32 reserved27[3];
447  u32 reserved28[1];
451  u32 reserved29[9];
557 };
558 check_member(mtk_spm_regs, spm_ack_chk_latch4, 0x0974);
559 
560 static struct mtk_spm_regs *const mtk_spm = (void *)SPM_BASE;
561 
566 };
567 
568 struct pcm_desc {
569  u16 size; /* binary array size */
570  u8 sess; /* session number */
571  u8 replace; /* replace mode */
572  u16 addr_2nd; /* 2nd binary array size */
573  u16 reserved; /* for 32bit alignment */
574  u32 vector[PCM_EVENT_VECTOR_NUM]; /* event vector config */
575 };
576 
578  u32 *buf; /* binary array */
579  struct pcm_desc desc;
580 };
581 
582 int spm_init(void);
583 
584 static const struct power_domain_data disp[] = {
585  {
587  .pwr_sta_mask = DISP_PWR_STA_MASK,
588  .sram_pdn_mask = DISP_SRAM_PDN_MASK,
589  .sram_ack_mask = DISP_SRAM_ACK_MASK,
590  },
591 };
592 
593 static const struct power_domain_data audio[] = {
594  {
596  .pwr_sta_mask = AUDIO_PWR_STA_MASK,
597  .sram_pdn_mask = AUDIO_SRAM_PDN_MASK,
598  .sram_ack_mask = AUDIO_SRAM_ACK_MASK,
599  },
600 };
601 
602 #endif /* SOC_MEDIATEK_MT8183_SPM_H */
check_member(mtk_spm_regs, sleep_ca15_wfi_en[3], 0xf1c)
@ DISP_SRAM_ACK_MASK
Definition: spm.h:17
@ DISP_PWR_STA_MASK
Definition: spm.h:15
@ DISP_SRAM_PDN_MASK
Definition: spm.h:16
@ AUDIO_SRAM_ACK_MASK
Definition: spm.h:20
@ AUDIO_PWR_STA_MASK
Definition: spm.h:18
@ AUDIO_SRAM_PDN_MASK
Definition: spm.h:19
static const struct power_domain_data disp[]
Definition: spm.h:584
#define PCM_EVENT_VECTOR_NUM
Definition: spm.h:129
dyna_load_pcm_index
Definition: spm.h:562
@ DYNA_LOAD_PCM_SUSPEND_LP4_3733
Definition: spm.h:563
@ DYNA_LOAD_PCM_MAX
Definition: spm.h:565
@ DYNA_LOAD_PCM_SUSPEND_LP4_3200
Definition: spm.h:564
static struct mtk_spm_regs *const mtk_spm
Definition: spm.h:560
int spm_init(void)
Definition: spm.c:298
static const struct power_domain_data audio[]
Definition: spm.h:593
@ SPM_BASE
Definition: addressmap.h:19
uint32_t u32
Definition: stdint.h:51
uint16_t u16
Definition: stdint.h:48
uint8_t u8
Definition: stdint.h:45
u32 * buf
Definition: spm.h:578
struct pcm_desc desc
Definition: spm.h:579
u32 sw2spm_int_clr
Definition: spm.h:402
u32 sw2spm_mailbox_0
Definition: spm.h:403
u32 pwr_status
Definition: spm.h:105
u32 pmcu2spm_mailbox_3
Definition: spm.h:364
u32 reserved31[2]
Definition: spm.h:457
u32 mp0_cputop_l2_pdn
Definition: spm.h:244
u32 reserved10[15]
Definition: spm.h:264
u32 scp_clk_con
Definition: spm.h:169
u32 spm2emi_enter_ulpm
Definition: spm.h:349
u32 spm_sema_m5
Definition: spm.h:339
u32 mp0_cpu2_l1_pdn
Definition: spm.h:248
u32 spm_sema_m2
Definition: spm.h:336
u32 sram_dreq_con_clr
Definition: spm.h:348
u32 dvfs_abort_sta
Definition: spm.h:442
u32 mp0_cpu0_pwr_con
Definition: spm.h:234
u32 spm_dvfs_con1
Definition: spm.h:455
u32 spm_ack_chk_con4
Definition: spm.h:551
u32 spm_ack_chk_con3
Definition: spm.h:544
u32 mp1_cpu0_l1_pdn
Definition: spm.h:252
u32 cpu_idle_sta
Definition: spm.h:206
u32 dramc_dmyrd_con
Definition: spm.h:332
u32 spm_ack_chk_latch3
Definition: spm.h:549
u32 spmc_dormant_enable
Definition: spm.h:261
u32 dchb_gating_latch_5
Definition: spm.h:512
u32 spm_sema_m6
Definition: spm.h:340
u32 reserved13[17]
Definition: spm.h:69
u32 spm_twam_curr_sta3
Definition: spm.h:224
u32 spm_clk_settle
Definition: spm.h:136
u32 spm_dvfs_cmd3
Definition: spm.h:461
u32 spm_sw_debug
Definition: spm.h:409
u32 reserved25[2]
Definition: spm.h:129
u32 spm_cpu_wakeup_event
Definition: spm.h:161
u32 reserved15
Definition: spm.h:80
u32 bypass_spmc
Definition: spm.h:260
u32 mp1_cputop_pwr_con
Definition: spm.h:238
u32 dchb_gating_latch_6
Definition: spm.h:513
u32 pcm_event_vector[PCM_EVENT_VECTOR_NUM]
Definition: spm.h:148
u32 spm_twam_last_sta3
Definition: spm.h:220
u32 spm_sema_m0
Definition: spm.h:334
u32 cpu_ptpod2_con
Definition: spm.h:387
u32 pcm_reg12_ext_data
Definition: spm.h:194
u32 spm_twam_timer_out
Definition: spm.h:225
u32 dummy_sram_con
Definition: spm.h:292
u32 sw2spm_int
Definition: spm.h:400
u32 spm2pmcu_mailbox_0
Definition: spm.h:354
u32 cpu_pwr_status
Definition: spm.h:211
u32 spm_ack_chk_sel3
Definition: spm.h:546
u32 dvfs_abort_others_mask
Definition: spm.h:443
u32 spm_pc_trace_g1
Definition: spm.h:522
u32 ap_mdsrc_req
Definition: spm.h:314
u32 bus_protect3_rdy
Definition: spm.h:228
u32 spm_dvfs_cmd7
Definition: spm.h:465
u32 spm_pc_trace_g7
Definition: spm.h:528
u32 mp0_cputop_pwr_con
Definition: spm.h:233
u32 mp1_cpu3_pwr_con
Definition: spm.h:242
u32 mp1_l2cflush
Definition: spm.h:385
u32 spm_pc_trace_con
Definition: spm.h:520
u32 spm_wakeup_ext_sta
Definition: spm.h:201
u32 mp0_cpu1_pwr_con
Definition: spm.h:235
u32 spm_sema_m3
Definition: spm.h:337
u32 reserved7[5]
Definition: spm.h:243
u32 mfg_pwr_con
Definition: spm.h:36
u32 pcm_con1
Definition: spm.h:71
u32 spm2sw_mailbox_3
Definition: spm.h:399
u32 mp1_cpu1_irq_mask
Definition: spm.h:371
u32 spm_dvfs_cmd5
Definition: spm.h:463
u32 conn_pwr_con
Definition: spm.h:276
u32 reserved12
Definition: spm.h:65
u32 pcm_im_ptr
Definition: spm.h:72
u32 pcm_event_reg_sta
Definition: spm.h:87
u32 pcm_pwr_io_en
Definition: spm.h:82
u32 dpy_pwr_con
Definition: spm.h:45
u32 pmcu2spm_mailbox_2
Definition: spm.h:363
u32 ext_buck_con
Definition: spm.h:298
u32 reserved29[4]
Definition: spm.h:145
u32 mp0_cpu2_irq_mask
Definition: spm.h:368
u32 dchb_gating_latch_3
Definition: spm.h:510
u32 mp1_cpu2_irq_mask
Definition: spm.h:372
u32 reserved16[7]
Definition: spm.h:85
u32 dcha_latch_rsv0
Definition: spm.h:515
u32 mp1_cpu3_wfi_en
Definition: spm.h:382
u32 pcm_wdt_latch_11
Definition: spm.h:498
u32 spm_rsv_sta1
Definition: spm.h:419
u32 pcm_wdt_latch_4
Definition: spm.h:487
u32 dpy_lp_con
Definition: spm.h:319
u32 cpu_ext_buck_iso
Definition: spm.h:257
u32 cpu_spare_con
Definition: spm.h:392
u32 mp1_cpu2_pwr_con
Definition: spm.h:241
u32 spm_scp_irq
Definition: spm.h:160
u32 spm_ack_chk_timer
Definition: spm.h:533
u32 spm_spare_con
Definition: spm.h:424
u32 pcm_reg5_data
Definition: spm.h:182
u32 pcm_im_host_rw_ptr
Definition: spm.h:89
u32 pcm_wdt_latch_3
Definition: spm.h:486
u32 dcha_latch_rsv0_fix
Definition: spm.h:480
u32 dvfsrc_event_force_on
Definition: spm.h:437
u32 mp0_cputop_l2_sleep_b
Definition: spm.h:245
u32 dcha_gating_latch_4
Definition: spm.h:503
u32 spm2sw_mailbox_1
Definition: spm.h:397
u32 mp0_cpu1_wfi_en
Definition: spm.h:376
u32 spm2pmcu_int_set
Definition: spm.h:352
u32 spm_sema_m7
Definition: spm.h:341
u32 vde_pwr_con
Definition: spm.h:35
u32 spm_sw_flag
Definition: spm.h:408
u32 reserved35[7]
Definition: spm.h:529
u32 spm2pmcu_mailbox_3
Definition: spm.h:357
u32 spm_ack_chk_sta
Definition: spm.h:534
u32 scp_spm_mailbox
Definition: spm.h:156
u32 ven_pwr_con
Definition: spm.h:41
u32 dcha_gating_latch_5
Definition: spm.h:504
u32 mp0_cpu2_wfi_en
Definition: spm.h:377
u32 mp1_cpu3_irq_mask
Definition: spm.h:373
u32 spm_power_on_val1
Definition: spm.h:134
u32 reserved6[4]
Definition: spm.h:48
u32 wdt_latch_spare2_fix
Definition: spm.h:477
u32 spm_bsi_d1_sr
Definition: spm.h:310
u32 spm_bsi_d0_sr
Definition: spm.h:309
u32 pcm_reg10_data
Definition: spm.h:187
u32 mp1_cpu0_irq_mask
Definition: spm.h:370
u32 pcm_wdt_latch_8
Definition: spm.h:491
u32 spm_md32_irq
Definition: spm.h:350
u32 spm_irq_mask
Definition: spm.h:162
u32 sc_mm_ck_sel_con
Definition: spm.h:450
u32 spm_pll_con
Definition: spm.h:321
u32 spm2sw_mailbox_0
Definition: spm.h:396
u32 spm_dfs_level
Definition: spm.h:444
u32 mp1_cpu0_wfi_en
Definition: spm.h:379
u32 dcha_gating_latch_6
Definition: spm.h:505
u32 emi_self_refresh_ch_sta
Definition: spm.h:329
u32 spm_spare_con_clr
Definition: spm.h:426
u32 vpu_core2_pwr_con
Definition: spm.h:277
u32 spm_pc_trace_g4
Definition: spm.h:525
u32 dvfsrc_event_mask_con
Definition: spm.h:436
u32 spm_swint
Definition: spm.h:152
u32 pcm_reg12_ext_mask_b_sta
Definition: spm.h:195
u32 pcm_wdt_latch_1
Definition: spm.h:484
u32 mp1_cpu3_l1_pdn
Definition: spm.h:255
u32 spm_ack_chk_sel2
Definition: spm.h:539
u32 mp1_cpu1_pwr_con
Definition: spm.h:240
u32 dis_pwr_con
Definition: spm.h:44
u32 spm_pasr_dpd_2
Definition: spm.h:422
u32 pcm_wdt_latch_13
Definition: spm.h:518
u32 ddr_en_emi_dbc_con
Definition: spm.h:174
u32 spare_ack_mask
Definition: spm.h:453
u32 spm_sw_rsv_10
Definition: spm.h:431
u32 pwr_status_2nd
Definition: spm.h:106
u32 md1_pwr_con
Definition: spm.h:273
u32 spm_dvfs_cmd14
Definition: spm.h:472
u32 sram_dreq_con
Definition: spm.h:346
u32 dramc_dpy_clk_sw_con_sel
Definition: spm.h:326
u32 pcm_wdt_val
Definition: spm.h:145
u32 dchb_latch_rsv0_fix
Definition: spm.h:481
u32 spm_swint_clr
Definition: spm.h:154
u32 sysram_con
Definition: spm.h:285
u32 spm_ack_chk_pc2
Definition: spm.h:538
u8 reserved19[0x720 - 0x618]
Definition: spm.h:108
u32 spm_sw_rsv_3
Definition: spm.h:413
u32 wdt_latch_spare0_fix
Definition: spm.h:475
u32 spm_ack_chk_pc3
Definition: spm.h:545
u32 spm_spare_con_set
Definition: spm.h:425
u32 mp1_cpu2_l1_pdn
Definition: spm.h:254
u32 spm_src_req
Definition: spm.h:163
u32 wdt_latch_spare3_fix
Definition: spm.h:478
u32 spm_dvfs_cmd4
Definition: spm.h:462
u32 spm_src_rdy_sta
Definition: spm.h:214
u32 isp_pwr_con
Definition: spm.h:43
u32 dchb_gating_latch_1
Definition: spm.h:508
u32 pcm_im_len
Definition: spm.h:73
u32 cpu_spare_con_clr
Definition: spm.h:394
u32 spm_ack_chk_sel4
Definition: spm.h:553
u32 bus_protect_rdy
Definition: spm.h:203
u32 mp0_l2cflush
Definition: spm.h:384
u32 pmcu2spm_int_set
Definition: spm.h:359
u32 mp0_cpu0_l1_pdn
Definition: spm.h:246
u32 spm_sw_rsv_18
Definition: spm.h:433
u8 reserved26[0xb00 - 0x924]
Definition: spm.h:135
u32 pmcu2spm_mailbox_1
Definition: spm.h:362
u32 spm_dvfs_con
Definition: spm.h:302
u32 spm_dvfs_event_sta1
Definition: spm.h:440
u32 scp_sram_con
Definition: spm.h:288
u32 spm_pc_trace_g2
Definition: spm.h:523
u32 spm_ack_chk_pc
Definition: spm.h:531
u32 pmcu2spm_mailbox_0
Definition: spm.h:361
u32 spm_twam_window_len
Definition: spm.h:158
u32 spm_mas_pause_mm_mask_b
Definition: spm.h:342
u32 spm_dvfs_event_sta
Definition: spm.h:439
u32 reserved14[7]
Definition: spm.h:75
u32 spare_ack_sta
Definition: spm.h:452
u32 spm_ack_chk_sta2
Definition: spm.h:541
u32 md_sram_iso_con
Definition: spm.h:295
u32 audio_pwr_con
Definition: spm.h:60
u32 dchb_latch_rsv0
Definition: spm.h:516
u32 vpu_core0_pwr_con
Definition: spm.h:280
u32 spm_twam_curr_sta1
Definition: spm.h:222
u32 spm_sram_rsv_con
Definition: spm.h:151
u32 reserved4
Definition: spm.h:34
u32 reserved34[12]
Definition: spm.h:519
u32 spm2pmcu_mailbox_1
Definition: spm.h:355
u32 spm_sw_rsv_2
Definition: spm.h:412
u32 pcm_reg_data_ini
Definition: spm.h:74
u32 reserved3[63]
Definition: spm.h:30
u32 mp1_cpu0_pwr_con
Definition: spm.h:239
u32 spm_sw_rsv_5
Definition: spm.h:415
u32 mp0_cpu0_irq_mask
Definition: spm.h:366
u32 spm_pasr_dpd_0
Definition: spm.h:420
u32 wdt_latch_spare1
Definition: spm.h:494
u32 dcha_gating_latch_0
Definition: spm.h:499
u32 spmc_in_ret
Definition: spm.h:263
u32 dcha_gating_latch_7
Definition: spm.h:506
u32 pmcu2spm_int
Definition: spm.h:358
u32 sw2spm_cfg
Definition: spm.h:407
u32 reserved21[39]
Definition: spm.h:116
u32 sram_dreq_ack
Definition: spm.h:345
u32 spm_dvfs_cmd8
Definition: spm.h:466
u32 spm_dvfs_cmd13
Definition: spm.h:471
u32 pcm_reg11_data
Definition: spm.h:188
u32 spm_dvfs_cmd10
Definition: spm.h:468
u32 spm_mas_pause_mcu_mask_b
Definition: spm.h:343
u8 reserved30[0xf00 - 0xb70]
Definition: spm.h:147
u32 mfg_core1_pwr_con
Definition: spm.h:269
u32 spm_wakeup_event_ext_mask
Definition: spm.h:167
u32 spm_dvfs_cmd1
Definition: spm.h:459
u32 pcm_wdt_latch_10
Definition: spm.h:497
u32 reserved2[58]
Definition: spm.h:28
u32 reserved17[6]
Definition: spm.h:97
u32 spm2pmcu_int_clr
Definition: spm.h:353
u32 spm_sw_rsv_9
Definition: spm.h:430
u32 spm_src3_mask
Definition: spm.h:173
u32 spm_irq_sta
Definition: spm.h:199
u32 spm_ack_chk_timer2
Definition: spm.h:540
u32 sram_dreq_con_set
Definition: spm.h:347
u32 spm_mas_pause2_mask_b
Definition: spm.h:305
u32 dcha_gating_latch_2
Definition: spm.h:501
u32 pcm_wdt_out
Definition: spm.h:198
u32 spm_pc_trace_g0
Definition: spm.h:521
u32 dummy1_pwr_con
Definition: spm.h:259
u32 spm_bsi_gen
Definition: spm.h:306
u32 ufs_sram_con
Definition: spm.h:290
u32 spm2md_dvfs_con
Definition: spm.h:316
u32 mp1_cpu1_l1_pdn
Definition: spm.h:253
u32 sw2spm_mailbox_2
Definition: spm.h:405
u32 dramc_dpy_clk_sw_con
Definition: spm.h:327
u32 reserved20[15]
Definition: spm.h:110
u32 spm_sw_rsv_7
Definition: spm.h:428
u32 pcm_event_vector_en
Definition: spm.h:149
u32 spm_ack_chk_con2
Definition: spm.h:537
u32 mp1_cputop_l2_pdn
Definition: spm.h:250
u32 spm_twam_con
Definition: spm.h:157
u32 pcm_wdt_latch_9
Definition: spm.h:492
u32 spm_wakeup_misc
Definition: spm.h:202
u32 pcm_im_host_rw_dat
Definition: spm.h:90
u32 dcha_gating_latch_3
Definition: spm.h:502
u32 pcm_reg8_data
Definition: spm.h:185
u32 reserved32[12]
Definition: spm.h:474
u32 pcm_wdt_latch_2
Definition: spm.h:485
u32 spm_rsv_con
Definition: spm.h:416
u32 spm_drs_con
Definition: spm.h:333
u32 spm_dvfs_cmd2
Definition: spm.h:460
u32 spm_twam_last_sta2
Definition: spm.h:219
u32 md32_clk_con
Definition: spm.h:175
u32 spm_sw_rsv_8
Definition: spm.h:429
u32 reserved18[125]
Definition: spm.h:101
u32 spm_bsi_d2_sr
Definition: spm.h:311
u32 spm2pmcu_int
Definition: spm.h:351
u32 reserved11[2]
Definition: spm.h:56
u32 spm_clk_con
Definition: spm.h:135
u32 spm_twam_last_sta1
Definition: spm.h:218
u32 spare_src_req_mask
Definition: spm.h:448
u32 dramc_dpy_clk_sw_con_rsv
Definition: spm.h:318
u32 dramc_dbg_latch
Definition: spm.h:216
u32 reserved27[4]
Definition: spm.h:140
u32 spm_power_on_val0
Definition: spm.h:133
u32 ddr_en_dbc_len
Definition: spm.h:171
u32 spm_ack_chk_latch4
Definition: spm.h:556
u32 mp0_cpu1_irq_mask
Definition: spm.h:367
u32 spm_dvfs_sta
Definition: spm.h:227
u32 spm_pc_trace_g6
Definition: spm.h:527
u32 sspm_sram_con
Definition: spm.h:287
u32 spm_pc_trace_g3
Definition: spm.h:524
u32 cam_pwr_con
Definition: spm.h:282
u32 pcm_wdt_latch_6
Definition: spm.h:489
u32 spm_bsi_en_sr
Definition: spm.h:307
u32 spm_mas_pause_mask_b
Definition: spm.h:304
u32 spm_twam_event_clear
Definition: spm.h:168
u32 mp0_cpu2_pwr_con
Definition: spm.h:236
u32 pcm_fsm_sta
Definition: spm.h:88
u32 spm_sw_rsv_4
Definition: spm.h:414
u32 spm_sw_rsv_19
Definition: spm.h:434
u32 mp0_cpu3_wfi_en
Definition: spm.h:378
u32 spm_ack_chk_sta4
Definition: spm.h:555
u32 md_ext_buck_iso_con
Definition: spm.h:294
u32 cpu_spare_con_set
Definition: spm.h:393
u32 ahb_bus_con
Definition: spm.h:172
u32 spm_pasr_dpd_3
Definition: spm.h:423
u32 cpu_dvfs_req
Definition: spm.h:320
u32 reserved9[7]
Definition: spm.h:258
u32 spm_dvfs_cmd9
Definition: spm.h:467
u32 pcm_timer_val
Definition: spm.h:83
u32 spm_mdbsi_con
Definition: spm.h:303
u32 spare_ack_in_fix
Definition: spm.h:479
u32 mp0_cpu0_wfi_en
Definition: spm.h:375
u32 spm_sw_rsv_1
Definition: spm.h:411
u32 dchb_gating_latch_7
Definition: spm.h:514
u32 spm_ap_sema
Definition: spm.h:312
u32 pcm_reg4_data
Definition: spm.h:181
u32 mp1_cpu2_wfi_en
Definition: spm.h:381
u32 subsys_idle_sta
Definition: spm.h:205
u32 armpll_clk_con
Definition: spm.h:262
u32 mp1_cpu1_wfi_en
Definition: spm.h:380
u32 spm_twam_idle_sel
Definition: spm.h:159
u32 reserved38[2]
Definition: spm.h:550
u32 spm_s1_mode_ch
Definition: spm.h:328
u32 spm_sema_m4
Definition: spm.h:338
u32 spm_dvfs_cmd11
Definition: spm.h:469
u32 sysrom_con
Definition: spm.h:286
u32 bus_protect2_rdy
Definition: spm.h:204
u32 pcm_reg7_data
Definition: spm.h:184
u32 reserved37[2]
Definition: spm.h:543
u32 spm_rsv_sta
Definition: spm.h:417
u32 reserved5[3]
Definition: spm.h:40
u32 ap2md_peer_wakeup
Definition: spm.h:323
u32 wdt_latch_spare0
Definition: spm.h:493
u32 dramc_dpy_clk_sw_con2
Definition: spm.h:331
u32 reserved36[2]
Definition: spm.h:536
u32 src_req_sta
Definition: spm.h:208
u32 dchb_gating_latch_4
Definition: spm.h:511
u32 spm_sw_rsv_6
Definition: spm.h:427
u32 pcm_wdt_latch_7
Definition: spm.h:490
u32 mfg_2d_pwr_con
Definition: spm.h:66
u32 spm_src_mask
Definition: spm.h:164
u32 pcm_timer_out
Definition: spm.h:84
u32 spm_wakeup_event_mask
Definition: spm.h:166
u32 root_core_addr
Definition: spm.h:390
u32 spm_pasr_dpd_1
Definition: spm.h:421
u32 pcm_reg6_data
Definition: spm.h:183
u32 pcm_wdt_latch_5
Definition: spm.h:488
u32 mp0_cpu3_pwr_con
Definition: spm.h:237
u32 spm_spm_sema
Definition: spm.h:313
u32 spm_twam_last_sta0
Definition: spm.h:217
u32 spm_sema_m1
Definition: spm.h:335
u32 cpu_pwr_status_2nd
Definition: spm.h:212
u32 wdt_latch_spare1_fix
Definition: spm.h:476
u32 root_cputop_addr
Definition: spm.h:389
u32 reserved1[3]
Definition: spm.h:25
u32 spm_dvfs_cmd0
Definition: spm.h:458
u32 dchb_gating_latch_0
Definition: spm.h:507
u32 wdt_latch_spare2
Definition: spm.h:495
u32 pcm_reg15_data
Definition: spm.h:192
u32 spm_ack_chk_pc4
Definition: spm.h:552
u32 pcm_wdt_latch_0
Definition: spm.h:483
u32 pcm_debug_con
Definition: spm.h:141
u32 spm_wakeup_sta
Definition: spm.h:200
u32 mp0_cpu3_l1_pdn
Definition: spm.h:249
u32 spm2mm_con
Definition: spm.h:325
u32 wdt_latch_spare3
Definition: spm.h:496
u32 pcm_reg9_data
Definition: spm.h:186
u32 spm_rsv_con1
Definition: spm.h:418
u32 pcm_reg2_data
Definition: spm.h:179
u32 dvfsrc_event_sel
Definition: spm.h:438
u32 poweron_config_set
Definition: spm.h:24
u32 spm_ack_chk_latch
Definition: spm.h:535
u32 spm_dvfs_misc
Definition: spm.h:446
u32 spm_ack_chk_latch2
Definition: spm.h:542
u32 pcm_reg13_data
Definition: spm.h:190
u32 pcm_reg3_data
Definition: spm.h:180
u32 dcha_gating_latch_1
Definition: spm.h:500
u32 spm_dvfs_level
Definition: spm.h:441
u32 pcm_reg12_data
Definition: spm.h:189
u32 mfg_async_pwr_con
Definition: spm.h:67
u32 reserved33[25]
Definition: spm.h:482
u32 pmcu2spm_cfg
Definition: spm.h:365
u32 spm2sw_mailbox_2
Definition: spm.h:398
u32 spm_ack_chk_sta3
Definition: spm.h:548
u32 spm_ack_chk_timer3
Definition: spm.h:547
u32 reserved8[8]
Definition: spm.h:256
u32 dchb_gating_latch_2
Definition: spm.h:509
u32 spm2pmcu_mailbox_2
Definition: spm.h:356
u32 mp1_cputop_l2_sleep_b
Definition: spm.h:251
u32 spm_pc_trace_g5
Definition: spm.h:526
u32 mp0_cpu1_l1_pdn
Definition: spm.h:247
u32 spm_dvfs_con1_sta
Definition: spm.h:456
u32 reserved22[2]
Definition: spm.h:120
u32 vpu_top_pwr_con
Definition: spm.h:274
u32 ifr_pwr_con
Definition: spm.h:42
u32 reserved28[3]
Definition: spm.h:142
u32 spm_ack_chk_timer4
Definition: spm.h:554
u32 pcm_wdt_latch_12
Definition: spm.h:517
u32 md2spm_dvfs_con
Definition: spm.h:317
u32 spm_src2_mask
Definition: spm.h:165
u32 spm_twam_curr_sta2
Definition: spm.h:223
u32 spm_twam_curr_sta0
Definition: spm.h:221
u32 spm_ack_chk_sel
Definition: spm.h:532
u32 pcm_reg12_mask_b_sta
Definition: spm.h:193
u32 spm_swint_set
Definition: spm.h:153
u32 spm_ap_standby_con
Definition: spm.h:137
u32 mcu_pwr_con
Definition: spm.h:57
u32 md_extra_pwr_con
Definition: spm.h:296
u32 src_ddren_sta
Definition: spm.h:230
u32 mfg_core0_pwr_con
Definition: spm.h:284
u32 pcm_reg1_data
Definition: spm.h:178
u32 sw2spm_mailbox_3
Definition: spm.h:406
u32 reserved23
Definition: spm.h:123
u32 pcm_con0
Definition: spm.h:70
u32 sw2spm_mailbox_1
Definition: spm.h:404
u32 spm_scp_mailbox
Definition: spm.h:155
u32 spm_bsi_clk_sr
Definition: spm.h:308
u32 misc_sta
Definition: spm.h:213
u32 ulposc_con
Definition: spm.h:324
u32 spm_dvfs_cmd15
Definition: spm.h:473
u32 vpu_core1_pwr_con
Definition: spm.h:281
u32 spm_sw_rsv_0
Definition: spm.h:410
u32 spm_ack_chk_con
Definition: spm.h:530
u32 scp_vcore_level
Definition: spm.h:449
u32 spm_dvs_level
Definition: spm.h:445
u32 reserved24[50]
Definition: spm.h:126
u32 spm_dvfs_cmd6
Definition: spm.h:464
u32 spm_dvfs_cmd12
Definition: spm.h:470
u32 sw2spm_int_set
Definition: spm.h:401
u32 pmcu2spm_int_clr
Definition: spm.h:360
u32 dramc_dpy_clk_sw_con_sel2
Definition: spm.h:330
u32 spm_emi_bw_mode
Definition: spm.h:322
u32 pcm_reg14_data
Definition: spm.h:191
u32 mp0_cpu3_irq_mask
Definition: spm.h:369
u32 mbist_efuse_repair_ack_sta
Definition: spm.h:300
u32 pcm_reg0_data
Definition: spm.h:177
Definition: spm.h:568
u32 vector[PCM_EVENT_VECTOR_NUM]
Definition: spm.h:574
u16 reserved
Definition: spm.h:573
u8 replace
Definition: spm.h:571
u8 sess
Definition: spm.h:570
u16 addr_2nd
Definition: spm.h:572
u16 size
Definition: spm.h:569
void * pwr_con
Definition: mtcmos.h:7