summaryrefslogtreecommitdiff
path: root/android/vexpress-lsk/HOWTO_getsourceandbuild.txt
diff options
context:
space:
mode:
authorRyan Harkin <ryan.harkin@linaro.org>2013-11-15 15:29:23 +0000
committerRyan Harkin <ryan.harkin@linaro.org>2013-11-15 15:29:23 +0000
commite8fb750558b8a69dd45a019687e5f43680c17917 (patch)
tree4c196d7048c66c5b3adf88b7954c22ef6a7beb66 /android/vexpress-lsk/HOWTO_getsourceandbuild.txt
parentec12bb048faee5f95288dadcdb2cb703775f4a2e (diff)
13.11: re-org file structure
Fathi has recommended a better file structure that also matches the server layout. The UEFI release notes may get moved into a separate repo. Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Diffstat (limited to 'android/vexpress-lsk/HOWTO_getsourceandbuild.txt')
-rw-r--r--android/vexpress-lsk/HOWTO_getsourceandbuild.txt103
1 files changed, 103 insertions, 0 deletions
diff --git a/android/vexpress-lsk/HOWTO_getsourceandbuild.txt b/android/vexpress-lsk/HOWTO_getsourceandbuild.txt
new file mode 100644
index 0000000..f2337f2
--- /dev/null
+++ b/android/vexpress-lsk/HOWTO_getsourceandbuild.txt
@@ -0,0 +1,103 @@
+h1. Accessing Source Code
+
+h2. Linaro Android JB Source Code
+
+Run the "linaro_android_build_cmds.sh":http://releases.linaro.org/13.10/android/vexpress-lsk/linaro_android_build_cmds.sh, it will download the entire source code for both Android JB and the kernel and attempt to build it.
+
+The pinned and source manifests can be found here:
+
+* "Pinned Manifest":http://releases.linaro.org/13.10/android/vexpress-lsk/pinned-manifest.xml ("?":https://wiki.linaro.org/Platform/Android/ReproduceABuildExactly)
+* "Source Manifest":http://releases.linaro.org/13.10/android/vexpress-lsk/source-manifest.xml
+
+h2. Kernel Source Code
+
+Obtain the exact *kernel source code* for this cycle by using the "linaro_kernel_build_cmds.sh":http://releases.linaro.org/13.10/android/vexpress-lsk/linaro_kernel_build_cmds.sh script to download the source and build it. You can get the kernel configuration from "here":http://releases.linaro.org/13.10/android/vexpress-lsk/kernel_config (listed above)
+
+h2. Compiling Linaro Android RootFS+Kernel
+
+The following simple steps download, install and compile a complete Linaro Android distribution
+
+* Download and install Ubuntu 12.04 64 bit or newer ("download":http://www.ubuntu.com)
+* Install the following packages:
+
+bc. sudo apt-get install zip curl flex bison build-essential git-core gnupg gperf zlib1g-dev libx11-dev x11proto-core-dev \
+gcc-multilib g++-multilib libc6-dev-i386 ia32-libs lib32z-dev gcc-4.5 g++-4.5 cpp-4.5 gcc-4.5-multilib g++-4.5-multilib \
+uboot-mkimage uuid-dev openjdk-6-jdk ant lib32ncurses5-dev xsltproc
+
+* Download the Android building script for this release from "here":http://releases.linaro.org/13.10/android/vexpress-lsk/linaro_android_build_cmds.sh or from the list of artifacts listed above.
+
+* Run the script
+
+bc. chmod a+x linaro_android_build_cmds.sh
+./linaro_android_build_cmds.sh
+
+h3. Installing Android JB on your board
+
+* Insert SD card and note the assigned @'/dev/sdX'@ or @'/dev/mmcblk0'@
+
+bc. dmesg | less
+
+Look for a line that looks like the following at the end of the log
+
+@[288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 <sdc5 sdc6 >@
+
+Or, if your machine uses '/dev/mmcblkX', you may see a line line this:
+
+@[10770.938042] mmcblk0: p1 p2 p3 p4 < p5 p6 >@
+
+*WARNING:* In the next step, make sure you use /dev/"whatever you see above". *You can erase your hard drive* with the wrong parameter.
+
+* Create media
+
+bc. cd android/out/target/product/
+sudo linaro-android-media-create --mmc /dev/sdX --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2
+
+* Insert the SD card into your Versatile Express board and reboot it
+
+p. If UEFI is already configured to boot a Linaro Android image, it will boot from the SD card. If not, follow the instructions in the section: "Configure UEFI":https://wiki.linaro.org/ARM/UEFI#Configure_UEFI found on the Linaro wiki.
+
+h2. Compiling and installing your Kernel
+
+h3. Prerequisites
+
+* Download and install Ubuntu 12.04 64 bit or newer ("download":http://www.ubuntu.com)
+* Install the following packages by typing:
+
+bc. sudo apt-get install gcc-arm-linux-gnueabi curl git libncurses5-dev
+
+* Create a working subdirectory
+* Download the auto build script for this release from the list of artifacts above (the kernel configuration will be automatically downloaded).
+* Run the build script
+
+bc. chmod a+x linaro_kernel_build_cmds.sh
+./linaro_kernel_build_cmds.sh
+
+*Note:* When you run menuconfig, make sure you go to @System Type -> Versatile Express@ platform type and make sure that both options are enabled.
+
+bc. [*] Versatile Express Cortex-A9x4 tile
+[*] Device Tree support for Versatile Express platforms
+
+This will mean that the same kernel will run on A5, A9, TC2 and various RTSM models.
+
+h1. Installing your kernel
+
+This section is common for both Android and OpenEmbedded
+
+* Create the Device Tree blob if you don’t have one in your Linaro image (note, the A9 Core Tile boots using an ATAGS kernel):
+
+bc. make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- dtbs
+
+* Insert the SD card containing the Linaro disk image
+* Copy the kernel onto the memory card
+
+bc. cp arch/arm/boot/uImage /media/boot/
+
+* Copy the device tree blob
+** For A9 CoreTile: no device tree blob is needed
+** For A5 CoreTile: @cp arch/arm/boot/vexpress-v2p-ca5s.dtb /media/boot/v2p-ca5s.dtb@
+** For A15 CoreTile (TC1): @cp arch/arm/boot/vexpress-v2p-ca15-tc1.dtb /media/boot/v2p-ca15-tc1.dtb@
+** For A15_A7 CoreTile: (TC2): @cp arch/arm/boot/vexpress-v2p-ca15_a7.dtb /media/boot/v2p-ca15-tc2.dtb@
+
+* Eject the memory card @eject /media/boot@
+
+* Insert the memory card into the Versatile Express board and power it on