1 /* 2 * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #include <common/bl_common.h> 8 #include <common/debug.h> 9 #include <plat/arm/common/plat_arm.h> 10 #include <plat/arm/soc/common/soc_css.h> 11 #include <plat/arm/common/arm_def.h> 12 #include <drivers/arm/sp805.h> 13 #include <sgm_plat_config.h> 14 bl1_early_platform_setup(void)15void bl1_early_platform_setup(void) 16 { 17 18 /* Initialize the console before anything else */ 19 arm_bl1_early_platform_setup(); 20 21 /* Initialize the platform configuration structure */ 22 plat_config_init(); 23 24 #if !HW_ASSISTED_COHERENCY 25 /* 26 * Initialize Interconnect for this cluster during cold boot. 27 * No need for locks as no other CPU is active. 28 */ 29 plat_arm_interconnect_init(); 30 /* 31 * Enable Interconnect coherency for the primary CPU's cluster. 32 */ 33 plat_arm_interconnect_enter_coherency(); 34 #endif 35 } 36 plat_arm_secure_wdt_start(void)37void plat_arm_secure_wdt_start(void) 38 { 39 sp805_start(ARM_SP805_TWDG_BASE, ARM_TWDG_LOAD_VAL); 40 } 41 plat_arm_secure_wdt_stop(void)42void plat_arm_secure_wdt_stop(void) 43 { 44 sp805_stop(ARM_SP805_TWDG_BASE); 45 } 46