xref: /rk3399_ARM-atf/plat/rockchip/rk3568/rk3568_def.h (revision 673c444372181a5ac23c14b9efd3003a37ce0193)
19fd9f1d0Sshengfei Xu /*
2*4e1ccc60SShengfei Xu  * Copyright (c) 2023-2025, ARM Limited and Contributors. All rights reserved.
39fd9f1d0Sshengfei Xu  *
49fd9f1d0Sshengfei Xu  * SPDX-License-Identifier: BSD-3-Clause
59fd9f1d0Sshengfei Xu  */
69fd9f1d0Sshengfei Xu 
79fd9f1d0Sshengfei Xu #ifndef __PLAT_DEF_H__
89fd9f1d0Sshengfei Xu #define __PLAT_DEF_H__
99fd9f1d0Sshengfei Xu 
109fd9f1d0Sshengfei Xu #define MAJOR_VERSION		(1)
119fd9f1d0Sshengfei Xu #define MINOR_VERSION		(0)
129fd9f1d0Sshengfei Xu 
139fd9f1d0Sshengfei Xu #define SIZE_K(n)		((n) * 1024)
149fd9f1d0Sshengfei Xu 
159fd9f1d0Sshengfei Xu /* Special value used to verify platform parameters from BL2 to BL3-1 */
169fd9f1d0Sshengfei Xu #define RK_BL31_PLAT_PARAM_VAL	0x0f1e2d3c4b5a6978ULL
179fd9f1d0Sshengfei Xu 
189fd9f1d0Sshengfei Xu #define GIC600_BASE		0xfd400000
199fd9f1d0Sshengfei Xu #define GIC600_SIZE		SIZE_K(64)
209fd9f1d0Sshengfei Xu 
219fd9f1d0Sshengfei Xu #define PMUSGRF_BASE		0xfdc00000
229fd9f1d0Sshengfei Xu #define SYSSGRF_BASE		0xfdc10000
239fd9f1d0Sshengfei Xu #define PMUGRF_BASE		0xfdc20000
249fd9f1d0Sshengfei Xu #define CPUGRF_BASE		0xfdc30000
259fd9f1d0Sshengfei Xu #define DDRGRF_BASE		0xfdc40000
269fd9f1d0Sshengfei Xu #define PIPEGRF_BASE		0xfdc50000
279fd9f1d0Sshengfei Xu #define GRF_BASE		0xfdc60000
289fd9f1d0Sshengfei Xu #define PIPEPHY_GRF0		0xfdc70000
299fd9f1d0Sshengfei Xu #define PIPEPHY_GRF1		0xfdc80000
309fd9f1d0Sshengfei Xu #define PIPEPHY_GRF2		0xfdc90000
319fd9f1d0Sshengfei Xu #define USBPHY_U3_GRF		0xfdca0000
329fd9f1d0Sshengfei Xu #define USB2PHY_U2_GRF		0xfdca8000
339fd9f1d0Sshengfei Xu #define EDPPHY_GRF		0xfdcb0000
349fd9f1d0Sshengfei Xu #define SYSSRAM_BASE		0xfdcc0000
359fd9f1d0Sshengfei Xu #define PCIE30PHY_GRF		0xfdcb8000
369fd9f1d0Sshengfei Xu #define USBGRF_BASE		0xfdcf0000
379fd9f1d0Sshengfei Xu 
389fd9f1d0Sshengfei Xu #define PMUCRU_BASE		0xfdd00000
399fd9f1d0Sshengfei Xu #define SCRU_BASE		0xfdd10000
409fd9f1d0Sshengfei Xu #define SGRF_BASE		0xfdd18000
419fd9f1d0Sshengfei Xu #define STIME_BASE		0xfdd1c000
429fd9f1d0Sshengfei Xu #define CRU_BASE		0xfdd20000
439fd9f1d0Sshengfei Xu #define PMUSCRU_BASE		0xfdd30000
449fd9f1d0Sshengfei Xu #define I2C0_BASE		0xfdd40000
459fd9f1d0Sshengfei Xu 
469fd9f1d0Sshengfei Xu #define UART0_BASE		0xfdd50000
479fd9f1d0Sshengfei Xu #define GPIO0_BASE		0xfdd60000
489fd9f1d0Sshengfei Xu #define PMUPVTM_BASE		0xfdd80000
499fd9f1d0Sshengfei Xu #define PMU_BASE		0xfdd90000
509fd9f1d0Sshengfei Xu #define PMUSRAM_BASE		0xfdcd0000
519fd9f1d0Sshengfei Xu #define PMUSRAM_SIZE		SIZE_K(128)
529fd9f1d0Sshengfei Xu #define PMUSRAM_RSIZE		SIZE_K(8)
539fd9f1d0Sshengfei Xu 
549fd9f1d0Sshengfei Xu #define DDRSGRF_BASE		0xfe200000
55*4e1ccc60SShengfei Xu #define OTP_NS_BASE		0xfe38c000
56*4e1ccc60SShengfei Xu #define OTP_S_BASE		0xfe3a0000
579fd9f1d0Sshengfei Xu #define UART1_BASE		0xfe650000
589fd9f1d0Sshengfei Xu #define UART2_BASE		0xfe660000
599fd9f1d0Sshengfei Xu #define GPIO1_BASE		0xfe740000
609fd9f1d0Sshengfei Xu #define GPIO2_BASE		0xfe750000
619fd9f1d0Sshengfei Xu #define GPIO3_BASE		0xfe760000
629fd9f1d0Sshengfei Xu #define GPIO4_BASE		0xfe770000
639fd9f1d0Sshengfei Xu 
64*4e1ccc60SShengfei Xu #define OTP_PHY_BASE		0xfe880000
65*4e1ccc60SShengfei Xu 
669fd9f1d0Sshengfei Xu #define REMAP_BASE		0xffff0000
679fd9f1d0Sshengfei Xu #define REMAP_SIZE		SIZE_K(64)
689fd9f1d0Sshengfei Xu /**************************************************************************
699fd9f1d0Sshengfei Xu  * UART related constants
709fd9f1d0Sshengfei Xu  **************************************************************************/
719fd9f1d0Sshengfei Xu #define FPGA_UART_BASE		UART2_BASE
729fd9f1d0Sshengfei Xu #define FPGA_BAUDRATE		1500000
739fd9f1d0Sshengfei Xu #define FPGA_UART_CLOCK		24000000
749fd9f1d0Sshengfei Xu 
759fd9f1d0Sshengfei Xu /******************************************************************************
769fd9f1d0Sshengfei Xu  * System counter frequency related constants
779fd9f1d0Sshengfei Xu  ******************************************************************************/
789fd9f1d0Sshengfei Xu #define SYS_COUNTER_FREQ_IN_TICKS	24000000
799fd9f1d0Sshengfei Xu #define SYS_COUNTER_FREQ_IN_MHZ		24
809fd9f1d0Sshengfei Xu 
819fd9f1d0Sshengfei Xu /******************************************************************************
829fd9f1d0Sshengfei Xu  * GIC-600 & interrupt handling related constants
839fd9f1d0Sshengfei Xu  ******************************************************************************/
849fd9f1d0Sshengfei Xu 
859fd9f1d0Sshengfei Xu /* Base rk_platform compatible GIC memory map */
869fd9f1d0Sshengfei Xu #define PLAT_GICD_BASE		GIC600_BASE
879fd9f1d0Sshengfei Xu #define PLAT_GICC_BASE		0
889fd9f1d0Sshengfei Xu #define PLAT_GICR_BASE		(GIC600_BASE + 0x60000)
899fd9f1d0Sshengfei Xu 
909fd9f1d0Sshengfei Xu /******************************************************************************
919fd9f1d0Sshengfei Xu  * sgi, ppi
929fd9f1d0Sshengfei Xu  ******************************************************************************/
939fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_PHY_TIMER	29
949fd9f1d0Sshengfei Xu 
959fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_0	8
969fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_1	9
979fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_2	10
989fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_3	11
999fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_4	12
1009fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_5	13
1019fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_6	14
1029fd9f1d0Sshengfei Xu #define RK_IRQ_SEC_SGI_7	15
1039fd9f1d0Sshengfei Xu 
104*4e1ccc60SShengfei Xu /**************************************************************************
105*4e1ccc60SShengfei Xu  * share mem region allocation: 1M~2M
106*4e1ccc60SShengfei Xu  **************************************************************************/
107*4e1ccc60SShengfei Xu #define DDR_SHARE_MEM		SIZE_K(1024)
108*4e1ccc60SShengfei Xu #define DDR_SHARE_SIZE		SIZE_K(64)
109*4e1ccc60SShengfei Xu 
1109fd9f1d0Sshengfei Xu #define SHARE_MEM_BASE		0x100000/* [1MB, 1MB+60K] */
1119fd9f1d0Sshengfei Xu #define SHARE_MEM_PAGE_NUM	15
1129fd9f1d0Sshengfei Xu #define SHARE_MEM_SIZE		SIZE_K(SHARE_MEM_PAGE_NUM * 4)
1139fd9f1d0Sshengfei Xu 
114*4e1ccc60SShengfei Xu #define SCMI_SHARE_MEM_BASE	(SHARE_MEM_BASE + SHARE_MEM_SIZE)
115*4e1ccc60SShengfei Xu #define SCMI_SHARE_MEM_SIZE	SIZE_K(4)
116*4e1ccc60SShengfei Xu 
117*4e1ccc60SShengfei Xu #define SMT_BUFFER_BASE		SCMI_SHARE_MEM_BASE
118*4e1ccc60SShengfei Xu #define SMT_BUFFER0_BASE	SMT_BUFFER_BASE
119*4e1ccc60SShengfei Xu 
1209fd9f1d0Sshengfei Xu #endif /* __PLAT_DEF_H__ */
121