blob: 2ab7bf2e391e5d67a4191bbf1f2990ff6d79e9ed [file] [log] [blame]
Dan Handley9df48042015-03-19 18:58:55 +00001/*
Vikram Kanigirifbb13012016-02-15 11:54:14 +00002 * Copyright (c) 2014-2016, ARM Limited and Contributors. All rights reserved.
Dan Handley9df48042015-03-19 18:58:55 +00003 *
dp-armfa3cf0b2017-05-03 09:38:09 +01004 * SPDX-License-Identifier: BSD-3-Clause
Dan Handley9df48042015-03-19 18:58:55 +00005 */
6#ifndef __ARM_CONFIG_H__
7#define __ARM_CONFIG_H__
8
Juan Castillo7f1f0622014-09-09 09:49:23 +01009#include <stdint.h>
Dan Handley9df48042015-03-19 18:58:55 +000010
11enum arm_config_flags {
12 /* Whether Base memory map is in use */
13 ARM_CONFIG_BASE_MMAP = 0x1,
Vikram Kanigirifbb13012016-02-15 11:54:14 +000014 /* Whether interconnect should be enabled */
15 ARM_CONFIG_HAS_INTERCONNECT = 0x2,
Dan Handley9df48042015-03-19 18:58:55 +000016 /* Whether TZC should be configured */
17 ARM_CONFIG_HAS_TZC = 0x4
18};
19
20typedef struct arm_config {
Dan Handley9df48042015-03-19 18:58:55 +000021 unsigned long flags;
22} arm_config_t;
23
24
25/* If used, arm_config must be defined and populated in the platform port */
26extern arm_config_t arm_config;
27
Juan Castillo8172d932015-08-04 14:31:27 +010028static inline const arm_config_t *get_arm_config(void)
Dan Handley9df48042015-03-19 18:58:55 +000029{
30 return &arm_config;
31}
32
33
34#endif /* __ARM_CONFIG_H__ */