TFTF: get FVP platform's topology from build options

This patch extends passing FVP topology parameters with
FVP_CLUSTER_COUNT and FVP_MAX_CPUS_PER_CLUSTER build
options to match TF-A. The change adds more test options,
make FVP platform configuration more flexible and eliminates
test errors when the platform is configured with number
of CPUs less than default values in the makefile.
These build options are documented in 'Arm FVP Platform
Specific Build Options' section of 'build-options.rst'
document.

Signed-off-by: Alexei Fedorov <Alexei.Fedorov@arm.com>
Change-Id: I01c6437d468885755a5415804b3688e4c878170d
diff --git a/plat/common/plat_topology.c b/plat/common/plat_topology.c
index 33b6e57..5ff7a31 100644
--- a/plat/common/plat_topology.c
+++ b/plat/common/plat_topology.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2018-2019, Arm Limited. All rights reserved.
+ * Copyright (c) 2018-2020, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  */
@@ -364,6 +364,9 @@
 
 unsigned int tftf_find_random_cpu_other_than(unsigned int exclude_mpid)
 {
+#if (PLATFORM_CORE_COUNT == 1)
+	return INVALID_MPID;
+#else
 	unsigned int cpu_node, mpidr;
 	unsigned int possible_cpus_cnt = 0;
 	unsigned int possible_cpus[PLATFORM_CORE_COUNT];
@@ -378,4 +381,5 @@
 		return INVALID_MPID;
 
 	return possible_cpus[rand() % possible_cpus_cnt];
+#endif
 }