fix: specify FVP start ports explicitly

This change ensures that every supported FVP is explicit about the ports
that it will try to bind to. This is a mitigation against the
sometimes-random order in which terminals are enumerated by the various
FVPs, which causes our LAVA tests to attempt to read from the wrong
terminal.

Signed-off-by: Chris Kay <chris.kay@arm.com>
Change-Id: Ida12fcdae988fe119226c05032c90387e574727b
(cherry picked from commit 30120b38df617c05307ee42f46bc6f5db5d7f568)
diff --git a/model/base-aemv8a-gic600ae.sh b/model/base-aemv8a-gic600ae.sh
index cdf5608..32f0c1c 100644
--- a/model/base-aemv8a-gic600ae.sh
+++ b/model/base-aemv8a-gic600ae.sh
@@ -19,5 +19,10 @@
 # Hence to set GICR base address to 0x2f100000, set the
 # ITScount=6 where RDnum=0
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+
 -C gic_iri.ITS-count=6
 EOF
diff --git a/model/base-aemv8a-latest-revb.sh b/model/base-aemv8a-latest-revb.sh
index cbcbcdf..a2a59a6 100644
--- a/model/base-aemv8a-latest-revb.sh
+++ b/model/base-aemv8a-latest-revb.sh
@@ -12,3 +12,10 @@
 default_var is_dual_cluster 1
 
 source "$ci_root/model/base-aemva-common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/base-aemv8a-quad.sh b/model/base-aemv8a-quad.sh
index 1401332..0f4272f 100644
--- a/model/base-aemv8a-quad.sh
+++ b/model/base-aemv8a-quad.sh
@@ -21,6 +21,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${cluster_0_num_cores+-C cluster0.NUM_CORES=$cluster_0_num_cores}
 ${cluster_1_num_cores+-C cluster1.NUM_CORES=$cluster_1_num_cores}
diff --git a/model/base-aemv8a-revb.sh b/model/base-aemv8a-revb.sh
index 2f9a24d..3832d47 100644
--- a/model/base-aemv8a-revb.sh
+++ b/model/base-aemv8a-revb.sh
@@ -13,3 +13,10 @@
 default_var is_dual_cluster 1
 
 source "$ci_root/model/base-aemva-common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/base-aemv8a.sh b/model/base-aemv8a.sh
index d5fa43e..344f882 100644
--- a/model/base-aemv8a.sh
+++ b/model/base-aemv8a.sh
@@ -27,6 +27,13 @@
 
 source "$ci_root/model/base-aemva-common.sh"
 
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
+
 # Base address for each redistributor
 if [ "$gicd_virtual_lpi" = "1" ]; then
 	cat <<EOF >>"$model_param_file"
diff --git a/model/base-aemva.sh b/model/base-aemva.sh
index ef356cc..58cf23b 100644
--- a/model/base-aemva.sh
+++ b/model/base-aemva.sh
@@ -16,3 +16,10 @@
 default_var is_dual_cluster 0
 
 source "$ci_root/model/base-aemva-common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/baser-aemv8r.sh b/model/baser-aemv8r.sh
index b684881..e74688c 100644
--- a/model/baser-aemv8r.sh
+++ b/model/baser-aemv8r.sh
@@ -15,6 +15,10 @@
 
 # Write model command line options
 cat <<EOF >"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 -C bp.pl011_uart0.unbuffered_output=1
 -C bp.pl011_uart0.untimed_fifos=true
diff --git a/model/cortex-a32x4.sh b/model/cortex-a32x4.sh
index d7a331c..d51749b 100644
--- a/model/cortex-a32x4.sh
+++ b/model/cortex-a32x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a35x4.sh b/model/cortex-a35x4.sh
index 6004a3e..374d68b 100644
--- a/model/cortex-a35x4.sh
+++ b/model/cortex-a35x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a53x4.sh b/model/cortex-a53x4.sh
index 0bd8403..7d38d96 100644
--- a/model/cortex-a53x4.sh
+++ b/model/cortex-a53x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a55x4-a75x4.sh b/model/cortex-a55x4-a75x4.sh
index acc02af..3d68bea 100644
--- a/model/cortex-a55x4-a75x4.sh
+++ b/model/cortex-a55x4-a75x4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A55x4+Cortex-A75x4"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a55x4-a76x2.sh b/model/cortex-a55x4-a76x2.sh
index d2cc861..f57f935 100644
--- a/model/cortex-a55x4-a76x2.sh
+++ b/model/cortex-a55x4-a76x2.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A55x4+Cortex-A76x2"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a55x4.sh b/model/cortex-a55x4.sh
index 53c5f9e..41b7809 100644
--- a/model/cortex-a55x4.sh
+++ b/model/cortex-a55x4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A55"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a57x1-a53x1.sh b/model/cortex-a57x1-a53x1.sh
index 8420bdf..0f1203c 100644
--- a/model/cortex-a57x1-a53x1.sh
+++ b/model/cortex-a57x1-a53x1.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_bl31+-C cluster0.cpu0.RVBARADDR=${bl31_addr:?}}
 ${reset_to_bl31+-C cluster1.cpu0.RVBARADDR=${bl31_addr:?}}
diff --git a/model/cortex-a57x2-a53x4.sh b/model/cortex-a57x2-a53x4.sh
index 40f2ed9..d41eda9 100644
--- a/model/cortex-a57x2-a53x4.sh
+++ b/model/cortex-a57x2-a53x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_bl31+-C cluster0.cpu0.RVBARADDR=${bl31_addr:?}}
 ${reset_to_bl31+-C cluster0.cpu1.RVBARADDR=${bl31_addr:?}}
diff --git a/model/cortex-a57x4-a53x4.sh b/model/cortex-a57x4-a53x4.sh
index 859be7a..54d64ea 100644
--- a/model/cortex-a57x4-a53x4.sh
+++ b/model/cortex-a57x4-a53x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_bl31+-C cluster0.cpu0.RVBARADDR=${bl31_addr:?}}
 ${reset_to_bl31+-C cluster0.cpu1.RVBARADDR=${bl31_addr:?}}
diff --git a/model/cortex-a57x4.sh b/model/cortex-a57x4.sh
index 92afe94..c740dff 100644
--- a/model/cortex-a57x4.sh
+++ b/model/cortex-a57x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a65aex8.sh b/model/cortex-a65aex8.sh
index 63cf3e5..aee5caf 100644
--- a/model/cortex-a65aex8.sh
+++ b/model/cortex-a65aex8.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A65AE"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a65x4.sh b/model/cortex-a65x4.sh
index bf37456..12dea94 100644
--- a/model/cortex-a65x4.sh
+++ b/model/cortex-a65x4.sh
@@ -8,3 +8,10 @@
 set_model_path "/$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A65"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a710.sh b/model/cortex-a710.sh
index bdea36b..a3d9035 100644
--- a/model/cortex-a710.sh
+++ b/model/cortex-a710.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version_11_17/$model_build_11_17/external/models/$model_flavour_11_17/FVP_Base_Cortex-A710x4"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a72x4-a53x4.sh b/model/cortex-a72x4-a53x4.sh
index 1c0951f..f96a5b7 100644
--- a/model/cortex-a72x4-a53x4.sh
+++ b/model/cortex-a72x4-a53x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_bl31+-C cluster0.cpu0.RVBARADDR=${bl31_addr:?}}
 ${reset_to_bl31+-C cluster0.cpu1.RVBARADDR=${bl31_addr:?}}
diff --git a/model/cortex-a72x4.sh b/model/cortex-a72x4.sh
index b252ea0..0db883e 100644
--- a/model/cortex-a72x4.sh
+++ b/model/cortex-a72x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a73x4-a53x4.sh b/model/cortex-a73x4-a53x4.sh
index 8aca8d1..6b44c2a 100644
--- a/model/cortex-a73x4-a53x4.sh
+++ b/model/cortex-a73x4-a53x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_bl31+-C cluster0.cpu0.RVBARADDR=${bl31_addr:?}}
 ${reset_to_bl31+-C cluster0.cpu1.RVBARADDR=${bl31_addr:?}}
diff --git a/model/cortex-a73x4.sh b/model/cortex-a73x4.sh
index 6026929..be61565 100644
--- a/model/cortex-a73x4.sh
+++ b/model/cortex-a73x4.sh
@@ -10,6 +10,10 @@
 source "$ci_root/model/fvp_common.sh"
 
 cat <<EOF >>"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
 
 ${reset_to_spmin+-C cluster0.cpu0.RVBARADDR=${bl32_addr:?}}
 ${reset_to_spmin+-C cluster0.cpu1.RVBARADDR=${bl32_addr:?}}
diff --git a/model/cortex-a75x4.sh b/model/cortex-a75x4.sh
index 887d176..59993b9 100644
--- a/model/cortex-a75x4.sh
+++ b/model/cortex-a75x4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A75"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a76aex4.sh b/model/cortex-a76aex4.sh
index 7fddd52..757e15f 100644
--- a/model/cortex-a76aex4.sh
+++ b/model/cortex-a76aex4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A76AE"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a76x4.sh b/model/cortex-a76x4.sh
index 222da1f..6b990af 100644
--- a/model/cortex-a76x4.sh
+++ b/model/cortex-a76x4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A76"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a77x4.sh b/model/cortex-a77x4.sh
index 7fb0f3e..68929aa 100644
--- a/model/cortex-a77x4.sh
+++ b/model/cortex-a77x4.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Cortex-A77"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a78cx4.sh b/model/cortex-a78cx4.sh
index 4030ffc..012d934 100644
--- a/model/cortex-a78cx4.sh
+++ b/model/cortex-a78cx4.sh
@@ -11,3 +11,10 @@
 export no_quantum=""
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-a78x4.sh b/model/cortex-a78x4.sh
index e1bf704..254408c 100644
--- a/model/cortex-a78x4.sh
+++ b/model/cortex-a78x4.sh
@@ -11,3 +11,10 @@
 export no_quantum=""
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >"$model_param_file"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/cortex-x2.sh b/model/cortex-x2.sh
index 741d609..67693f2 100644
--- a/model/cortex-x2.sh
+++ b/model/cortex-x2.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version_11_17/$model_build_11_17/external/models/$model_flavour_11_17/FVP_Base_Cortex-X2x4"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/css-rde1edge.sh b/model/css-rde1edge.sh
index 340d9bb..7b0dbd2 100644
--- a/model/css-rde1edge.sh
+++ b/model/css-rde1edge.sh
@@ -8,6 +8,17 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.17/29/models/$model_flavour/FVP_RD_E1_edge"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.mcp.terminal_uart0.start_port=5002
+-C css.mcp.terminal_uart1.start_port=5003
+-C css.scp.terminal_uart_aon.start_port=5004
+-C css.terminal_uart1_ap.start_port=5005
+-C css.terminal_uart_ap.start_port=5006
+-C soc.terminal_mcp.start_port=5007
+-C soc.terminal_s0.start_port=5008
+-C soc.terminal_s1.start_port=5009
+
 -C board.flashloader0.fname=$fip_bin
 -C css.cmn600.force_rnsam_internal=false
 -C css.cmn600.mesh_config_file=RD_N1_E1_cmn600.yml
diff --git a/model/css-rdn1edge.sh b/model/css-rdn1edge.sh
index effc3c2..6402ba8 100644
--- a/model/css-rdn1edge.sh
+++ b/model/css-rdn1edge.sh
@@ -8,6 +8,17 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.15/26/models/Linux64_GCC-6.4/FVP_RD_N1_edge"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.mcp.terminal_uart0.start_port=5002
+-C css.mcp.terminal_uart1.start_port=5003
+-C css.scp.terminal_uart_aon.start_port=5004
+-C css.terminal_uart1_ap.start_port=5005
+-C css.terminal_uart_ap.start_port=5006
+-C soc.terminal_mcp.start_port=5007
+-C soc.terminal_s0.start_port=5008
+-C soc.terminal_s1.start_port=5009
+
 -C board.flashloader0.fname=$fip_bin
 -C board.virtioblockdevice.image_path=$busybox_bin
 -C css.cmn600.force_rnsam_internal=false
diff --git a/model/css-rdn1edgex2.sh b/model/css-rdn1edgex2.sh
index d0203ab..62e1919 100644
--- a/model/css-rdn1edgex2.sh
+++ b/model/css-rdn1edgex2.sh
@@ -8,6 +8,26 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.17/33/models/$model_flavour/FVP_RD_N1_edge_dual"
 
 cat <<EOF >"$model_param_file"
+-C board0.terminal_0.start_port=5000
+-C board0.terminal_1.start_port=5001
+-C board1.terminal_0.start_port=5002
+-C board1.terminal_1.start_port=5003
+-C css0.mcp.terminal_uart0.start_port=5004
+-C css0.mcp.terminal_uart1.start_port=5005
+-C css0.scp.terminal_uart_aon.start_port=5006
+-C css0.terminal_uart1_ap.start_port=5007
+-C css0.terminal_uart_ap.start_port=5008
+-C css1.mcp.terminal_uart0.start_port=5009
+-C css1.mcp.terminal_uart1.start_port=5010
+-C css1.scp.terminal_uart_aon.start_port=5011
+-C css1.terminal_uart1_ap.start_port=5012
+-C css1.terminal_uart_ap.start_port=5013
+-C soc0.terminal_mcp.start_port=5014
+-C soc0.terminal_s0.start_port=5015
+-C soc0.terminal_s1.start_port=5016
+-C soc1.terminal_mcp.start_port=5017
+-C soc1.terminal_s0.start_port=5018
+-C soc1.terminal_s1.start_port=5019
 
 -C board0.flashloader0.fname=$fip_bin
 -C board0.virtioblockdevice.image_path=$busybox_bin
diff --git a/model/css-rdv1.sh b/model/css-rdv1.sh
index 534ab97..c8fdf44 100644
--- a/model/css-rdv1.sh
+++ b/model/css-rdv1.sh
@@ -8,6 +8,17 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.17/29/models/$model_flavour/FVP_RD_V1"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.mcp.terminal_uart0.start_port=5002
+-C css.mcp.terminal_uart1.start_port=5003
+-C css.scp.terminal_uart_aon.start_port=5004
+-C css.terminal_uart1_ap.start_port=5005
+-C css.terminal_uart_ap.start_port=5006
+-C soc.terminal_mcp.start_port=5007
+-C soc.terminal_s0.start_port=5008
+-C soc.terminal_s1.start_port=5009
+
 -C board.flashloader0.fname=$fip_bin
 -C board.virtioblockdevice.image_path=$busybox_bin
 -C css.cmn_650.force_rnsam_internal=true
diff --git a/model/css-sgi575.sh b/model/css-sgi575.sh
index 06561ad..f6521f2 100644
--- a/model/css-sgi575.sh
+++ b/model/css-sgi575.sh
@@ -8,6 +8,17 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.15/26/models/Linux64_GCC-6.4/FVP_CSS_SGI-575"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.mcp.terminal_uart0.start_port=5002
+-C css.mcp.terminal_uart1.start_port=5003
+-C css.scp.terminal_uart_aon.start_port=5004
+-C css.terminal_uart1_ap.start_port=5005
+-C css.terminal_uart_ap.start_port=5006
+-C soc.terminal_mcp.start_port=5007
+-C soc.terminal_s0.start_port=5008
+-C soc.terminal_s1.start_port=5009
+
 -C board.flashloader0.fname=$fip_bin
 -C board.virtioblockdevice.image_path=$busybox_bin
 -C css.cmn600.force_rnsam_internal=false
diff --git a/model/morello.sh b/model/morello.sh
index 7933f0a..c68c540 100644
--- a/model/morello.sh
+++ b/model/morello.sh
@@ -9,6 +9,14 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/$model_version/$model_build/models/$model_flavour/FVP_Morello"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_uart0_board.start_port=5000
+-C board.terminal_uart1_board.start_port=5001
+-C css.mcp.terminal_uart0.start_port=5002
+-C css.mcp.terminal_uart1.start_port=5003
+-C css.scp.terminal_uart_aon.start_port=5004
+-C css.terminal_uart1_ap.start_port=5005
+-C css.terminal_uart_ap.start_port=5006
+
 --data Morello_Top.css.scp.armcortexm7ct=$scp_rom_bin@0x0
 --data Morello_Top.css.mcp.armcortexm7ct=$mcp_rom_bin@0x0
 -C Morello_Top.soc.scp_qspi_loader.fname=$scp_fw_bin
diff --git a/model/neoverse-v1x4.sh b/model/neoverse-v1x4.sh
index 7314f5a..533e324 100644
--- a/model/neoverse-v1x4.sh
+++ b/model/neoverse-v1x4.sh
@@ -11,3 +11,10 @@
 export no_quantum=""
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/neoverse_e1x1.sh b/model/neoverse_e1x1.sh
index 0589397..4631db5 100644
--- a/model/neoverse_e1x1.sh
+++ b/model/neoverse_e1x1.sh
@@ -9,6 +9,13 @@
 
 source "$ci_root/model/fvp_common.sh"
 
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
+
 # Base address for each redistributor
 if [ "$gicd_virtual_lpi" = "1" ]; then
 	cat <<EOF >>"$model_param_file"
diff --git a/model/neoverse_n1.sh b/model/neoverse_n1.sh
index be30173..9ac8b1b 100644
--- a/model/neoverse_n1.sh
+++ b/model/neoverse_n1.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version/$model_build/external/models/$model_flavour/FVP_Base_Neoverse-N1"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/neoverse_n2.sh b/model/neoverse_n2.sh
index 0722535..cc63722 100644
--- a/model/neoverse_n2.sh
+++ b/model/neoverse_n2.sh
@@ -8,3 +8,10 @@
 set_model_path "$warehouse/SysGen/Models/$model_version_11_16/$model_build_11_16/external/models/$model_flavour_11_16/FVP_Base_Neoverse-N1x4"
 
 source "$ci_root/model/fvp_common.sh"
+
+cat <<EOF >>"${model_param_file}"
+-C bp.terminal_0.start_port=5000
+-C bp.terminal_1.start_port=5001
+-C bp.terminal_2.start_port=5002
+-C bp.terminal_3.start_port=5003
+EOF
diff --git a/model/tc0.sh b/model/tc0.sh
index b05463f..59db4d3 100644
--- a/model/tc0.sh
+++ b/model/tc0.sh
@@ -8,6 +8,13 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.17/18/models/$model_flavour/FVP_TC0"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.terminal_uart1_ap.start_port=5002
+-C css.terminal_uart_ap.start_port=5003
+-C soc.terminal_s0.start_port=5004
+-C soc.terminal_s1.start_port=5005
+
 ${bl1_bin+-C css.trustedBootROMloader.fname=$bl1_bin}
 ${scp_rom_bin+-C css.scp.ROMloader.fname=$scp_rom_bin}
 ${fip_bin+-C board.flashloader0.fname=$fip_bin}
diff --git a/model/tc1.sh b/model/tc1.sh
index 0434d2c..89fa456 100644
--- a/model/tc1.sh
+++ b/model/tc1.sh
@@ -8,6 +8,13 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.17/33/models/$model_flavour/FVP_TC1"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.terminal_uart1_ap.start_port=5002
+-C css.terminal_uart_ap.start_port=5003
+-C soc.terminal_s0.start_port=5004
+-C soc.terminal_s1.start_port=5005
+
 ${bl1_bin+-C css.trustedBootROMloader.fname=$bl1_bin}
 ${scp_rom_bin+-C css.scp.ROMloader.fname=$scp_rom_bin}
 ${fip_bin+-C board.flashloader0.fname=$fip_bin}
diff --git a/model/tc2.sh b/model/tc2.sh
index 740b06f..21202bf 100644
--- a/model/tc2.sh
+++ b/model/tc2.sh
@@ -8,6 +8,13 @@
 set_model_path "$warehouse/SysGen/SubSystemModels/11.18/28/models/$model_flavour/FVP_TC2"
 
 cat <<EOF >"$model_param_file"
+-C board.terminal_0.start_port=5000
+-C board.terminal_1.start_port=5001
+-C css.terminal_uart1_ap.start_port=5002
+-C css.terminal_uart_ap.start_port=5003
+-C soc.terminal_s0.start_port=5004
+-C soc.terminal_s1.start_port=5005
+
 ${fip_bin+-C board.flashloader0.fname=$fip_bin}
 ${initrd_bin+--data board.dram=$initrd_bin@${initrd_addr:?}}
 ${kernel_bin+--data board.dram=$kernel_bin@${kernel_addr:?}}