/* * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #ifndef __SGM_PLAT_CONFIG_H__ #define __SGM_PLAT_CONFIG_H__ #include #include /* The type of interconnect */ typedef enum { ARM_CCI = 0, ARM_CCN, ARM_CMN } css_inteconn_type_t; typedef ccn_desc_t inteconn_desc_t; /* Interconnect configurations */ typedef struct css_inteconn_config { css_inteconn_type_t ip_type; const inteconn_desc_t *plat_inteconn_desc; } css_inteconn_config_t; /* Topology configurations */ typedef struct css_topology { const unsigned char *power_tree; unsigned int plat_cluster_core_count; } css_topology_t; typedef struct css_plat_config { const gicv3_driver_data_t *gic_data; const css_inteconn_config_t *inteconn; const css_topology_t *topology; } css_plat_config_t; void plat_config_init(void); css_plat_config_t *get_plat_config(void); #endif /* __SGM_PLAT_CONFIG_H__ */