ci: extend the all feature configs with more features

Enable features that we know of but weren't enabled. Add support for
FEAT_MOPS as we have code to use it in tf-a. Factor out features that
were enabled only for rme but are generic.

Propagate all of this to the bmcov job as it's got out of date.

We can remove the explicit enables for ENABLE_FEAT_MTE2 as it's default
enabled on fvp.

Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com>
Change-Id: Ieda169bff6e50fae237f7e2e43d51fa9c1ab9cd6
diff --git a/model/base-aemva-common.sh b/model/base-aemva-common.sh
index 6fedcb4..4cbff80 100644
--- a/model/base-aemva-common.sh
+++ b/model/base-aemva-common.sh
@@ -418,9 +418,6 @@
 if [ "$has_rme" = "1" ]; then
         cat <<EOF >>"$model_param_file"
 -C cluster0.rme_support_level=2
--C cluster0.has_rndr=1
--C cluster0.has_v8_7_pmu_extension=2
--C cluster0.ecv_support_level=2
 -C cluster0.gicv3.cpuintf-mmap-access-level=2
 -C cluster0.gicv4.mask-virtual-interrupt=1
 -C cluster0.gicv3.without-DS-support=1
@@ -559,6 +556,20 @@
 EOF
 fi
 
+if [ "$has_pmuv3p7" != "0" ]; then
+	cat <<EOF >>"$model_param_file"
+-C cluster0.has_v8_7_pmu_extension=2
+-C cluster1.has_v8_7_pmu_extension=2
+EOF
+fi
+
+if [ "$has_mops" != "0" ]; then
+	cat <<EOF >>"$model_param_file"
+-C cluster0.has_mops_option=1
+-C cluster1.has_mops_option=1
+EOF
+fi
+
 #------------ Cluster1 configuration (if exists) --------------
 if [ "$is_dual_cluster" = "1" ]; then
 	cat <<EOF >>"$model_param_file"
@@ -691,9 +702,6 @@
 if [ "$has_rme" = "1" ]; then
 	cat <<EOF >>"$model_param_file"
 -C cluster1.rme_support_level=2
--C cluster1.has_rndr=1
--C cluster1.has_v8_7_pmu_extension=2
--C cluster1.ecv_support_level=2
 -C cluster1.gicv3.cpuintf-mmap-access-level=2
 -C cluster1.gicv4.mask-virtual-interrupt=1
 -C cluster1.gicv3.without-DS-support=1
diff --git a/run_config/fvp-aemv8a.all b/run_config/fvp-aemv8a.all
index e05200f..67113e4 100644
--- a/run_config/fvp-aemv8a.all
+++ b/run_config/fvp-aemv8a.all
@@ -18,6 +18,7 @@
 		etm_present="1" \
 		amu_present="1" \
 		has_sme="1" has_sme2="1" \
+		has_sme_fa64="1" \
 		has_mpam="1" \
 		has_ecv="1" \
 		has_fpmr="1" \
@@ -25,14 +26,23 @@
 		has_d128="1" \
 		has_brbe="1" \
 		has_trbe="1" \
+		has_fgt2="1" \
+		has_csv2_2="1" \
+		has_s1pie="1" \
+		has_s1poe="1" \
+		has_s2poe="1" \
+		has_gcs="1" \
+		has_pmuv3p7="1" \
 		has_v8_9_debug_extension="1" \
 		memory_tagging_support_level="3" \
 		supports_branch_record_buffer_control_regs="1" \
+		has_branch_target_exception="1" \
 		supports_trace_buffer_control_regs="1" \
 		supports_trace_filter_regs="2" \
 		supports_system_trace_filter_regs="1" \
-		arch_version="9.4" \
 		accelerator_support_level="3" \
+		has_mops="1" \
+		arch_version="9.4" \
 		gen_model_params
 
 	model="$model" gen_fvp_yaml
diff --git a/run_config/fvp-aemv8a.all.bmcov b/run_config/fvp-aemv8a.all.bmcov
index a849eaa..c10048e 100644
--- a/run_config/fvp-aemv8a.all.bmcov
+++ b/run_config/fvp-aemv8a.all.bmcov
@@ -12,22 +12,39 @@
 	uart="1" file="hold_uart.exp" track_expect
 
 	model="$model" \
-		bmcov_plugin="1" \
-		bmcov_plugin_path="${coverage_trace_plugin}" \
-		has_ete="1" \
 		etm_plugin="1" \
+		has_ete="1" \
 		has_sve="1" \
 		etm_present="1" \
 		amu_present="1" \
 		has_sme="1" has_sme2="1" \
+		has_sme_fa64="1" \
 		has_mpam="1" \
 		has_ecv="1" \
+		has_fpmr="1" \
+		has_translation_hardening="1" \
+		has_d128="1" \
+		has_brbe="1" \
+		has_trbe="1" \
+		has_fgt2="1" \
+		has_csv2_2="1" \
+		has_s1pie="1" \
+		has_s1poe="1" \
+		has_s2poe="1" \
+		has_gcs="1" \
+		has_pmuv3p7="1" \
+		has_v8_9_debug_extension="1" \
 		memory_tagging_support_level="3" \
 		supports_branch_record_buffer_control_regs="1" \
+		has_branch_target_exception="1" \
 		supports_trace_buffer_control_regs="1" \
 		supports_trace_filter_regs="2" \
 		supports_system_trace_filter_regs="1" \
-		arch_version="9.2" \
+		accelerator_support_level="3" \
+		has_mops="1" \
+		arch_version="9.4" \
+		bmcov_plugin="1" \
+		bmcov_plugin_path="${coverage_trace_plugin}" \
 		gen_model_params
 
 	model="$model" gen_fvp_yaml
diff --git a/run_config/fvp-spm.sve.bmcov b/run_config/fvp-spm.sve.bmcov
index 8161a11..5e79aab 100644
--- a/run_config/fvp-spm.sve.bmcov
+++ b/run_config/fvp-spm.sve.bmcov
@@ -39,6 +39,9 @@
 		gicv3_ext_interrupt_range="1" \
 		gicd_ext_ppi_count="64" \
 		gicd_ext_spi_count="1024" \
+		has_pmuv3p7="1" \
+		has_ecv="1" \
+		has_rng="1" \
 		gen_model_params
 
 	model="$model" gen_fvp_yaml
diff --git a/run_config/fvp-tftf.rme b/run_config/fvp-tftf.rme
index 9319418..4367ad9 100644
--- a/run_config/fvp-tftf.rme
+++ b/run_config/fvp-tftf.rme
@@ -50,6 +50,9 @@
 		gicv3_ext_interrupt_range="1" \
 		gicd_ext_ppi_count="64" \
 		gicd_ext_spi_count="1024" \
+		has_pmuv3p7="1" \
+		has_ecv="1" \
+		has_rng="1" \
 		gen_model_params
 
 	model="$model" gen_fvp_yaml
diff --git a/tf_config/fvp-report-max-ctx-mem-use b/tf_config/fvp-report-max-ctx-mem-use
index 84aa87c..84ddd80 100644
--- a/tf_config/fvp-report-max-ctx-mem-use
+++ b/tf_config/fvp-report-max-ctx-mem-use
@@ -3,7 +3,6 @@
 CTX_INCLUDE_PAUTH_REGS=1
 CTX_INCLUDE_MPAM_REGS=1
 ENABLE_FEAT_RAS=1
-ENABLE_FEAT_MTE2=1
 ERRATA_SPECULATIVE_AT=1
 PLAT=fvp
 PLATFORM_REPORT_CTX_MEM_USE=1