summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDietmar Eggemann <dietmar.eggemann@arm.com>2012-05-15 13:47:42 +0100
committerDietmar Eggemann <dietmar.eggemann@arm.com>2012-05-23 12:44:36 +0100
commit27f2efc606df7adbf4477e860c447debf20d4dd1 (patch)
treefba7773cffce08a4e85278c2805edd095258a07a
parenteeb76389078171814ed83f0b544cbe016e61d882 (diff)
downloadswitcher-27f2efc606df7adbf4477e860c447debf20d4dd1.tar.gz
Add additional cluster startup related RTSM model parameter to the mxscript files.
Introduce the parameter string dualcluster which for now only contains the model parameter coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER. It is set to the model's default value 0x1 meaning the model will boot on the primary cluster (A15). Set it to 0x2 to be able to boot from secondary cluster (A7). Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
-rw-r--r--bootwrapper/big-little-mp1.mxscript4
-rw-r--r--bootwrapper/big-little-mp4.mxscript8
2 files changed, 8 insertions, 4 deletions
diff --git a/bootwrapper/big-little-mp1.mxscript b/bootwrapper/big-little-mp1.mxscript
index b50736a..0dbcfb0 100644
--- a/bootwrapper/big-little-mp1.mxscript
+++ b/bootwrapper/big-little-mp1.mxscript
@@ -40,6 +40,8 @@ int ctr = 0;
string networking = " -C motherboard.hostbridge.userNetworking=1 -C motherboard.hostbridge.userNetPorts=\"8080=8080\" -C motherboard.smsc_91c111.enabled=1";
string console = " -C motherboard.pl011_uart0.untimed_fifos=1 -C motherboard.pl011_uart1.untimed_fifos=1 -C motherboard.pl011_uart2.untimed_fifos=1 -C motherboard.pl011_uart3.untimed_fifos=1";
+// Select which cluster will come out of reset on power-on: 0x1 for for primary cluster (Cortex-A15, default); 0x2 for secondary cluster (Cortex-A7).
+string dualcluster = " -C coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x1";
// NOTE
//
@@ -52,7 +54,7 @@ string console = " -C motherboard.pl011_uart0.untimed_fifos=1 -C motherboard.pl0
// Invoke the model. It then listens for connection requests from the model debugger
// Vanilla invocation of the model.
-system(model + " -C motherboard.flashloader0.fname=" + wboot + " -C coretile.cache_state_modelled=1" + " -a coretile.cluster0.\*=" + app + " -a coretile.cluster1.\*=" + app + networking + console +" --verbose -S &");
+system(model + " -C motherboard.flashloader0.fname=" + wboot + " -C coretile.cache_state_modelled=1" + " -a coretile.cluster0.\*=" + app + " -a coretile.cluster1.\*=" + app + networking + console + dualcluster +" --verbose -S &");
// Wait for the model to load before connecting to it. There will be times when we
// try connecting before the model has loded resulting in a "Connection refused"
diff --git a/bootwrapper/big-little-mp4.mxscript b/bootwrapper/big-little-mp4.mxscript
index 3516857..b30509c 100644
--- a/bootwrapper/big-little-mp4.mxscript
+++ b/bootwrapper/big-little-mp4.mxscript
@@ -1,9 +1,9 @@
// Replace the string with the absolute path of the Kingfisher model executable
-// e.g. string model = "/home/working_dir/RTSM_VE_Cortex-A15x4-A7x4"
+// e.g. string model = "/home/working_dir/RTSM_VE_Cortex-A15x4-A7x4";
string model = "<path to the model>";
// Replace the string with the absolute path of the Virutalizer+Payload software image
-// e.g. string app = "/home/working_dir/bootwrapper/img.axf"
+// e.g. string app = "/home/working_dir/bootwrapper/img.axf";
string app = "<path to the software image>";
// Replace the string with the absolute path of the wboot.bin image created in the
@@ -40,6 +40,8 @@ int ctr = 0;
string networking = " -C motherboard.hostbridge.userNetworking=1 -C motherboard.hostbridge.userNetPorts=\"8080=8080\" -C motherboard.smsc_91c111.enabled=1";
string console = " -C motherboard.pl011_uart0.untimed_fifos=1 -C motherboard.pl011_uart1.untimed_fifos=1 -C motherboard.pl011_uart2.untimed_fifos=1 -C motherboard.pl011_uart3.untimed_fifos=1";
+// Select which cluster will come out of reset on power-on: 0x1 for for primary cluster (Cortex-A15, default); 0x2 for secondary cluster (Cortex-A7).
+string dualcluster = " -C coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x1";
// NOTE
//
@@ -52,7 +54,7 @@ string console = " -C motherboard.pl011_uart0.untimed_fifos=1 -C motherboard.pl0
// Invoke the model. It then listens for connection requests from the model debugger
// Vanilla invocation of the model.
-system(model + " -C motherboard.flashloader0.fname=" + wboot + " -C coretile.cache_state_modelled=1" + " -a coretile.cluster0.\*=" + app + " -a coretile.cluster1.\*=" + app + networking + console +" --verbose -S &");
+system(model + " -C motherboard.flashloader0.fname=" + wboot + " -C coretile.cache_state_modelled=1" + " -a coretile.cluster0.\*=" + app + " -a coretile.cluster1.\*=" + app + networking + console + dualcluster +" --verbose -S &");
// Wait for the model to load before connecting to it. There will be times when we
// try connecting before the model has loded resulting in a "Connection refused"