Name | Last modified | Size | License | |
---|---|---|---|---|
Parent Directory | ||||
MANIFEST | 12-Jan-2018 21:24 | 253 | open | |
MD5SUMS | 12-Jan-2018 21:24 | 285 | open | |
boot.tar.bz2 | 12-Jan-2018 21:24 | 5.8M | open | |
installed-files.txt | 12-Jan-2018 21:24 | 78.9K | open | |
kernel_config | 12-Jan-2018 21:24 | 69.4K | open | |
linaro_android_build_cmds.sh | 12-Jan-2018 21:24 | 8.4K | open | |
pinned-manifest.xml | 12-Jan-2018 21:24 | 89.1K | open | |
ramdisk.img | 12-Jan-2018 21:25 | 812.5K | open | |
source-manifest.xml | 12-Jan-2018 21:25 | 48.5K | open | |
system.img | 26-Feb-2018 21:19 | 750.0M | open | |
system.tar.bz2 | 26-Feb-2018 21:20 | 257.5M | open | |
userdata.img | 26-Feb-2018 21:20 | 550.0M | open | |
userdata.tar.bz2 | 26-Feb-2018 21:20 | 44.3M | open |
About the Linaro Confectionary Release for FVP (Multi-arch 64-bit)
The Linaro Confectionary release is based on the AOSP Lollipop Android-5.0.2_r1 version. The build contains multi-arch support allowing full use of the 64-bit ARMv8-A architecture and supports both 64-bit and 32-bit applications, and have selinux enabled by default. Java-only applications will run as 64-bit in the supplied configuration with no modification. The release uses the kernel from Linaro ARM Landing team which is based on Android flavour of Linaro Stable Kernel version 3.10, and with all necessary android configs. The sources are built using Android AOSP GCC version 4.9 for 64bit and Android (AOSP) GCC 4.8 for 32bit. To disable SELinux pass “selinux=0” as the boot parameter in the UEFI bootargs configuration.
The Android AOSP software provided in this release is functionally tested with CTS version 5.0 and the CTS results are shared with members. The BIONIC component is validated with Android BIONIC tests. Android Monkey tests were run for stress testing. Multi-arch support has been validated using examples provided in Android NDK.
Sources are also made available so you can build your own images (see the Building from Source tab).
What is new
- Android source changed to based on the Lollipop Android-5.0.2_r1 version
- Change build variant default to userdebug
- Kernel has EFI enabled, less interactions at UEFI boot loader
- Verified with application-benchmark test on LAVA.
About the Android flavour of Linaro Stable Kernel (LSK)
The kernel used by Linaro Confectionary Release is based on the Android flavour of Linaro Stable Kernel (LSK), which is produced, validated and released by Linaro and is based on the Linux stable kernel tree. The LSK focuses on quality and stability and is therefore a great foundation for product development. It also includes backports of commonly desired features, provided they meet the quality requirements, and also any bug fixes.
Sources are also made available so you can build your own images (see the Building from Source).
Support
Subscribe to the important Linaro mailing lists and join our IRC channels to stay on top of Linaro development.
- Linaro Android Development ‘Mailing list’
- Linaro Android IRC channel on irc.freenode.net at #linaro-android
- Landing Team bug reports should be filed in ‘Bugzilla’ under linaro-android product and Linaro Confectionery Release component.
- You will need to login to your Linaro account. If you do not have an account or are having problems, email its@linaro.org for help.
- More general bug reports should be filed in Bugzilla against the individual packages that are affected.
- Questions? ‘ask linaro’
- Interested in commercial support? inquire at ‘Linaro Support’
Android Patch Summary
The following list of patches developed by ARM and Linaro engineering teams were applied to get Android booting to UI on the ARMv8-A Juno development platform. These patches can be found on Linaro’s Android Git repositories via file LOLLIPOP-STABLE-PATCHSET. Some of these patches have been submitted to AOSP and are being tracked for acceptance.
- add Android.mk file to make Bionic libc test integrated
- fix bootchart can not be triggered problem
- add policy rules for bootchart
- fixed the browser preference problem
Any patches can be contributed through the instructions described Here
Known Issues and Limitations
Known limitations
- SW rendering for user interface only – there is no hardware accelerated graphics
- Slow on high resolutions – we run on small screen size to avoid excessive delays
- Lack of audio support may cause apps using audio to hang
- HDLCD is not supported yet
- Has long time problem to run some CTS test package because of the performance thing
Known issues
The following known issues are present in this release. Please contact support@linaro.org if you wish to know more information about these issues or have access problems when attempting to view them.
Bug ID | Bug title | Bug summary |
Bug 1064 | FVP Kernel panic: comm dhcpcd: failed to insert inode 987: doubly allocated? | After have the kernel panic problem for the second boot |
Bug 993 | EVDEV failures in linaro android kernel test suite on 14.12 LCR build | Few EVDEV tests have always been failing for us |
Bug 224 | Corrupted png files can cause crashes in gallery | The stock Gallery application crashes when displaying known corrupt PNG files. |
Bug 222 | Dev Tools crashes on startup | Dev Tools app fails to instantiate com.android.development.Development class from /system/app/Development.apk |
Bug 64 | Test test_pthread_rwlock from bionic libc test suite fails on Juno build – LAVA | |
Bug 23 | backtrace_test reports failures on 64/64 build | Failures reported with local trace and threads |
Prerequisites
You’ll need latest ARM FVP Base models and a license to use the models. Follow the instructions at http://www.arm.com/products/tools/models/fast-models/foundation-model.php
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
You can also use the tip of linaro-image-tools from http://git.linaro.org/infrastructure/linaro-image-tools.git
Create mmc image 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
Running the models (verified on FVP Base model build 5602)
$ tar -jxvf boot.tar.bz2 $ 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=4 \ -C cluster1.NUM_CORES=4 \ -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
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.
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.
Get the source
$ 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 git://android.git.linaro.org/platform/manifest.git -b linaro-android-15.01-release -m armv8-android-fvp-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
$ export USE_LINARO_TOOLCHAIN=true
$ . build/envsetup.sh
$ make -j${CPUS} boottarball systemtarball userdatatarball
Running the build on FVP models
Follow “Binary Image Installation” tab for instructions.