1 /* 2 * Copyright (c) 2020, Arm Limited. All rights reserved. 3 * 4 * SPDX-License-Identifier: BSD-3-Clause 5 */ 6 7 #ifndef FCONF_HW_CONFIG_GETTER_H 8 #define FCONF_HW_CONFIG_GETTER_H 9 10 #include <lib/fconf/fconf.h> 11 12 /* Hardware Config related getter */ 13 #define hw_config__gicv3_config_getter(prop) gicv3_config.prop 14 15 #define hw_config__topology_getter(prop) soc_topology.prop 16 17 struct gicv3_config_t { 18 void *gicd_base; 19 void *gicr_base; 20 }; 21 22 struct hw_topology_t { 23 uint32_t plat_cluster_count; 24 uint32_t cluster_cpu_count; 25 uint32_t plat_cpu_count; 26 uint32_t plat_max_pwr_level; 27 }; 28 29 int fconf_populate_gicv3_config(uintptr_t config); 30 int fconf_populate_topology(uintptr_t config); 31 32 extern struct gicv3_config_t gicv3_config; 33 extern struct hw_topology_t soc_topology; 34 35 #endif /* FCONF_HW_CONFIG_GETTER_H */ 36