arm_config.h 951 B

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