hc
2024-01-03 2f7c68cb55ecb7331f2381deb497c27155f32faf
kernel/arch/arm/mach-rockchip/rv1106_pm.h
....@@ -7,6 +7,7 @@
77 #define __MACH_ROCKCHIP_RV1106_PM_H
88
99 #define RV1106_WAKEUP_TO_SYSTEM_RESET 0
10
+#define RV1106_HPMCU_FAST_WKUP_TIMEOUT 2000 /* ms */
1011
1112 #define RV1106_PERIGRF_OFFSET 0x0
1213 #define RV1106_VENCGRF_OFFSET 0x10000
....@@ -34,6 +35,7 @@
3435
3536 #define RV1106_PMUCRU_OFFSET 0x3a0000
3637 #define RV1106_CRU_OFFSET 0x3b0000
38
+#define RV1106_PVTPLLCRU_OFFSET 0x3b1000
3739 #define RV1106_PERICRU_OFFSET 0x3b2000
3840 #define RV1106_VICRU_OFFSET 0x3b4000
3941 #define RV1106_NPUCRU_OFFSET 0x3b6000
....@@ -54,6 +56,7 @@
5456
5557 #define RV1106_NSTIMER_OFFSET 0x580000
5658 #define RV1106_STIMER_OFFSET 0x590000
59
+#define RV1106_MBOX_OFFSET 0x5c0000
5760 #define RV1106_PMUSRAM_OFFSET 0x670000
5861 #define RV1106_DDRC_OFFSET 0x800000
5962 #define RV1106_FW_DDR_OFFSET 0x900000
....@@ -70,6 +73,8 @@
7073 #define RV1106_CRU_MODE_CON00 0x280
7174 #define RV1106_CRU_GATE_CON(i) (0x800 + (i) * 4)
7275 #define RV1106_CRU_GATE_CON_NUM 4
76
+#define RV1106_CRU_GLB_SRST_FST 0xc08
77
+#define RV1106_CRU_GLB_RST_CON 0xc10
7378
7479 #define CRU_PLLCON1_PWRDOWN BIT(13)
7580 #define CRU_PLLCON1_LOCK_STATUS BIT(10)
....@@ -101,6 +106,7 @@
101106 #define RV1106_CORECRU_GATE_CON(i) (0x800 + (i) * 4)
102107 #define RV1106_COERCRU_CLKSEL_CON(i) (0x300 + (i) * 4)
103108 #define RV1106_CORECRU_GATE_CON_NUM 2
109
+#define RV1106_COERCRU_SFTRST_CON(i) (0xa00 + (i) * 4)
104110
105111 /* grf */
106112 #define RV1106_PMUGRF_SOC_CON(i) ((i) * 4)
....@@ -109,6 +115,11 @@
109115 #define RV1106_PMUSGRF_SOC_CON(i) ((i) * 4)
110116
111117 #define RV1106_DDRGRF_CON(i) ((i) * 0x4)
118
+
119
+#define RV1106_CORESGRF_HPMCU_BOOTADDR 0x44
120
+
121
+#define RV1106_COREGRF_CACHE_PERI_ADDR_START 0x24
122
+#define RV1106_COREGRF_CACHE_PERI_ADDR_END 0x28
112123
113124 /* pvmt */
114125 #define RV1106_PVTM_CON(i) (0x4 + (i) * 4)
....@@ -177,6 +188,17 @@
177188 #define PMU_SUSPEND_MAGIC 0x02468ace
178189 #define PMU_RESUME_MAGIC 0x13579bdf
179190
191
+/* mcu */
192
+#define RV1106_MBOX_B2A_STATUS 0x2c
193
+#define RV1106_MBOX_B2A_CMD_0 0x30
194
+
195
+#define RV1106_HPMCU_MBOX_IRQ_AP 33
196
+
197
+#define RV1106_HPMCU_BOOT_ADDR 0x40000
198
+#define RV1106_MBOX_CMD_AP_SUSPEND 0x12345600
199
+#define RV1106_MBOX_CMD_AP_RESUME 0x12345601
200
+#define RV1106_SYS_IS_WKUP 0x87654300
201
+
180202 #ifndef __ASSEMBLER__
181203 extern unsigned long rkpm_bootdata_cpusp;
182204 extern unsigned long rkpm_bootdata_cpu_code;
....@@ -216,7 +238,7 @@
216238
217239 RV1106_PMU_WAKEUP_USBDEV_EN,
218240 RV1106_PMU_WAKEUP_TIMER_EN,
219
- RV1106_PMU_WAKEUP_TIMEROUT_EN,
241
+ RV1106_PMU_WAKEUP_TIMEOUT_EN,
220242 RV1106_PMU_WAKEUP_SFT_WAKEUP_CFG,
221243 };
222244