"Identify your problems but give your power and energy to solutions." ~Tony Robbins
We are pleased to announce the release of Linaro 12.12.
The Linaro 12.12 release highlights energy and work 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 and Ubuntu during this release cycle. The 12.12 release rounds out a great year of successes that prove how the collaborative efforts of Linaro, together with its members, partners and community continue to build upon the future of Linux on ARM.
"Just look at the engineering that Linaro has been involved with. big.LITTLE, kernel consolidation, UMM, ARMv8 and the list goes on. It’s not just hacking code though, Linaro is thinking carefully about itself, re-engineering itself for the next phase in its evolution. “Start up” was 2010, “Establishment” was 2011 and 2012 has been “Growth”. What’s 2013 going to be all about? Just wait and see," said David Rusling, Linaro CTO in his 2012 year end summary.
The 12.12 release highlights include the Linaro Android team has upgraded its builds to to 4.2.1, enabled WiFi on PandaBoard for 4.2.1 and audio on the Origen 4210. Additionally the team released its 12.12 toolchain this cycle. Earlier this month, the 3.7 Linux Kernel was released and the Linaro Android team rebased the perf patches.
As we look at the achievements of the Linaro Developer Platform, we note that the Linaro baseline images for Ubuntu are now based on Quantal Quetzal otherwise known as Ubuntu 12.10 and initiate the transition from Evaluation Builds to Engineering Builds. The Linaro U-Boot 2012.12 which is based on U-Boot v2013.01-rc1 was released and includes support for Origen quad (4412) and Arndale (5250) boards.
The Linaro Power Management team had a very busy cycle: optimizing big.LITTLE IKS (In Kernel Switcher) for release to members, integrating the big.LITTLE MP via the Intergration tree, adding improvements to help solve tasking packing around the power-aware scheduler, IKS and MP benchmarking for power and performance, adding thermal framework enhancements for non-ACPI platforms, updating Powertop for ARM platforms and adding cpuidle support for multi-cluster SoCs.
The Linaro Toolchain Team announced updates: Linaro GCC 4.7 2012.12 was released and is based off GCC 4.7.2+svn194184 which gives better 64 bit shifts in NEON, updates the arm/aarch64-4.7-branch up to svn revision 194154. Linaro Toolchain Binaries for 2012.12 was released and updated to latest Linaro GCC 4.7 2012.12 and Linaro GDB 7.5 2012.12.
LAVA has seen updates and improvements this cycle as well as support for the 4.2.1 Linaro Android images were added, Other improvements on the LAVA front include increases IP address space from 255 to 65k in the lab, image reports for the automated testing of OpenEmbedded builds is now available, a new server was added tothe validation lab for audio, power measurement, and SD-mux capable devices. LAVA can now execute Versatile Express jobs using the test images DTB and VExpress-tc2 boards have been converted to use IKS. A 64-bit virtual machine was added to lava-cloud for the Linaro Toolchain team's use as well. The user interface for finding, viewing and downloading attachments in the LAVA dashboard was improved and signal handlers can be written in shell and bundled with the tests themselves.
We encourage everybody to use the 12.12 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:
* Android * Platform Enablement * Android upgraded to 4.2.1 * Android 12.12 toolchain released * Wifi on PandaBoard enabled for 4.2.1 * Audio enabled for Origen 4210 * LAVA/Testing * Support to handle 4.2.1 images were added * Upstreaming * Perf patches were rebased for 4.2.1 on 3.7 kernel
* Developer Platform * Ubuntu baseline images are now based on the latest Ubuntu stable release, Quantal Quetzal (12.10) * CI loop for OpenEmbedded builds is set up: daily build are produced, boot tested and image report is available on LAVA dashboard * The developer rootfs contains the software stack required by the Kernel Working Group * Linaro U-Boot 2012.12 released, based off U-Boot v2013.01-rc1 * include support for Origen quad (4412) and Arndale (5250) boards * Kernel package for IKS has been updated and b.L hardware pack converted to v3 * OpenEmbedded ARMv8 build has been updated * Kernel updated to linux-linaro 3.7 * binutils and gdb updated to HEAD * switch setup to use "--network bridged --network-bridge tap0" by default to have host<>model networking * switch to use php-fpm instead of Apache module * Linux Linaro has been updated * based on linux-linaro-core-tracking tree, llct-20121211.0 tag: * based on v3.7 release * config fragments: updated config-core-tracking and basic-board-configs topics * emmc patches from Kernel WG * updated linaro-android-3.7 topic by John Stultz * gator version 5.12 * big-LITTLE-MP version master-v13 * devfreq topic from Rajagopal Venkat * "KBuild: Allow scripts/* to be cross compiled" patch included. This is all that remains from the ubuntu-sauce topic. * patches to enable perf in Android by Bernhard Rosenkraenzer * updated Versatile Express patches from ARM LT * updated Origen patches from Samsung LT * Linux Linaro tracking updated, v3.4 based * Gator version 5.12 * updated tilt-3.4 topic from TI LT; now includes the 3.4.22 stable release
* Graphics and Multimedia * A glmark2 canvas (backend) for rendering using the DRM stack without X11 * A glmark2 scene rendering a translucent model with reflective properties (e.g., a "crystal" statue)
* Kernel * Refactor USB Host Drivers * Analyzing ehci-hcd and echi-omap source code (Dec 7) * Studying existing ehci-platform,echi-mxc, ehci-spear, and ehci-orion code (Dec 7) * Research impact on kernel size for multi-platform configs * Identify appropriate defconfig file: u8500_defconfig, vexpress_defconfig * Kernel static size measurement (Dec 01) * Currently we can start with 'free' and '/proc/modules' * Finalize dts file to use across all the platforms(Dec 14) * zImage with built-in's(Dec 01) * zImage static size with and without init sections (Dec 01) * Setup mmc rootfs for runtime size analysis for U8500 platform (Dec 17) * Setup qemu-linaro for runtime size analysis for vexpress platform (Dec 08) * Prepare mmc based rootfs with *.ko's (Dec 12) * Identify the zImage size with built-in and '*.ko' (Dec 19) * Gather kernel image and runtime size data for Ux500 platform (Dec 19) * Gather kernel image and runtime size data for Versatile express platform (Dec 19) * Gather kernel image and runtime size data for i.MX platform(Dec 18) * For each platform, identify FDT'd Modules that are participating for .ko (Dec 19) * zImage with *.ko's(Dec 18) * Prepare mmc based rootfs with *.ko's for u8500 platform(Dec 17) * Identify the number of pages used before and after installing the modules (Dec 19) * Followup with shawnGuo for runtime size data gathering on i.MX platform (Dec 18) * Android upstreaming: Ashmem * Review Minchan's v3 vma based appraoch, found an critical issue and reported it (Dec 11) * Android upstreaming: Lowmem * Create mempressure cgroup per David Rientjes suggestions (this also involves making vmpressure calculations per-thread) * Develop feedback cycle interface per akpm's & sent to lkml * Got some interest in using the new interface from kvm developer for automatic memory ballooning * Pincontrol GPIO range makeover * Patches for the above merged into Torvald's mainline tree (Dec 12) * Refactor EHCI controller code * Study existing ECHI code (Dec 7) * Studying existing ehci-platform,echi-mxc, ehci-spear, and ehci-orion code (Dec 7)
* Power Management * Highlights * Getting b.L IKS out the door * Lots of benchmarking, kernel optimising, bug fixing and code cleanups * Power measurements and tuning using ARM's workbench * Release new version of powertop based on upstream 2.2 version * New feature to view devfreq device states * cpuidle - create new tool to analyse idle intersection of multiple cores * useful for optimising cpuidle driver to achieve cluster shutdown * Optimise cpufreq for IKS * Refactor cpufreq driver * Replicate Mathieu's work setup at my place to verify power figures * Fix cpufreq driver to work with on-the-fly disablement of bl_switcher * Host Automated Workload Benchmark Suite in a linaro private repo * Optimize/Fix issues in Workbench * Fix Nico/next kernel crashes due to cpufreq framework * Run lots of benchmark tests * Fix potential bugs in cpufreq core * Supply the same cpufreq driver to ARM LT Team * Work on spreadsheet used for keeping results * Fix any pending issues with cpufreq driver * Integration tree to bring together big.LITTLE MP related work * Host cpufreq-interactive-master (Host patches from Todd Poyners tree) and cpufreq-interactive-exp (master + optimization patches from Linaro) branches * Release v13 of big LITTLE MP tree * Tasking packing heuristics (Power-aware scheduler) * Make MP3 power measurement on TC2 ubuntu image with pack mechanism * Create an TC2 android image with packing mecanism * Make MP3 power measurement on TC2 android image with pack mechanism * Update ARM bench * Make power measurement on TC2 android image with pack mechanism and ARM bench * Prepare packing small task v2 * Update TC2 firmware * Test IKS-MP kernel with packing small tasks * Fix function tracer with new kernel and firmware * Test cpu hotplug stree test on TC2 and get results * Thermal framework enhancements for non-ACPI platforms * Analyse ways to have more than one temp sensor and how to share cooling devices between 2 thermal zones * Keep powertop 2.x working on ARM * Add devfreq support into powertop to display all devfreq devices freq stats perhaps in new window * Rebase powertop to new 2.2 version * Upstream stericsson u8500 suspend driver * Look through the u8500 suspend codes * Find out if there is any dependencies blocking u8500 suspend upstream * cpuidle: support for multi-cluster in the core * parse a ftrace file and load data * do statistics on average, min, max time on the fly * compute intersection intervals * optimize intersection algorithm for memory * optimize intersection algorithm for speed * do statistics on intersections on the fly * display results * add options to the command line * add a cstate options to filter results * check plotting against intervals * create a wiki page the wakeup source and fill it step by step * https://wiki.linaro.org/WorkingGroups/PowerManagement/Doc/WakeUpSources * Refactor the acpi cpuidle driver * fix power state recomputation and dynamic C-states
* Toolchain * Linaro GCC 4.7 2012.12 released, based off GCC 4.7.2+svn194184 * better 64 bit shifts in NEON * arm/aarch64-4.7-branch up to svn revision 194154 * LP #1060221 - Fix ICE: libgrypt * Linaro GCC 4.6 2012.12 released, based off GCC 4.6.3+svn194340 * Linaro QEMU 2012.12 released, based off upstream's recent 1.3.0 release * Linaro GDB 7.5 2012.12 released, based the FSF GDB 7.5.1 release * Linaro Toolchain Binaries 2012.12 released, updated to latest Linaro GCC 4.7 2012.12 and Linaro GDB 7.5 2012.12
* LAVA * The validation lab increased its IP space from 255 to 65k addresses to prepare for new devices and LEG use cases requirements. * The Toolchain WG PandaBoard boards have been updated to support hard and soft float images * Image Reports for Automated Testing of OpenEmbedded builds is now availale * A new server is deployed in the validation lab for audio, power measurement, and SD-mux capable devices. * We started to use the 'salt' tool to manage the lab infrastructure * LAVA can execute Versatile Express jobs using the test image's DTB * VExpress-tc2 boards are converted to use IKS * The validation lab has increased the number of wireless access points available * The 'cbuild' service for the toolchain group is now running on a VM in the lab * The UI for finding, viewing and downloading attachments in the dashboard has been improved * Signal handlers can be written in shell and bundled with the tests themselves * Most lava-test and lava-android-test tests had lava-test-shell versions written for them * Subscriptions to test run filters work properly now. A user can choose to be notified on failed test job or always.
* LEG * Completed the investigation of CRC32 for HDFS optimisation * Ported and submitted Non-Uniform Memory Access patches to upstream * Enabled GRUB on U-boot * Enabled UEFI on Samsung Arndale board * Provide a pre-built Ubuntu server image for Arndale using either U-boot or UEFI
The release details are linked from the “Details” column for each released artifact on the release information:
http://wiki.linaro.org/Cycles/1212/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/1212/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 Linaro Release Manager | LAVA Project Manager Linaro.org | Open source software for ARM SoCs