summaryrefslogtreecommitdiff
path: root/#RTSM#
diff options
context:
space:
mode:
Diffstat (limited to '#RTSM#')
-rw-r--r--#RTSM#118
1 files changed, 118 insertions, 0 deletions
diff --git a/#RTSM# b/#RTSM#
new file mode 100644
index 0000000..cc0e9f1
--- /dev/null
+++ b/#RTSM#
@@ -0,0 +1,118 @@
+h1. Real-Time System Model (RTSM)
+
+h2. Prerequisites
+
+* Install the RTSM 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
+* Install kpartx which you can get by issuing the following command in your terminal
+
+bc. sudo apt-get install kpartx
+
+
+Linaro Ubuntu images are made up of two components. The "Hardware Pack":https://wiki.linaro.org/HardwarePacks, which contains the kernel, boot loader and/or Device Tree blob and a Root file system (RootFS) of your choice to generate an image.
+
+The RootFS can be:
+
+* "Nano":http:// - a very small file system that support command prompt (no X)
+* "Developer":http://linktodveloper - a very small file system like the nano but with basic X support
+* "ALIP":http:linktoALIP (ARM Linux Internet Platform) - A medium sized file system with full "LXDE":http://lxde.org/ light graphical desktop environment
+* "Ubuntu":http://linktoubunturootfs - A full fledged file system based on the Ubuntu 12.04 Desktop environment
+
+?? Need to see if 12.10 is based off the 12.10 or the 12.05 FS ??
+
+h3. Install Linaro Image Tools
+
+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: Building from source.
+
+bc. wget http://releases.linaro.org/12.10/components/platform/linaro-image-tools/linaro-image-tools-2012.10.1.tar.gz
+
+h2. Create a 2GB image file
+
+RTSM will only deal with file systems up to 2GB in size, however the pre-built image for Ubuntu requires a 4GB filesystem. Therefore we will build our own image using the pre-built artifacts, as obtained in the Binary Image Installation tab on this page.
+
+?? I am afraid I don't follow. Can we make this clearer. Instead of "However" shouldn't we say that we can't use the Ubuntu file system? ??
+
+We use a "nano":https://wiki.linaro.org/Platform/DevPlatform/Nano RootFS for this example, however, you could use other RootFS types, as mentioned above, so long as you can install it to a 2GB file. Note, you will also need the @boot.tar.bz2@ file from the Android release.
+
+Using the following command, you will download the nano RootFS, the hardware back and the boot.tar.gz you need from the Android build.
+
+bc.
+ wget \
+ http://releases.linaro.org/12.09/ubuntu/precise-images/nano/linaro-precise-nano-20120923-417.tar.gz \
+ http://releases.linaro.org/12.09/ubuntu/vexpress/hwpack_linaro-vexpress_20120925-322_armhf_supported.tar.gz \
+ http://releases.linaro.org/12.09/android/images/vexpress-jb-gcc47-armlt-tracking-open/boot.tar.bz2
+
+Now you need to create the image using the following commands.
+
+bc.
+ sudo linaro-media-create \
+ --dev vexpress \
+ --rootfs ext4 \
+ --image-file linaro.img \
+ --image-size 2000M \
+ --hwpack-force-yes \
+ --binary linaro-precise-nano-20120923-417.tar.gz \
+ --hwpack hwpack_linaro-vexpress_20120925-322_armhf_supported.tar.gz
+
+bc.
+ sudo kpartx -a linaro.img
+ mkdir boot
+ sudo mount /dev/mapper/loop0p1 boot
+ cp boot/uImage .
+ cp boot/uInitrd .
+ sudo umount boot
+ tar jxvf boot.tar.bz2
+
+h2. Run A15x4 model
+
+This example shows how to run the Linaro kernel on a quad core A15 RTSM model:
+
+bc.
+ RTSM_MODEL=$HOME/ARM/RTSM/Linux64_RTSM_VE_Cortex-A15x4/RTSM_VE_Cortex-A15x4
+ RTSM_BOOTWRAPPER=boot/rtsm/linux-system-semi.axf
+ RTSM_MMC=linaro.img
+ RTSM_KERNEL=uImage
+ RTSM_DTB=boot/rtsm/rtsm_ve-ca15x4.dtb
+ RTSM_INITRD=uInitrd
+ RTSM_CMDLINE="console=ttyAMA0,115200n8 root=/dev/mmcblk0p2 rootwait ro mem=1024M ip=dhcp"
+
+bc.
+ $RTSM_MODEL \
+ $RTSM_BOOTWRAPPER \
+ -C motherboard.smsc_91c111.enabled=1 \
+ -C motherboard.hostbridge.userNetworking=1 \
+ -C motherboard.mmc.p_mmc_file="$RTSM_MMC" \
+ -C cluster.cpu0.semihosting-cmd_line="--kernel $RTSM_KERNEL --dtb $RTSM_DTB --initrd $RTSM_INITRD -- $RTSM_CMDLINE"
+
+h2. Run A15x4-A7x4 model
+
+This example shows how to run the Linaro kernel on a big.LITTLE RTSM model:
+
+bc.
+ RTSM_MODEL=$HOME/ARM/RTSM/Linux64_RTSM_VE_Cortex-A15x4-A7x4/RTSM_VE_Cortex-A15x4-A7x4
+ RTSM_BOOTWRAPPER=boot/rtsm/linux-system-semi.axf
+ RTSM_MMC=linaro.img
+ RTSM_KERNEL=uImage
+ RTSM_DTB=boot/rtsm/rtsm_ve-ca15x4-ca7x4.dtb
+ RTSM_INITRD=uInitrd
+ RTSM_CMDLINE="console=ttyAMA0,115200n8 root=/dev/mmcblk0p2 rootwait ro mem=1024M ip=dhcp"
+
+bc.
+ $RTSM_MODEL \
+ -a coretile.cluster0.*=$RTSM_BOOTWRAPPER \
+ -a coretile.cluster1.*=$RTSM_BOOTWRAPPER \
+ -C motherboard.smsc_91c111.enabled=1 \
+ -C motherboard.hostbridge.userNetworking=1 \
+ -C motherboard.mmc.p_mmc_file=$RTSM_MMC \
+ -C coretile.dualclustersystemconfigurationblock.CFG_ACTIVECLUSTER=0x3 \
+ -C coretile.cluster0.cpu0.semihosting-enable=1 \
+ -C coretile.cluster0.cpu0.semihosting-cmd_line="--kernel $RTSM_KERNEL --dtb $RTSM_DTB --initrd $RTSM_INITRD -- $RTSM_CMDLINE"