summaryrefslogtreecommitdiff
path: root/android/vexpress/HOWTO_rtsm.txt
blob: 581b3e4828a56e69467bdcf6fe502d1d61f4b185 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
This release has been boot tested on FVP_VE A15x4 and A9MPx4.  Reaching a login prompt is the only test carried out. This build is expected to run on other models. No UEFI binary exists for dual cluster A15x{1|4}-A7x{1|4}  models; in this case the A15 binary can be used, but the A7 CPUs will be held in reset.

h2. Prerequisites

* Install the model(s) you wish to run. You must have a valid license and the environment set up to run models
* Install "Linaro image tools":https://wiki.linaro.org/Linaro-Image-Tools

h3. Install Linaro Image Tools

Linaro Image Tools contain scripts that allow you to combine multiple components into a single Android image. The components are:

* boot.tar.bz2 - contains the kernel and boot loaders
* system.tar.bz2 - contains the entire system files and general OS
* userdata.tar.bz2 - contains sample data and tests

There are multiple ways you can get the latest Linaro Image Tools:

** Method 1: Install them from the Linaro Image Tools "PPA":https://launchpad.net/~linaro-maintainers/+archive/tools

bc. sudo add-apt-repository ppa:linaro-maintainers/tools
sudo apt-get update
sudo apt-get install linaro-image-tools

** Method 2: Build from source

bc. wget http://releases.linaro.org/latest/components/platform/linaro-image-tools/linaro-image-tools-${YYYY}.${MM}.tar.gz

h2. Create a 2GB image file

Fast Models will only deal with file systems up to 2GB in size, however the Linaro pre-built image for Android requires a 4GB filesystem. Therefore, we will build our own image using the pre-built artifacts (displayed above)

The following command downloads all the Android OS components necessary to make up a complete Android image.

bc. wget http://releases.linaro.org/latest/android/vexpress/boot.tar.bz2
wget http://releases.linaro.org/latest/android/vexpress/system.tar.bz2
wget http://releases.linaro.org/latest/android/vexpress/userdata.tar.bz2

Using the @linaro-android-media-create@, which is part of the @linaro-image-tools@, you can combine all the components into a single image.

bc. linaro-android-media-create --image-file linaro.img --image-size 2000M --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
tar jxvf boot.tar.bz2

h2. Run Fast Models with UEFI

The instructions for running UEFI on the various models are very similar.  The two differences are the UEFI binary and the model used.  Follow the model specific instruction below, then proceed to the generic instructions in the section "Run the model with UEFI".

h3. Run A9x4 model with UEFI

bc. MODEL=/usr/local/DS-5/bin/FVP_VE_Cortex-A9_MPx4
UEFI=boot/rtsm/uefi_rtsm_ve-ca9x4.bin

h3. Run A15x1 model with UEFI

bc. MODEL=$HOME/ARM/models/Linux64_GCC-4.1/FVP_VE_Cortex-A15x1
UEFI=boot/rtsm/uefi_rtsm_ve-ca15.bin

h3. Run A15x2 model with UEFI

bc. MODEL=$HOME/ARM/models/Linux64_GCC-4.1/FVP_VE_Cortex-A15x2
UEFI=boot/rtsm/uefi_rtsm_ve-ca15.bin

h3. Run A15x4 model with UEFI

bc. MODEL=$HOME/ARM/models/Linux64_GCC-4.1/FVP_VE_Cortex-A15x4
UEFI=boot/rtsm/uefi_rtsm_ve-ca15.bin

h3. Run the model with UEFI

bc. MMC=linaro.img
UEFI_VARS=$HOME/uefi-vars.fd
touch $UEFI_VARS # create the file if it doesn't already exist

bc. $MODEL \
-C motherboard.flashloader0.fname=$UEFI \
-C motherboard.flashloader1.fname=$UEFI_VARS \
-C motherboard.flashloader1.fnameWrite=$UEFI_VARS \
-C motherboard.mmc.p_mmc_file=$MMC \
-C motherboard.pl011_uart0.unbuffered_output=true \
-C motherboard.smsc_91c111.enabled=1 \
-C motherboard.hostbridge.userNetworking=1