1 /* 2 * Copyright (c) 2020-2022, Arm Limited. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <assert.h> 8 9 #include <drivers/arm/sbsa.h> 10 #include <plat/arm/common/plat_arm.h> 11 12 #include "morello_def.h" 13 14 /* 15 * Table of regions to map using the MMU. 16 * Replace or extend the below regions as required 17 */ 18 #if IMAGE_BL1 19 const mmap_region_t plat_arm_mmap[] = { 20 ARM_MAP_SHARED_RAM, 21 MORELLO_MAP_DEVICE, 22 MORELLO_MAP_NS_SRAM, 23 ARM_MAP_DRAM1, 24 ARM_MAP_DRAM2, 25 {0} 26 }; 27 #endif 28 29 #if IMAGE_BL31 30 const mmap_region_t plat_arm_mmap[] = { 31 ARM_MAP_SHARED_RAM, 32 MORELLO_MAP_DEVICE, 33 MORELLO_MAP_NS_SRAM, 34 {0} 35 }; 36 #endif 37 38 #if IMAGE_BL2 39 const mmap_region_t plat_arm_mmap[] = { 40 ARM_MAP_SHARED_RAM, 41 MORELLO_MAP_DEVICE, 42 MORELLO_MAP_NS_SRAM, 43 ARM_MAP_DRAM1, 44 ARM_MAP_DRAM2, 45 #if TRUSTED_BOARD_BOOT && !BL2_AT_EL3 46 ARM_MAP_BL1_RW, 47 #endif 48 {0} 49 }; 50 #endif 51 52 #if TRUSTED_BOARD_BOOT 53 int plat_get_mbedtls_heap(void **heap_addr, size_t *heap_size) 54 { 55 assert(heap_addr != NULL); 56 assert(heap_size != NULL); 57 58 return arm_get_mbedtls_heap(heap_addr, heap_size); 59 } 60 #endif 61 62 void plat_arm_secure_wdt_start(void) 63 { 64 sbsa_wdog_start(SBSA_SECURE_WDOG_BASE, SBSA_SECURE_WDOG_TIMEOUT); 65 } 66 67 void plat_arm_secure_wdt_stop(void) 68 { 69 sbsa_wdog_stop(SBSA_SECURE_WDOG_BASE); 70 } 71