FVP: Allow building for DynamIQ systems
authorJeenu Viswambharan <jeenu.viswambharan@arm.com>
Wed, 31 Jan 2018 14:52:08 +0000 (14:52 +0000)
committerJeenu Viswambharan <jeenu.viswambharan@arm.com>
Wed, 28 Feb 2018 15:05:35 +0000 (15:05 +0000)
FVPs that model DynamIQ configuration implements all CPUs in a single
cluster. I.e., such models have a single cluster with more than 4 CPUs.
This differs from existing default build configuration for FVP where up
to 4 CPUs are assumed per cluster.

To allow building for DynamIQ configuration, promote the macro
FVP_MAX_CPUS_PER_CLUSTER as a build option to have it set from the build
command line. The value of the build option defaults to 4.

Change-Id: Idc3853bc95f680869b434b011c2dbd733e40c6ce
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
docs/user-guide.rst
plat/arm/board/fvp/fvp_def.h
plat/arm/board/fvp/platform.mk

index c9e87488fc4e1f07616e8c6264d178c4625a3f52..9e23711aa60890fb1626b9d6de4008e885f2f3bf 100644 (file)
@@ -755,6 +755,9 @@ ARM FVP platform specific build options
    -  ``FVP_CCN`` : The CCN driver is selected. This is the default
       if ``FVP_CLUSTER_COUNT`` > 2.
 
+-  ``FVP_MAX_CPUS_PER_CLUSTER``: Sets the maximum number of CPUs implemented in
+   a single cluster.  This option defaults to 4.
+
 -  ``FVP_MAX_PE_PER_CPU``: Sets the maximum number of PEs implemented on any CPU
    in the system. This option defaults to 1. Note that the build option
    ``ARM_PLAT_MT`` doesn't have any effect on FVP platforms.
index a430bcac1ac772bfa1547ece5d4fcd4194cb61dc..5ac5d3cdbb9d76728673e28d45107fd593853b19 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014-2017, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2014-2018, ARM Limited and Contributors. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
 #ifndef FVP_CLUSTER_COUNT
 #define FVP_CLUSTER_COUNT              2
 #endif
+
+#ifndef FVP_MAX_CPUS_PER_CLUSTER
 #define FVP_MAX_CPUS_PER_CLUSTER       4
+#endif
 
 #ifndef FVP_MAX_PE_PER_CPU
 # define FVP_MAX_PE_PER_CPU            1
index 8b913fb256f73a7ce6db27e41b64d5fdcec9074f..3dca4c2ac87e21435c79260b23718aeac0d23b1d 100644 (file)
@@ -13,6 +13,9 @@ FVP_USE_SP804_TIMER   := 0
 # Default cluster count for FVP
 FVP_CLUSTER_COUNT      := 2
 
+# Default number of CPUs per cluster on FVP
+FVP_MAX_CPUS_PER_CLUSTER       := 4
+
 # Default number of threads per CPU on FVP
 FVP_MAX_PE_PER_CPU     := 1
 
@@ -27,6 +30,9 @@ $(eval $(call add_define,FVP_USE_GIC_DRIVER))
 # Pass FVP_CLUSTER_COUNT to the build system.
 $(eval $(call add_define,FVP_CLUSTER_COUNT))
 
+# Pass FVP_MAX_CPUS_PER_CLUSTER to the build system.
+$(eval $(call add_define,FVP_MAX_CPUS_PER_CLUSTER))
+
 # Pass FVP_MAX_PE_PER_CPU to the build system.
 $(eval $(call add_define,FVP_MAX_PE_PER_CPU))