diff options
author | Ryan Harkin <ryan.harkin@linaro.org> | 2014-06-24 14:12:31 +0100 |
---|---|---|
committer | Ryan Harkin <ryan.harkin@linaro.org> | 2014-06-24 14:12:31 +0100 |
commit | 8b12d61652c17d80274b44541092045cb4505e12 (patch) | |
tree | f051a9faeae2bb1541c10d61b978dd529644fc03 /android/images | |
parent | 03c5d2513cea8746afe01ccfdb9aba80871a313e (diff) |
14.06: Add FVP Android release notes from Vishal
Added FVP Android and Juice release notes from a tar emailed by Vishal.
Signed-off-by: Ryan Harkin <ryan.harkin@linaro.org>
Diffstat (limited to 'android/images')
6 files changed, 776 insertions, 0 deletions
diff --git a/android/images/armv8-android-fvp-lsk/HOWTO_getsourceandbuild.txt b/android/images/armv8-android-fvp-lsk/HOWTO_getsourceandbuild.txt new file mode 100644 index 0000000..e28238f --- /dev/null +++ b/android/images/armv8-android-fvp-lsk/HOWTO_getsourceandbuild.txt @@ -0,0 +1,142 @@ +Instructions for "https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-android-fvp-lsk-14.06-release/":https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-android-fvp-lsk-14.06-release/ + +h2. Prerequisites + +To clone the sources you must be able to ssh to git.linaro.org and be part of the big-little-switcher-private group. Contact "Philip Colmer" <philip.colmer@linaro.org> for access requests. + +h2. How to download and build Android sources + +Recommended method to do a linaro android build is to use linaro android build script(linaro_android_build_cmds.sh). You can download this script from the Downloads section of the build page. Use this script to do a complete ARMv8 Android build for FVP models from scratch. If you prefer to do it manuaaly then follow the "Get the source" and "Build" instructions below. + +h3. Get the source +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc openjdk-7-jdk openjdk-7-jre vim-common python-parted python-yaml wget uuid-dev + $ curl "https://android.git.linaro.org/gitweb?p=tools/repo.git;a=blob_plain;f=repo;hb=refs/heads/stable" > repo + $ chmod +x repo + $ ./repo init -u ssh://$USER@linaro-private.git.linaro.org/srv/linaro-private.git.linaro.org/android/manifest.git -b linaro-android-14.06-release -m armv8-android-fvp-lsk.xml + $ sed -i "s/linaro-big-little-switcher-bot/$USER/" .repo/manifest.xml + $ ./repo sync # this may take some time +</pre> + +h3. Build +<pre> + $ export CPUS=`grep -c processor /proc/cpuinfo` + $ export TARGET_PRODUCT=vexpress + $ export TARGET_BUILD_VARIANT=eng + $ export USE_LINARO_TOOLCHAIN=true + $ . build/envsetup.sh + $ make -j${CPUS} boottarball systemtarball userdatatarball +</pre> + +h2. Get linaro image tools + +Run these commands to get all the dependencies for linaro-image-tools +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools +</pre> +You can also use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git + +h2. Create mmc image for ARM FVP Base AEMv8 models + +Run linaro image tools + +pre. $ linaro-android-media-create --image_file mmc.bin --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --image_file mmc.bin --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +h2. Extract the preboot files + +pre. tar -jxvf boot.tar.bz2 + +h2. Setup the runtime environment + +<pre> + $ export ARMLMD_LICENSE_FILE="8224@localhost" + $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org +</pre> + +h2. Running the models (verified on FVP Base model build 5602) + +<pre> + $ cd boot + $ /path/to/FVP_Base_AEMv8A-AEMv8A/models/Linux64_GCC-4.1/FVP_Base_AEMv8A-AEMv8A \ + -C pctl.startup=0.0.0.0 \ + -C bp.secure_memory=0 \ + -C cluster0.NUM_CORES=1 \ + -C cluster1.NUM_CORES=1 \ + -C cache_state_modelled=0 \ + -C bp.pl011_uart0.untimed_fifos=1 \ + -C bp.secureflashloader.fname=bl1.bin \ + -C bp.flashloader0.fname=fvp_fip.bin \ + -C bp.virtioblockdevice.image_path=mmc.bin +</pre> + +h3. Console redirection + +To redirect the console open a terminal and run + +pre. telnet 127.0.0.1 5000 + +h3. Set UEFI configuration, update kernel/ramdisk path and bootargs + +Stop the UEFI boot process and configure it for FVP models: + +<pre> +$ telnet 127.0.0.1 -debug 5000 -e ^z +Telnet escape character is 'b'. +Telnet escape character is '^Z'. +Trying 127.0.0.1... +setsockopt (SO_DEBUG): Permission denied +Connected to 127.0.0.1. +Escape character is '^Z'. + 7 seconds +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 3 +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 2 +[1] Linaro disk image on virtio +Update entry: 1 +File path of the EFI Application or the kernel: kernel +Has FDT support? [y/n] y +Add an initrd: [y/n] y +File path of the initrd: ramdisk.img +Arguments to pass to the binary: console=ttyAMA0 earlyprintk=pl011,0x1c090000 amba-clcd.mode=VGA +Description for this new Entry: Linaro disk image on virtio +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 5 +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 1 + PEI 1122 ms + DXE 259 ms + BDS 8 ms +Total Time = 1390 ms + +[ 0.000000] Initializing cgroup subsys cpu +[ 0.000000] Linux version 3.10.40-04438-g6a78140 (pundiramit@flying-dutchman) (gcc version 4.9 20140514 (prerelease) (GCC) ) #1 SMP Mon Jun 2 14:50:25 IST 2014 +</pre> + +h3. Black screen + +The boot screen has been disabled to speed up booting. This means you may not see anything on the CLCD terminal for a while depending on the performance of the machine the model is running on. For example a first boot on a 2 GHz machine with 32 GB of RAM took 20 minutes. Subsequent boots should take approximately half the time to boot. + +h3. Attach ADB + +ADB on FVP Base models are supported over network. Follow the instructions here https://wiki.linaro.org/Internal/Projects/Juice/SetupNetworkingOnModelsUsingBridges to setup networking and use adb. diff --git a/android/images/armv8-android-fvp-lsk/HOWTO_install.txt b/android/images/armv8-android-fvp-lsk/HOWTO_install.txt new file mode 100644 index 0000000..8865ba1 --- /dev/null +++ b/android/images/armv8-android-fvp-lsk/HOWTO_install.txt @@ -0,0 +1,132 @@ +Instructions for "https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-android-fvp-lsk/":https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-android-fvp-lsk/ + +h2. Prerequisites + +h3. Get artifacts + +To get the build artifacts you must be part of the linaro-android-restricted launchpad group. Contact "Philip Colmer" <philip.colmer@linaro.org> for access requests. + +h3. Run the build + +You'll need the latest ARM FVP Base models and a license to use the models. Follow the instructions at https://collaborate.linaro.org/display/ITS/FlexLM+and+Fast+Models for the same. + +h2. Get artifacts + +Scroll down and click on 'Downloads' + +Click on each link to download: +* boot.tar.bz2 +* system.tar.bz2 +* userdata.tar.bz2 + +h2. Get linaro image tools + +Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools + +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools +</pre> +You can also use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git + +h2. Create mmc image for the ARM FVP Base AEMv8 models + +Run linaro image tools + +pre. $ linaro-android-media-create --image_file mmc.bin --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --image_file mmc.bin --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +h2. Extract the preboot files + +pre. tar -jxvf boot.tar.bz2 + +h2. Setup the runtime environment + +<pre> + $ export ARMLMD_LICENSE_FILE="8224@localhost" + $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org & +</pre> + +h2. Running the models (verified on FVP Base model build 5602) + +<pre> + $ cd boot/ + $ /path/to/FVP_Base_AEMv8A-AEMv8A/models/Linux64_GCC-4.1/FVP_Base_AEMv8A-AEMv8A \ + -C pctl.startup=0.0.0.0 \ + -C bp.secure_memory=0 \ + -C cluster0.NUM_CORES=1 \ + -C cluster1.NUM_CORES=1 \ + -C cache_state_modelled=0 \ + -C bp.pl011_uart0.untimed_fifos=1 \ + -C bp.secureflashloader.fname=bl1.bin \ + -C bp.flashloader0.fname=fvp_fip.bin \ + -C bp.virtioblockdevice.image_path=mmc.bin +</pre> + +h3. Console redirection + +To redirect the console open a terminal and run + +pre. telnet 127.0.0.1 5000 + +h3. Set UEFI configuration, update kernel/ramdisk path and bootargs + +Stop the UEFI boot process and configure it for FVP models: + +<pre> +$ telnet 127.0.0.1 -debug 5000 -e ^z +Telnet escape character is 'b'. +Telnet escape character is '^Z'. +Trying 127.0.0.1... +setsockopt (SO_DEBUG): Permission denied +Connected to 127.0.0.1. +Escape character is '^Z'. + 7 seconds +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 3 +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 2 +[1] Linaro disk image on virtio +Update entry: 1 +File path of the EFI Application or the kernel: kernel +Has FDT support? [y/n] y +Add an initrd: [y/n] y +File path of the initrd: ramdisk.img +Arguments to pass to the binary: console=ttyAMA0 earlyprintk=pl011,0x1c090000 amba-clcd.mode=VGA +Description for this new Entry: Linaro disk image on virtio +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 5 +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 1 + PEI 1122 ms + DXE 259 ms + BDS 8 ms +Total Time = 1390 ms + +[ 0.000000] Initializing cgroup subsys cpu +[ 0.000000] Linux version 3.10.40-04438-g6a78140 (pundiramit@flying-dutchman) (gcc version 4.9 20140514 (prerelease) (GCC) ) #1 SMP Mon Jun 2 14:50:25 IST 2014 +</pre> + +h3. Black screen + +The boot screen has been disabled to speed up booting. This means you may not see anything on the CLCD terminal for a while depending on the performance of the machine the model is running on. For example a first boot on a 2 GHz machine with 32 GB of RAM took 20 minutes. Subsequent boots should take approximately half the time to boot. + +h3. Attach ADB + +ADB on FVP Base models are supported over network. Follow the instructions here https://wiki.linaro.org/Internal/Projects/Juice/SetupNetworkingOnModelsUsingBridges to setup networking and use adb. diff --git a/android/images/armv8-android-fvp-lsk/HOWTO_prebuilt.txt b/android/images/armv8-android-fvp-lsk/HOWTO_prebuilt.txt new file mode 100644 index 0000000..f699a3e --- /dev/null +++ b/android/images/armv8-android-fvp-lsk/HOWTO_prebuilt.txt @@ -0,0 +1,69 @@ +Instructions for https://android-build.linaro.org/builds/~linaro-android/<BUILD_NAME>/ + += Get artifacts = + + Scroll down to the 'Downloads' section + + Click on each link to download: + boot.tar.bz2 + system.tar.bz2 + userdata.tar.bz2 + += Get linaro image tools = + + Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools + + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools + + If you're using a released build (with a -release or from releases.linaro.org), skip this step. + If you're using a "tip" build do not skip the step and do the following: + + $ sudo apt-get install bzr + $ bzr branch lp:linaro-image-tools + += Create media (SD card) = + + Disable automount (instructions provided for Gnome) + + $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) + $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) + $ dconf write /org/gnome/desktop/media-handling/automount false + $ dconf write /org/gnome/desktop/media-handling/automount-open false + + Insert an SD card + + Run 'dmesg' + + $ dmesg + + Look for a line that looks like the following at the end of the log + + [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > + + WARNING: In the next step, make sure you use /dev/"whatever you see above". + You can erase your hard drive with the wrong parameter. + + Run linaro image tools + + $ linaro-android-media-create --mmc /dev/sdc --dev <BOARD> --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + + If you're using tip of linaro image tools + + $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev <BOARD> --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + + To find <BOARD> run linaro-android-media-create with a -h and read the help. + + Restore automount + + $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 + $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 + + Remove the SD card from the device writer and plug it into the board. + += Check console output = + + Plug in an USB-to-serial converter and run minicom + + $ minicom -D /dev/ttyUSB0 -w -C minicom.txt diff --git a/android/images/armv8-juice-fvp-lsk/HOWTO_getsourceandbuild.txt b/android/images/armv8-juice-fvp-lsk/HOWTO_getsourceandbuild.txt new file mode 100644 index 0000000..c256e4b --- /dev/null +++ b/android/images/armv8-juice-fvp-lsk/HOWTO_getsourceandbuild.txt @@ -0,0 +1,186 @@ +Instructions for "https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-juice-lsk-14.06-release/":https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-juice-lsk-14.06-release/ + +h2. Prerequisites + +To clone the sources you must be able to ssh to git.linaro.org and be part of the big-little-switcher-private group. Contact "Philip Colmer" <philip.colmer@linaro.org> for access requests. + +h2. How to download and build Android sources + +Recommended method to do a linaro android build is to use linaro android build script(linaro_android_build_cmds.sh). You can download this script from the Downloads section of the build page. Use this script to do a complete ARMv8 Android build for FVP models from scratch. If you prefer to do it manuaaly then follow the "Get the source" and "Build" instructions below. + +h3. Get the source +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc openjdk-7-jdk openjdk-7-jre vim-common python-parted python-yaml wget uuid-dev + $ curl "https://android.git.linaro.org/gitweb?p=tools/repo.git;a=blob_plain;f=repo;hb=refs/heads/stable" > repo + $ chmod +x repo + $ ./repo init -u ssh://$USER@linaro-private.git.linaro.org/srv/linaro-private.git.linaro.org/android/manifest.git -b linaro-android-14.06-release -m armv8-juice-lsk.xml + $ sed -i "s/linaro-big-little-switcher-bot/$USER/" .repo/manifest.xml + $ ./repo sync # this may take some time +</pre> + +h3. Build +<pre> + $ export CPUS=`grep -c processor /proc/cpuinfo` + $ export TARGET_PRODUCT=juice + $ export TARGET_BUILD_VARIANT=eng + $ . build/envsetup.sh + $ make -j${CPUS} boottarball systemtarball userdatatarball +</pre> + +h2. Get linaro image tools + +Run these commands to get all the dependencies for linaro-image-tools +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools +</pre> +You can also use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git + +h2. How to run Juice images on FVP models + +h3. Create mmc image to be used on ARM FVP Base AEMv8 models + +Run linaro image tools + +pre. $ linaro-android-media-create --image_file mmc.img --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --image_file mmc.img --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +h3. Extract the preboot files + +pre. tar -jxvf boot.tar.bz2 + +h3. Setup the runtime environment + +<pre> + $ export ARMLMD_LICENSE_FILE="8224@localhost" + $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org +</pre> + +h3. Running the models (verified on FVP Base model build 5602) + +<pre> + $ cd boot + $ /path/to/FVP_Base_AEMv8A-AEMv8A/models/Linux64_GCC-4.1/FVP_Base_AEMv8A-AEMv8A \ + -C pctl.startup=0.0.0.0 \ + -C bp.secure_memory=0 \ + -C cluster0.NUM_CORES=1 \ + -C cluster1.NUM_CORES=1 \ + -C cache_state_modelled=0 \ + -C bp.pl011_uart0.untimed_fifos=1 \ + -C bp.secureflashloader.fname=fvp_bl1.bin \ + -C bp.flashloader0.fname=fvp_fip.bin \ + -C bp.virtioblockdevice.image_path=mmc.img +</pre> + +h3. Console redirection + +To redirect the console open a terminal and run + +pre. telnet 127.0.0.1 5000 + +h3. Set UEFI configuration, update kernel/ramdisk path and bootargs + +Stop the UEFI boot process and configure it for FVP models: + +<pre> +$ telnet 127.0.0.1 -debug 5000 -e ^z +Telnet escape character is 'b'. +Telnet escape character is '^Z'. +Trying 127.0.0.1... +setsockopt (SO_DEBUG): Permission denied +Connected to 127.0.0.1. +Escape character is '^Z'. + 7 seconds +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 3 +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 2 +[1] Linaro disk image on virtio +Update entry: 1 +File path of the EFI Application or the kernel: kernel +Has FDT support? [y/n] y +Add an initrd: [y/n] y +File path of the initrd: ramdisk.img +Arguments to pass to the binary: console=ttyAMA0 earlyprintk=pl011,0x1c090000 amba-clcd.mode=VGA +Description for this new Entry: Linaro disk image on virtio +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 5 +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 1 + PEI 1122 ms + DXE 259 ms + BDS 8 ms +Total Time = 1390 ms + +[ 0.000000] Initializing cgroup subsys cpu +[ 0.000000] Linux version 3.10.40-04438-g6a78140 (pundiramit@flying-dutchman) (gcc version 4.9 20140514 (prerelease) (GCC) ) #1 SMP Mon Jun 2 14:50:25 IST 2014 +</pre> + +h3. Black screen + +The boot screen has been disabled to speed up booting. This means you may not see anything on the CLCD terminal for a while depending on the performance of the machine the model is running on. For example a first boot on a 2 GHz machine with 32 GB of RAM took 20 minutes. Subsequent boots should take approximately half the time to boot. + +h3. Attach ADB + +ADB on FVP Base models are supported over network. Follow the instructions here https://wiki.linaro.org/Internal/Projects/Juice/SetupNetworkingOnModelsUsingBridges to setup networking and use adb. + +h2. How to run Juice images on Juno + +h3. Plug in the USB stick and flash Juice images on that USB device + +Run 'dmesg' and find out correct USB /dev node. + +pre. $ dmesg + +Look for a line that looks like the following at the end of the log + +pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > + +WARNING: In the next step, make sure you use /dev/"whatever you see above". + You can erase your hard drive with the wrong parameter. + +Run linaro image tools + +pre. $ linaro-android-media-create --mmc /dev/sdX --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdX --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + +Now unplug the USB stick and connect it to Juno and boot from it. + +h3. Configure Juno boot time UEFI configuration + +Copy Preboot firmwares (bl1.bin and fip.bin) from boot.tar.bz2 to <firmware_partition>/SOFTWARE/. Stop at UEFI prompt and change few parameters shown below + +<pre> +Select USB device's boot partition to boot from while "Selecting the boot device". +Change kernel in UEFI to "kernel" in the boot partition +Change ramdisk in UEFI to "ramdisk.img" in the boot partition +Change bootargs to "console=ttyAMA0,115200 earlyprintk=pl011,0x7ff80000" +</pre> +Note: There is a bug in UEFI where you won't see USB disk partitions while selecting the boot device. You have to press ESCAPE at "Select the boot device" menu item and then continue. + +It should get your Juno board up and running. + +h3. Attach ADB + +ADB on Juno is supported over network. Follow the instructions here https://wiki.linaro.org/Platform/Android/SetupAdbOverTcp to connect adb over network. diff --git a/android/images/armv8-juice-fvp-lsk/HOWTO_install.txt b/android/images/armv8-juice-fvp-lsk/HOWTO_install.txt new file mode 100644 index 0000000..0aeb8dc --- /dev/null +++ b/android/images/armv8-juice-fvp-lsk/HOWTO_install.txt @@ -0,0 +1,178 @@ +Instructions for "https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-juice-lsk/":https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-juice-lsk/ + +h2. Prerequisites + +h3. Get artifacts + +To get the build artifacts you must be part of the linaro-android-restricted launchpad group. Contact "Philip Colmer" <philip.colmer@linaro.org> for access requests. + +h3. Run the build + +You'll need the latest ARM FVP Base models and a license to use the models. Follow the instructions at https://collaborate.linaro.org/display/ITS/FlexLM+and+Fast+Models for the same. + +h2. Get artifacts + +Scroll down and click on 'Downloads' + +Click on each link to download: +* boot.tar.bz2 +* system.tar.bz2 +* userdata.tar.bz2 + +h2. Get linaro image tools + +Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools + +<pre> + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools +</pre> + +You can also use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git + +h2. How to run Juice images on FVP models + +h3. Create mmc image to be used on ARM FVP Base AEMv8 models + +Run linaro image tools + +pre. $ linaro-android-media-create --image_file mmc.img --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --image_file mmc.img --image_size 2000M --dev vexpress --system system.tar.bz2 --userdata userdata.tar.bz2 --boot boot.tar.bz2 + +h3. Extract the preboot files + +pre. tar -jxvf boot.tar.bz2 + +h3. Setup the runtime environment + +<pre> + $ export ARMLMD_LICENSE_FILE="8224@localhost" + $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org +</pre> + +h3. Running the models (verified on FVP Base model build 5602) + +<pre> + $ cd boot + $ /path/to/FVP_Base_AEMv8A-AEMv8A/models/Linux64_GCC-4.1/FVP_Base_AEMv8A-AEMv8A \ + -C pctl.startup=0.0.0.0 \ + -C bp.secure_memory=0 \ + -C cluster0.NUM_CORES=1 \ + -C cluster1.NUM_CORES=1 \ + -C cache_state_modelled=0 \ + -C bp.pl011_uart0.untimed_fifos=1 \ + -C bp.secureflashloader.fname=fvp_bl1.bin \ + -C bp.flashloader0.fname=fvp_fip.bin \ + -C bp.virtioblockdevice.image_path=mmc.img +</pre> + +h3. Console redirection + +To redirect the console open a terminal and run + +pre. telnet 127.0.0.1 5000 + +h3. Set UEFI configuration, update kernel/ramdisk path and bootargs + +Stop the UEFI boot process and configure it for FVP models: + +<pre> +$ telnet 127.0.0.1 -debug 5000 -e ^z +Telnet escape character is 'b'. +Telnet escape character is '^Z'. +Trying 127.0.0.1... +setsockopt (SO_DEBUG): Permission denied +Connected to 127.0.0.1. +Escape character is '^Z'. + 7 seconds +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 3 +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 2 +[1] Linaro disk image on virtio +Update entry: 1 +File path of the EFI Application or the kernel: kernel +Has FDT support? [y/n] y +Add an initrd: [y/n] y +File path of the initrd: ramdisk.img +Arguments to pass to the binary: console=ttyAMA0 earlyprintk=pl011,0x1c090000 amba-clcd.mode=VGA +Description for this new Entry: Linaro disk image on virtio +[1] Add Boot Device Entry +[2] Update Boot Device Entry +[3] Remove Boot Device Entry +[4] Update FDT path +[5] Return to main menu +Choice: 5 +[1] Linaro disk image on virtio +[2] Shell +[3] Boot Manager +Start: 1 + PEI 1122 ms + DXE 259 ms + BDS 8 ms +Total Time = 1390 ms + +[ 0.000000] Initializing cgroup subsys cpu +[ 0.000000] Linux version 3.10.40-04438-g6a78140 (pundiramit@flying-dutchman) (gcc version 4.9 20140514 (prerelease) (GCC) ) #1 SMP Mon Jun 2 14:50:25 IST 2014 +</pre> + +h3. Black screen + +The boot screen has been disabled to speed up booting. This means you may not see anything on the CLCD terminal for a while depending on the performance of the machine the model is running on. For example a first boot on a 2 GHz machine with 32 GB of RAM took 20 minutes. Subsequent boots should take approximately half the time to boot. + +h3. Attach ADB + +ADB on FVP Base models is supported over network. Follow the instructions here https://wiki.linaro.org/Internal/Projects/Juice/SetupNetworkingOnModelsUsingBridges to setup networking and use adb on FAST models. + +h2. How to run Juice images on Juno + +h3. Plug in the USB stick and flash Juice images on that USB device + +Run 'dmesg' and find out correct USB /dev node. + +pre. $ dmesg + +Look for a line that looks like the following at the end of the log + +pre. [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > + +WARNING: In the next step, make sure you use /dev/"whatever you see above". + You can erase your hard drive with the wrong parameter. + +Run linaro image tools + +pre. $ linaro-android-media-create --mmc /dev/sdX --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + +If you're using tip of linaro image tools + +pre. $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdX --dev vexpress --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + +Now unplug the USB stick and connect it to Juno and boot from it. + +h3. Configure Juno boot time UEFI configuration + +Copy Preboot firmwares (bl1.bin and fip.bin) from boot.tar.bz2 to <firmware_partition>/SOFTWARE/. Stop at UEFI prompt and change few parameters shown below + +<pre> +Select USB device's boot partition to boot from while "Selecting the boot device". +Change kernel in UEFI to "kernel" in the boot partition +Change ramdisk in UEFI to "ramdisk.img" in the boot partition +Change bootargs to "console=ttyAMA0,115200 earlyprintk=pl011,0x7ff80000" +</pre> +Note: There is a bug in UEFI where you won't see USB disk partitions while selecting the boot device. You have to press ESCAPE at "Select the boot device" menu item and then continue. + +It should get your Juno board up and running. + +h3. Attach ADB + +ADB on Juno is supported over network. Follow the instructions here https://wiki.linaro.org/Platform/Android/SetupAdbOverTcp to connect adb over network. diff --git a/android/images/armv8-juice-fvp-lsk/HOWTO_prebuilt.txt b/android/images/armv8-juice-fvp-lsk/HOWTO_prebuilt.txt new file mode 100644 index 0000000..f699a3e --- /dev/null +++ b/android/images/armv8-juice-fvp-lsk/HOWTO_prebuilt.txt @@ -0,0 +1,69 @@ +Instructions for https://android-build.linaro.org/builds/~linaro-android/<BUILD_NAME>/ + += Get artifacts = + + Scroll down to the 'Downloads' section + + Click on each link to download: + boot.tar.bz2 + system.tar.bz2 + userdata.tar.bz2 + += Get linaro image tools = + + Run these commands to get all the dependencies for linaro-image-tools and the tip of linaro-image-tools + + $ sudo add-apt-repository ppa:linaro-maintainers/tools + $ sudo apt-get update + $ sudo apt-get install linaro-image-tools + + If you're using a released build (with a -release or from releases.linaro.org), skip this step. + If you're using a "tip" build do not skip the step and do the following: + + $ sudo apt-get install bzr + $ bzr branch lp:linaro-image-tools + += Create media (SD card) = + + Disable automount (instructions provided for Gnome) + + $ TMP1=$(dconf read /org/gnome/desktop/media-handling/automount) + $ TMP2=$(dconf read /org/gnome/desktop/media-handling/automount-open) + $ dconf write /org/gnome/desktop/media-handling/automount false + $ dconf write /org/gnome/desktop/media-handling/automount-open false + + Insert an SD card + + Run 'dmesg' + + $ dmesg + + Look for a line that looks like the following at the end of the log + + [288582.790722] sdc: sdc1 sdc2 sdc3 sdc4 < sdc5 sdc6 > + + WARNING: In the next step, make sure you use /dev/"whatever you see above". + You can erase your hard drive with the wrong parameter. + + Run linaro image tools + + $ linaro-android-media-create --mmc /dev/sdc --dev <BOARD> --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + + If you're using tip of linaro image tools + + $ ./linaro-image-tools/linaro-android-media-create --mmc /dev/sdc --dev <BOARD> --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 + + To find <BOARD> run linaro-android-media-create with a -h and read the help. + + Restore automount + + $ dconf write /org/gnome/desktop/media-handling/automount $TMP1 + $ dconf write /org/gnome/desktop/media-handling/automount-open $TMP2 + + Remove the SD card from the device writer and plug it into the board. + += Check console output = + + Plug in an USB-to-serial converter and run minicom + + $ minicom -D /dev/ttyUSB0 -w -C minicom.txt |