xref: /arm-trusted-firmware/include/plat/arm/common/arm_config.h (revision 91f16700b400a8c0651d24a598fc48ee2997a0d7)
1*91f16700Schasinglulu /*
2*91f16700Schasinglulu  * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
3*91f16700Schasinglulu  *
4*91f16700Schasinglulu  * SPDX-License-Identifier: BSD-3-Clause
5*91f16700Schasinglulu  */
6*91f16700Schasinglulu #ifndef ARM_CONFIG_H
7*91f16700Schasinglulu #define ARM_CONFIG_H
8*91f16700Schasinglulu 
9*91f16700Schasinglulu #include <stdint.h>
10*91f16700Schasinglulu 
11*91f16700Schasinglulu #include <lib/utils_def.h>
12*91f16700Schasinglulu 
13*91f16700Schasinglulu /* Whether Base memory map is in use */
14*91f16700Schasinglulu #define ARM_CONFIG_BASE_MMAP		BIT(1)
15*91f16700Schasinglulu 
16*91f16700Schasinglulu /* Whether TZC should be configured */
17*91f16700Schasinglulu #define ARM_CONFIG_HAS_TZC		BIT(2)
18*91f16700Schasinglulu 
19*91f16700Schasinglulu /* FVP model has shifted affinity */
20*91f16700Schasinglulu #define ARM_CONFIG_FVP_SHIFTED_AFF	BIT(3)
21*91f16700Schasinglulu 
22*91f16700Schasinglulu /* FVP model has SMMUv3 affinity */
23*91f16700Schasinglulu #define ARM_CONFIG_FVP_HAS_SMMUV3	BIT(4)
24*91f16700Schasinglulu 
25*91f16700Schasinglulu /* FVP model has CCI (400 or 500/550) devices */
26*91f16700Schasinglulu #define ARM_CONFIG_FVP_HAS_CCI400	BIT(5)
27*91f16700Schasinglulu #define ARM_CONFIG_FVP_HAS_CCI5XX	BIT(6)
28*91f16700Schasinglulu 
29*91f16700Schasinglulu typedef struct arm_config {
30*91f16700Schasinglulu 	unsigned long flags;
31*91f16700Schasinglulu } arm_config_t;
32*91f16700Schasinglulu 
33*91f16700Schasinglulu 
34*91f16700Schasinglulu /* If used, arm_config must be defined and populated in the platform port */
35*91f16700Schasinglulu extern arm_config_t arm_config;
36*91f16700Schasinglulu 
37*91f16700Schasinglulu static inline const arm_config_t *get_arm_config(void)
38*91f16700Schasinglulu {
39*91f16700Schasinglulu 	return &arm_config;
40*91f16700Schasinglulu }
41*91f16700Schasinglulu 
42*91f16700Schasinglulu 
43*91f16700Schasinglulu #endif /* ARM_CONFIG_H */
44