summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorDietmar Eggemann <dietmar.eggemann@arm.com>2012-03-13 18:25:17 +0000
committerDietmar Eggemann <dietmar.eggemann@arm.com>2012-05-22 10:43:46 +0100
commit35fd255487ce870c48e378017b859b7e40eb09ce (patch)
tree66519fec89c97e983de78fbec22109c236f43e0d /docs
parent4137c2df1c28d0a9461a285b6eb926c01da3beae (diff)
Update release notes and docs subdirectory to v2.3 (3).
Incorporate changes after release notes and docs subdirectory review. Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
Diffstat (limited to 'docs')
-rw-r--r--docs/01-Usage.txt10
-rw-r--r--docs/02-Code-layout.txt16
-rw-r--r--docs/03-Linux-kernel-build.txt12
-rw-r--r--[-rwxr-xr-x]docs/07-Linux-cpu-hotplug-howto.txt44
4 files changed, 42 insertions, 40 deletions
diff --git a/docs/01-Usage.txt b/docs/01-Usage.txt
index ff1b689..15e4f06 100644
--- a/docs/01-Usage.txt
+++ b/docs/01-Usage.txt
@@ -30,15 +30,15 @@ Usage
location then this must be reflected in the first line of
the following file:
- arm-virtualizer-v2_2-160212/bootwrapper/makemap
+ arm-virtualizer-v2_3-130312/bootwrapper/makemap
Failure to make this modification will result in a build
failure.
To build the software:
- $ tar -jxf arm-virtualizer-v2_2-160212.tar.bz2
- $ cd arm-virtualizer-v2_2-160212/bootwrapper
+ $ tar -jxf arm-virtualizer-v2_3-130312.tar.bz2
+ $ cd arm-virtualizer-v2_3-130312/bootwrapper
$ make clean && make
The resulting file is 'img.axf'.
@@ -48,12 +48,12 @@ Usage
Note that the pre-built stub kernel image is located at:
- arm-virtualizer-v2_2-160212/bootwrapper/payload/kernel
+ arm-virtualizer-v2_3-130312/bootwrapper/payload/kernel
.. and the placeholder dummy root filesystem image is located
at:
- arm-virtualizer-v2_2-160212/bootwrapper/payload/fsimg
+ arm-virtualizer-v2_3-130312/bootwrapper/payload/fsimg
These may be replaced with custom built images such as a
suitably configured linux kernel image and a root filesystem
diff --git a/docs/02-Code-layout.txt b/docs/02-Code-layout.txt
index 9e49fa8..32a2a9a 100644
--- a/docs/02-Code-layout.txt
+++ b/docs/02-Code-layout.txt
@@ -145,8 +145,8 @@ B Code layout overview
1. Simple perl script that takes an ELF image of
the Virtualizer, parses through the relevant
sections & adds those sections to the scatter
- file so that a consolidated image can be
- created.
+ file so that a consolidated image can be
+ created.
2. big-little/common
@@ -322,11 +322,11 @@ B Code layout overview
1. Contains code to handle an HVC instructions
executed by the payload software:
- a. to initiate a synchronous switchover.
- ("HVC #1")
+ a. to initiate a synchronous switchover.
+ ("HVC #1").
- b. to find the id of the cluster on which its
- currently executing. ("HVC #2")
+ b. to find the id of the cluster on which
+ its currently executing. ("HVC #2").
3. handle_switchover.s
@@ -498,8 +498,8 @@ B Code layout overview
initialise the Secure world stacks,
coherency, pagetables, to configure some
coprocessor and memory mapped peripheral
- (Coherent interconnect & shared vGIC)
- registers for use of these features by
+ (Coherent interconnect & shared vGIC)
+ registers for use of these features by
the Non-secure world.
2. SMC_SEC_SAVE
diff --git a/docs/03-Linux-kernel-build.txt b/docs/03-Linux-kernel-build.txt
index a35b5c4..9252859 100644
--- a/docs/03-Linux-kernel-build.txt
+++ b/docs/03-Linux-kernel-build.txt
@@ -5,8 +5,8 @@ A suitable Linux kernel image for use with the virtualizer
can be built as follows (GCC toolchain used for these steps is:
CodeSourcery Sourcery G++ Lite 2010.09 v4.5.1)
-$ tar -jxf arm-virtualizer-v2_2-160212.tar.bz2
-$ cd arm-virtualizer-v2_2-160212/bootwrapper
+$ tar -jxf arm-virtualizer-v2_3-130312.tar.bz2
+$ cd arm-virtualizer-v2_3-130312/bootwrapper
$ make clean
$ pushd /tmp
$ git clone git://linux-arm.org/linux-2.6-lp.git linux-2.6-lp.git
@@ -24,10 +24,10 @@ $ make clean && make
.. in the top bootwrapper directory.
This will result in a file called img.axf located at
-arm-virtualizer-v2_2-160212/bootwrapper/img.axf.
+arm-virtualizer-v2_3-130312/bootwrapper/img.axf.
To launch the ARM FastModel with the virtualizer, first modify
-arm-virtualizer-v2_2-160212/bootwrapper/big-little-MP<x>.mxscript
+arm-virtualizer-v2_3-130312/bootwrapper/big-little-MP<x>.mxscript
as usual to fill in paths to the model binary and the img.axf files.
The mxscript file is adequately commented to assist with this.
@@ -44,11 +44,11 @@ string model = "/home/working_dir/models/RTSM_VE_Cortex-A15x4-A7x4";
The path to the img.axf file is specified using the app directive as
follows:
-string app = "arm-virtualizer-v2_2-160212/bootwrapper/img.axf";
+string app = "arm-virtualizer-v2_3-130312/bootwrapper/img.axf";
The model can then be launched using:
-modeldebugger -s arm-virtualizer-v2_2-160212/bootwrapper/big-little-MP<x>.mxscript
+modeldebugger -s arm-virtualizer-v2_3-130312/bootwrapper/big-little-MP<x>.mxscript
Where 'x' is the 1 or 4 respectively in the case of an MP1 model run or an
MP4 model run.
diff --git a/docs/07-Linux-cpu-hotplug-howto.txt b/docs/07-Linux-cpu-hotplug-howto.txt
index 873a88c..90343eb 100755..100644
--- a/docs/07-Linux-cpu-hotplug-howto.txt
+++ b/docs/07-Linux-cpu-hotplug-howto.txt
@@ -1,43 +1,46 @@
-Instructions & Guidelines to use Linux cpu hotplug
+Instructions & guidelines to use Linux CPU hotplug
==================================================
A Introduction
This note describes how the Virtualizer software should
- be configured for use with the Linux cpu hotplug
+ be configured for use with the Linux CPU hotplug
subsystem. It also mentions conditions that both Linux
and the Virtualizer software should fulfil for cpu
hotplug to work.
B Guidelines
- A cpu hotplug operation involves migration of all tasks
- and interrupts from the cpu in question before flushing
- the relevant cache level(s) and shutting down the cpu.
- A cpu is shutdown by programming the relevant RST_HOLDx
+ A CPU hotplug operation involves migration of all tasks
+ and interrupts from the CPU in question before flushing
+ the relevant cache level(s) and shutting down the CPU.
+ A CPU is shutdown by programming the relevant RST_HOLDx
register in the KingFisher System Control Block (KFSCB).
The Virtualizer software traps accesses to the KFSCB made
- by Linux to shutdown a cpu to save its HYP mode context
+ by Linux to shutdown a CPU to save its HYP mode context
and request the Secure world to save its own context. It
then proceeds with the shutdown operation as Linux
originally intended. The key assumption made here is that
Linux will access the KFSCB RST_HOLDx registers only
- during a cpu hotplug operation.
+ during a CPU hotplug operation.
- It is also assumed that its not possible hotplug cpu0.
- Hence, Linux cpu hotplug will work only with the MPx4
- variant of the big.LITTLE FastModels.
+ It is also assumed that its not possible to hotplug CPU0.
+ Hence, Linux CPU hotplug will work only with the MPx4
+ variant of the big.LITTLE FastModels. The CPU choice here
+ isn't prescriptive and does not imply that CPU0 should
+ always be the last man standing CPU in a hotplug capable
+ system. It was chosen for simplicity.
The Virtualizer software is built to switch the payload
software between clusters asynchronously. There is a
- possibility of unpredictable behaviour happenning if a
- cluster switch is initiated when a cpu hotplug operation
+ possibility of unpredictable behaviour happening if a
+ cluster switch is initiated when a CPU hotplug operation
is in progress. Hence the following two conditions need
to be met to be able to use the Virtualizer software in
- conjunction with Linux cpu hotplug:
+ conjunction with Linux CPU hotplug:
- 1. The Virtualizer software should be built to support
+ 1. The Virtualizer software must be built to support
synchronous switching by setting the ASYNC
environment variable to FALSE prior to building it.
For example with the tcsh shell:
@@ -45,7 +48,7 @@ B Guidelines
setenv ASYNC FALSE; make
2. Linux should invoke a cluster switch explicitly
- after ensuring that no cpu hotplug operation is in
+ after ensuring that no CPU hotplug operation is in
progress and vice versa. It can invoke a cluster
switch by using the "HVC #1" assembler instruction
from the relevant code.
@@ -54,7 +57,7 @@ C Instructions
1. Build a linux kernel as per the steps listed in
"docs/03-Linux-kernel-build.txt".
- The configuration includes support for cpu
+ The configuration includes support for CPU
hotplug by default.
2. Use an existing root filesystem or build a new
@@ -71,12 +74,11 @@ C Instructions
4. Boot the resulting "bootwrapper/img.axf" file
using the "bootwrapper/big-little-mp4.mxscript"
file. At the command prompt, the Linux cpu
- hotplug commands to hotplug cpus should work
- as expected. For example, to hotplug cpu1 do:
+ hotplug commands to hotplug CPUs should work
+ as expected. For example, to hotplug CPU1 do:
echo 0 > /sys/devices/system/cpu/cpu1/online
- To bring cpu1 online do:
+ To bring CPU1 online do:
echo 1 > /sys/devices/system/cpu/cpu1/online
-