NameLast modifiedSizeLicense

Parent Directory Parent Directory
other MANIFEST 12-Jan-2018 19:43 246 open
other MD5SUMS 12-Jan-2018 19:43 193 open
application/x-tar boot.tar.bz2 12-Jan-2018 19:43 5.4M open
other kernel_config 12-Jan-2018 19:43 60.0K open
application/x-sh linaro_android_build_cmds.sh 12-Jan-2018 19:43 7.9K open
application/x-sh linaro_kernel_build_cmds.sh 12-Jan-2018 19:43 1.8K open
text pinned-manifest.xml 12-Jan-2018 19:43 71.7K open
other ramdisk.img 12-Jan-2018 19:43 964.5K open
text source-manifest.xml 12-Jan-2018 19:43 89.8K open
application/x-tar system.tar.bz2 26-Feb-2018 20:45 260.5M open
application/x-tar userdata.tar.bz2 26-Feb-2018 20:45 44.5M open


Instructions for https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-lsk/

Prerequisites

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.

Get artifacts

Scroll down and click on ‘Downloads’

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 binary for the ARM FVP Base AEMv8 models

Run 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

If you’re using tip of linaro image tools

$ ./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

Extract the preboot files

tar -jxvf boot.tar.bz2

Setup the runtime environment

  $ export ARMLMD_LICENSE_FILE="8224@localhost"
  $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org &

Running the models (verified on FVP Base model build 5502)

  $ 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

Console redirection

To redirect the console open a terminal and run

telnet 127.0.0.1 5000

Set UEFI configuration, update kernel/ramdisk path and bootargs

Stop the UEFI boot process and configure it for FVP models:


$ 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,0×1c090000 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

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.

Run the Android SDK

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.

You can also run all of the standard Android SDK tools. Learn more at http://developer.android.com/sdk/index.html

Instructions for https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-lsk/

Install build dependencies on Ubuntu:

  $ 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 uboot-mkimage openjdk-7-jdk openjdk-7-jre vim-common python-parted python-yaml wget uuid-dev iasl

You can also download linaro android build script(linaro_android_build_cmds.sh) from Downloads section at https://android-build.linaro.org/builds/~linaro-android-restricted/armv8-lsk to do a complete ARMv8 Android build for FVP models from scratch.

Get the source

  $ curl "http://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 git://android.git.linaro.org/platform/manifest.git -b linaro-android-14.11-release -g armv8-lsk.xml
  $ ./repo sync # this may take some time

Build

  $ export CPUS=`grep -c processor /proc/cpuinfo`
  $ export TARGET_PRODUCT=vexpress
  $ export TARGET_BUILD_VARIANT=eng
  $ . build/envsetup.sh
  $ make -j${CPUS} boottarball systemtarball userdatatarball

Get linaro image tools

Run these commands to get all the dependencies for 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 “tip” build then we suggest you use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git

Create binary for ARM FVP Base AEMv8 models

Run 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

If you’re using tip of linaro image tools

$ ./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

Extract the preboot files

tar -jxvf boot.tar.bz2

Setup the runtime environment

  $ export ARMLMD_LICENSE_FILE="8224@localhost"
  $ ssh -L 8224:localhost:8224 -L 18224:localhost:18224 -N $USER@flexlm.linaro.org

Running the models (verified on FVP Base model build 5502)

  $ 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

Console redirection

To redirect the console open a terminal and run

telnet 127.0.0.1 5000

Set UEFI configuration, update kernel/ramdisk path and bootargs

Stop the UEFI boot process and configure it for FVP models:


$ 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,0×1c090000 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

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.

Run the Android SDK

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.

You can also run all of the standard Android SDK tools. Learn more at http://developer.android.com/sdk/index.html