xref: /rk3399_ARM-atf/plat/arm/board/a5ds/a5ds_common.c (revision 00c7d5aca36833c2d0f5394f125233254cafd388)
1*00c7d5acSUsama Arif /*
2*00c7d5acSUsama Arif  * Copyright (c) 2019, Arm Limited. All rights reserved.
3*00c7d5acSUsama Arif  *
4*00c7d5acSUsama Arif  * SPDX-License-Identifier: BSD-3-Clause
5*00c7d5acSUsama Arif  */
6*00c7d5acSUsama Arif 
7*00c7d5acSUsama Arif #include <assert.h>
8*00c7d5acSUsama Arif 
9*00c7d5acSUsama Arif #include <common/debug.h>
10*00c7d5acSUsama Arif #include <lib/mmio.h>
11*00c7d5acSUsama Arif #include <platform_def.h>
12*00c7d5acSUsama Arif #include <plat/arm/common/arm_config.h>
13*00c7d5acSUsama Arif #include <plat/arm/common/plat_arm.h>
14*00c7d5acSUsama Arif 
15*00c7d5acSUsama Arif #define MAP_PERIPHBASE	MAP_REGION_FLAT(PERIPHBASE,\
16*00c7d5acSUsama Arif 					PERIPH_SIZE,\
17*00c7d5acSUsama Arif 					MT_DEVICE | MT_RW | MT_SECURE)
18*00c7d5acSUsama Arif 
19*00c7d5acSUsama Arif #define MAP_A5_PERIPHERALS	MAP_REGION_FLAT(A5_PERIPHERALS_BASE,\
20*00c7d5acSUsama Arif 					A5_PERIPHERALS_SIZE,\
21*00c7d5acSUsama Arif 					MT_DEVICE | MT_RW | MT_SECURE)
22*00c7d5acSUsama Arif 
23*00c7d5acSUsama Arif #ifdef IMAGE_BL1
24*00c7d5acSUsama Arif const mmap_region_t plat_arm_mmap[] = {
25*00c7d5acSUsama Arif 	ARM_MAP_SHARED_RAM,
26*00c7d5acSUsama Arif 	MAP_FLASH1_RW,
27*00c7d5acSUsama Arif 	MAP_PERIPHBASE,
28*00c7d5acSUsama Arif 	MAP_A5_PERIPHERALS,
29*00c7d5acSUsama Arif 	{0}
30*00c7d5acSUsama Arif };
31*00c7d5acSUsama Arif #endif
32*00c7d5acSUsama Arif #ifdef IMAGE_BL2
33*00c7d5acSUsama Arif const mmap_region_t plat_arm_mmap[] = {
34*00c7d5acSUsama Arif 	ARM_MAP_SHARED_RAM,
35*00c7d5acSUsama Arif 	MAP_FLASH1_RW,
36*00c7d5acSUsama Arif 	MAP_PERIPHBASE,
37*00c7d5acSUsama Arif 	MAP_A5_PERIPHERALS,
38*00c7d5acSUsama Arif 	ARM_MAP_NS_DRAM1,
39*00c7d5acSUsama Arif 	{0}
40*00c7d5acSUsama Arif };
41*00c7d5acSUsama Arif #endif
42*00c7d5acSUsama Arif #ifdef IMAGE_BL32
43*00c7d5acSUsama Arif const mmap_region_t plat_arm_mmap[] = {
44*00c7d5acSUsama Arif 	ARM_MAP_SHARED_RAM,
45*00c7d5acSUsama Arif 	MAP_PERIPHBASE,
46*00c7d5acSUsama Arif 	MAP_A5_PERIPHERALS,
47*00c7d5acSUsama Arif 	{0}
48*00c7d5acSUsama Arif };
49*00c7d5acSUsama Arif #endif
50*00c7d5acSUsama Arif 
51*00c7d5acSUsama Arif ARM_CASSERT_MMAP
52*00c7d5acSUsama Arif 
53*00c7d5acSUsama Arif unsigned int plat_get_syscnt_freq2(void)
54*00c7d5acSUsama Arif {
55*00c7d5acSUsama Arif 	return A5DS_TIMER_BASE_FREQUENCY;
56*00c7d5acSUsama Arif }
57