"Vision is not enough, it must be combined with venture. It is not enough to stare up the steps, we must step up the stairs." ~Vaclav Havel
The Linaro 13.03 release is now available for download!
The 13.03 Linaro release highlights the focused efforts of all the Linaro Teams – Working Groups, Landing Teams and Platform Teams who have provided all the updates and new features that are integrated on top of Android, Ubuntu and OpenEmbedded during this release cycle. The vision of the future of Linux on ARM is brought into focus through the collaborative efforts of those dedicated to making the vision a reality one step and one release at a time. The 13.03 cycle contributions are numerous and continues to venture into new areas of the ARM ecosystem with each release.
13.03 was a exceptional cycle for the Linaro Android Team. There was a lot of planning done during the most recent Linaro Connect event in Hong Kong and some of those plans have already been put into action during this cycle. The initial bring up of Android for Arndale as an engineering platform is now complete and we now have a Tiny Android build for Arndale. Engineers should see an Android with GUI released for the 13.04 Linaro release cycle. The Origen-Quad build is now updated with the new bootloaders and the needed changes for linaro-image-tools have been completed. Bernhard Rosenkränzer, Android Engineer at Linaro did an exceptional job in making the current toolchain available natively inside Linaro Android builds. The builds now include gcc, g++, vim, make, a terminal emulator and a vi-friendly keyboard; however, compiling the kernel on the board itself has yet to be tried. The team encourages interested individuals to give a try and report any bugs. Axel Fagerstedt, Android Engineer at Linaro, did also excellent job in unifying all the different manifests with the groups feature. The team started with 17 manifests and have now come to 1 manifest supporting 8 different builds and one additional manifest for a member build. The released toolchains are now being checked into a prebuilts/ git repository and pulled in by the manifest as opposed to being downloaded as separate tarballs. This is the approach used by AOSP to distribute the toolchain. The Linaro Android Team have also enabled CTS in LAVA for 4.2. The support for CTS in lava-android-test was reworked for stability during the upgrade and as a result more than 99% of CTS tests are now passing for Galaxy Nexus with linaro-android build when tested manually with lava-android-test. CTS was enabled for the engineering builds; however, more investigation need to be done on CTS tests that are not getting executed in LAVA for these engineering builds.
The Linaro Kernel Working Group work for the 13.03 cycle includes depopulate the Exynos <mach-exynos/include-mach> directory, convert UX500 to common clk, refactor EHCI controller code, depopulate the UX500 and plat-nomadik <mach/*> and <plat/*>, Android alarm-dev compat_ioctl support updates, improvements to eMMC Power Management support.
On the Automation and Validation front, LAVA now supports Arndale booting with UEFI and the bootloader configuration is being done "on the fly".
The Linaro Graphics Team posted the following patches for acceptance upstream during the 13.03 release cycle. Version 10 of CMA-ION patches were posted by Benjamin Gaignard. Tom Gall updated and posted the Android piglit enablement patches for OpenGL ES 2 as well as Version 1 of variable-index-* shader-tests extended for Android and Linux. Version 1 of debugfs support for dma-buf was posted by Sumit Semwal and Version 9 of DRM FIMD DT support for Exynos4 DT machine was posted by Vikas Sajjan.
The Linaro Power Management Working Group has upstreamed the dynamic timer irq affinity--set up the timer irq affinity to the CPU concerned by the first timer expiration. The cpufreq driver for IKS is now optimized and analysis of HMP scheduler optimizations using bbench and their applicability to A15 SMP systems is now complete. Updates to sched include a modified timer and workqueue framework to allow migration to non-idle CPUs. Powerdebug was ported and now available on the Android platform.
The Linaro Toolchain Working Group had a busy 13.03 release cycle as well. Changes to the Toolchain binaries release include Linaro GCC being updated to GCC 4.7.2+svn196272, includes arm/aarch64-4.7-branch up to svn revision 196225. Linaro QEMU 2013.03 was also released earlier this cycle and is based off upstream (trunk) QEMU --1.4.0 release-- and includes a number of ARM-focused bug fixes and enhancements. Updates for this release include ARM KVM support patches which are in sync with the ABI as committed to the upstream Linux kernel for 3.9--note: this feature is still under development, but will no longer be subject to kernel-vs-userspace ABI breaks.
The Linaro Enterprise Group (LEG) announced that the initial GRUB port on ARM UEFI is now available and the tree can be found on https://code.launchpad.net/~leif-lindholm/linaro-grub/arm-uefi
We encourage everybody to use the 13.03 release. The download links for all images and components are available on our downloads page:
http://www.linaro.org/downloads/
See the detailed highlights of this release to get an overview of what has been accomplished by the Working Groups, Landing Teams and Platform Teams:
* Automation and Validation * A simple CLI tool for communicating with the CI dashboard has been developed * LAVA supports Arndale booting with UEFI. The bootloader configuration is done "on the fly" * Snowballs coming back online
* Builds and Baselines * linux-linaro-arndale Bringup * The initial bringup of Arndale as an engineering platform has been done. * Tiny Android build for Arndale setup. * Android with GUI release planned for the next cycle. * Origen-Quad Member build * The Origen-Quad build updated with the new bootloaders. * needed changes for linaro-image-tools were done. * Native Toolchain on Android * The toolchain is now available natively inside Linaro Android builds. * The builds now include gcc, g++, vim, make, a terminal emulator and a vi-friendly keyboard. * Unified manifest * Unifyied all the different manifests with the groups feature. * From 17 manifests to 2 manifests. * 1 manifest supporting 8 different build * one more manifest for one of the member build. * Details on how to work with common manifest can be found on https://wiki.linaro.org/Platform/Android/WorkWithCommonManifest * Restructure release toolchain * Released toolchains are checked into a prebuilts/ git repository and pulled in by the manifest as opposed to being downloaded as separate tarballs.This is the approach taken by AOSP to distribute the toolchain. * CTS Support in LAVA * CTS support for 4.2 reworked for better stability. * CTS has been enabled for the Engineering builds. * Investigations to be done next cycle on tests that are not getting executed. * Linux Linaro 3.9 2013.03 released * based off linux-linaro-core-tracking tree, llct-20130321.0 tag: * based off v3.9-rc3 * new huge TLB topic by Steve Capper * no kvm-arm-v* topic anymore - using the mainline kvm code * updated kvm-arm-configs topic * armdroid-ashmem and updated armdroid-binder topics by Serban Constantinescu * updated linaro-android-3.9 topic by John Stultz * gator version 5.13 * big-LITTLE-MP version master-v16 * tb-ethernet topic for Snowball from STE Landing Team to fix the on-board ethernet * updated Versatile Express patches from ARM LT * updated arndale/exynos patches from Samsung LT * a patch to enable perf in Android by Bernhard Rosenkraenzer * vexpress64 support (both RTSM and Foundation model) * panda-fix-usb topic to make USB and on-board ethernet to work on Panda with Device Tree enabled (cherry-pick / forward port of some of the dev.omapzoom.org commits) * a few fixes for MMC on Snowball from STE Landing Team * Enable 64bit HipHop VM development in OpenEmbedded * Updated HHVM SDK to put dwarf.h in the right location * Merged onig fix * Improve Ubuntu engineering build CI loop * Set up Linaro's repositories on repo.linaro.org * Set up web server for repossitories * Set up repository keys * Set up cross-build chroot for Quantal * Modified ubuntu-kernel-ci scripts to support cross builds * Created git branch for cross-friendly kernel packaging * ARMv7 KVM CI Bringup * Created ci.linaro.org jobs for kernel integration, build testing, and image creation for Arndale host * Work around thumb2 mmio problem in guest kernel * Added virtio options to vexpress-kvm kernel * Merge ARMv8 support into OpenEmbedded * Checked X11 on 3.9-rc kernel * Merged openldap strip fix * Merged coreutils ACL fix * Merged nss-myhostname * CI bring up: Calxeda EnergyCore ECX-1000 (highbank) * Added hwpack configurations for ECX-1000 (highbank) * Set up CI job for ECX-1000 (highbank) hwpack daily builds * Adapt core LAVA tests from Ubuntu/Android to OpenEmbedded engineering build * Add dependencies required by the tests * Inspect 'ptest' feature for extra tests * Rewrite perf test to be distro agnostic * Add stress-dbg into the image * get test device-tree, perf and pm-qa tests working
* Graphics * upstream: Version 10 of CMA-ION patches released by Benjamin Gaignard * upstream: Android piglit enablement patches for OpenGL ES 2 updated and released by Tom Gall * upstream: Version 1 of variable-index-* shader-tests extended for Android and Linux released by Tom Gall * upstream: Version 1 of debugfs support for dma-buf released by Sumit Semwal * upstream: Version 9 of DRM FIMD DT support for Exynos4 DT machine released by Vikas Sajjan
* Kernel * Depopulate the Exynos <mach-exynos/include-mach> directory * Removed debug-macro.S * Removed includes from irq-combiner * Removed includes from serial-samsung * Removed includes from i2c * Removed includes from sdhci-s3c * Convert UX500 to common clk * Prepared patches to fixup clk_set_parent API * Prepared patches to unprepare unused clocks at late init * Refactor EHCI controller code * Separated ehci_tegra host controller driver from ehci-hcd into its own driver * Depopulate the ux500 and plat-nomadik <mach/*> and <plat/*> * Proposed a patch moving <mach/debug-macro.S> * Proposed a patch removing the <mach/hardware.h> include * Proposed a patch removing the <mach/db8500-regs.h> include * Proposed a patch removing the remaining headers and switch to multiplatform * Android alarm-dev compat_ioctl support * Integrated the unit test to our LAVA infra for juice-aosp * Ensured the patch made it to linux-linaro and is enabled in kernel configuration and re-test it * Integrated the unit test to our LAVA infrastructure for some linux-linaro Android build, and make sure the kernel configuration enabled it * Opened bug on failures seen https://bugs.launchpad.net/linaro-android/+bug/1160633 * Android keyreset driver upstreaming * Researched how timer functionality Arve would like could be implemented * Added timer functionality and sent patch upstream for review * Reworked patch based on comments and sent V2 for review * Improve eMMC Power Management Support * Merged patches for fixup I/O voltage switch in protocol layer to Torvalds * Merged patches for adapt sdhci host driver to new sequence for how I/O voltage switch is done to Torvalds * Prepared patches to add a skeleton for doing background operations at idle time, based on runtime PM * Android Sync infrastructure Upstreaming * Sync patches queued in staging for 3.10
* Power Management * Dynamic timer irq affinity: set up the timer irq affinity to the cpu concerned by the first timer expiration - This patch was upstreamed. * cpufreq driver for IKS has been optimized * Analysis of HMP scheduler optimizations using bbench and their applicability to A15 SMP systems is completed: No performance regressions were seen. * sched: modified timer and workqueue framework to allow migration to non-idle cpus * Powerdebug is ported to Android platform and available in builds * Thermal manager: Powertop Integration. * Added basic RFC patch and sent for review
* Toolchain * Linaro GCC 4.7 2013.03 released, based off the latest GCC 4.7.2+svn195745 release * Updates to GCC 4.7.2+svn196272 * Includes arm/aarch64-4.7-branch up to svn revision 196225 * A fix for LP #1135633: [linaro regression] alsa-tools FTBFS with error "unable to find a register to spill in class ‘AREG’" * Linaro GCC 4.6 2013.03 released, based off the latest GCC 4.6.3+svn196247 release * Linaro QEMU 2013.03 released, based off upstream (trunk) QEMU. This release has been updated to be based on upstream's recent 1.4.0 release. It also includes ARM KVM support patches which are in sync with the ABI as committed to the upstream Linux kernel for 3.9. This feature is still under development but will no longer be subject to kernel-vs-userspace ABI breaks. * Linaro Toolchain Binaries 2013.03 released, updated to Linaro GCC 4.7 2013.03 * Updated GCC's ARM backend to use new vectorizer cost model infrastructure
* LEG * ACPI: we now can load RSDP, XSDT, FADT and DSDT tables * Initial GRUB port on ARM UEFI is available. The tree can be found on https://code.launchpad.net/~leif-lindholm/linaro-grub/arm-uefi
The release details are linked from the “Details” column for each released artifact on the release information:
http://wiki.linaro.org/Cycles/1303/Release#Release_Information
Using the Android-based images =======================
The Android-based images come in three parts: system, userdata and boot. These need to be combined to form a complete Android install. For an explanation of how to do this please see:
http://wiki.linaro.org/Platform/Android/ImageInstallation
If you are interested in getting the source and building these images yourself please see the following pages:
http://wiki.linaro.org/Platform/Android/GetSource http://wiki.linaro.org/Platform/Android/BuildSource
Using the Ubuntu-based images =======================
The Ubuntu-based images consist of two parts. The first part is a hardware pack, which can be found under the hwpacks directory and contains hardware specific packages (such as the kernel and bootloader). The second part is the rootfs, which is combined with the hardware pack to create a complete image. For more information on how to create an image please see:
http://wiki.linaro.org/Platform/DevPlatform/Ubuntu/ImageInstallation
Getting involved ============
More information on Linaro can be found on our websites:
* Homepage: http://www.linaro.org * Wiki: http://wiki.linaro.org
Also subscribe to the important Linaro mailing lists and join our IRC channels to stay on top of Linaro developments:
* Announcements: http://lists.linaro.org/mailman/listinfo/linaro-announce
* Development: http://lists.linaro.org/mailman/listinfo/linaro-dev
* IRC: #linaro on irc.linaro.org or irc.freenode.net #linaro-android irc.linaro.org or irc.freenode.net
Known issues with this release =====================
For any errata issues, please see:
http://wiki.linaro.org/Cycles/1303/Release#Known_Issues
Bug reports for this release should be filed in Launchpad against the individual packages that are affected. If a suitable package cannot be identified, feel free to assign them to:
http://www.launchpad.net/linaro
-- Fathi Boudra, on behalf of the Release Team Release Manager | Developer Platform Tech Lead Linaro.org | Open source software for ARM SoCs