xref: /rk3399_ARM-atf/plat/arm/board/fvp/fvp_security.c (revision bd9344f670a46125cdd8949ded75be124f34d587)
13fc4124cSDan Handley /*
223411d2cSSummer Qin  * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
33fc4124cSDan Handley  *
482cb2c1aSdp-arm  * SPDX-License-Identifier: BSD-3-Clause
53fc4124cSDan Handley  */
63fc4124cSDan Handley 
7*bd9344f6SAntonio Nino Diaz #include <plat/arm/common/arm_config.h>
8*bd9344f6SAntonio Nino Diaz #include <plat/arm/common/plat_arm.h>
93fc4124cSDan Handley 
103fc4124cSDan Handley /*
113fc4124cSDan Handley  * We assume that all security programming is done by the primary core.
123fc4124cSDan Handley  */
133fc4124cSDan Handley void plat_arm_security_setup(void)
143fc4124cSDan Handley {
153fc4124cSDan Handley 	/*
163fc4124cSDan Handley 	 * The Base FVP has a TrustZone address space controller, the Foundation
173fc4124cSDan Handley 	 * FVP does not. Trying to program the device on the foundation FVP will
183fc4124cSDan Handley 	 * cause an abort.
193fc4124cSDan Handley 	 *
203fc4124cSDan Handley 	 * If the platform had additional peripheral specific security
213fc4124cSDan Handley 	 * configurations, those would be configured here.
223fc4124cSDan Handley 	 */
233fc4124cSDan Handley 
2489509904SSathees Balya 	if ((get_arm_config()->flags & ARM_CONFIG_HAS_TZC) != 0U)
2523411d2cSSummer Qin 		arm_tzc400_setup(NULL);
263fc4124cSDan Handley }
27