1 /*
2  * Copyright (c) 2017, ARM Limited and Contributors. All rights reserved.
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  */
6 
7 #include <plat/arm/common/plat_arm.h>
8 
9 #include "fvp_private.h"
10 
bl2_el3_early_platform_setup(u_register_t arg0 __unused,u_register_t arg1 __unused,u_register_t arg2 __unused,u_register_t arg3 __unused)11 void bl2_el3_early_platform_setup(u_register_t arg0 __unused,
12 				  u_register_t arg1 __unused,
13 				  u_register_t arg2 __unused,
14 				  u_register_t arg3 __unused)
15 {
16 	arm_bl2_el3_early_platform_setup();
17 
18 	/* Initialize the platform config for future decision making */
19 	fvp_config_setup();
20 
21 	/*
22 	 * Initialize Interconnect for this cluster during cold boot.
23 	 * No need for locks as no other CPU is active.
24 	 */
25 	fvp_interconnect_init();
26 	/*
27 	 * Enable coherency in Interconnect for the primary CPU's cluster.
28 	 */
29 	fvp_interconnect_enable();
30 }
31