In this development and hacking session, we will be working out development issues relating to the developing a prototype of running the Xen hypervisor and Dom0 on platforms with only ACPI support. Supporting Xen on ACPI platforms is particularly challenging, because the Xen hypervisor consumes parts of the ACPI data and accesses a few hardware resources, whereas Dom0 accesses the remaining hardware resources and accesses the rest of the ACPI data, but cannot access all of the hardware. This session is targeted at developers actively working on ACPI and/or Xen, and we will be discussing current development challenges and specifically validate the feasibility of using the _STA methods to override hardware descriptors consumed or modified by Dom0.
This session is an advanced course on Linux kernel upstreaming fundamentals. The course covers how the arm-soc kernel tree is maintained and why that is important to ARM Linux kernel developers. The focus of the course is the explanation of the detailed mechanics of creating and posting patch series to upstream mailing lists for several common cases. Annotated session content is made up of previously upstreamed ARM support captured from emails to the kernel mailing lists. The target audience is both software engineers and engineering managers preparing to upstream software into the kernel. The topic requires a solid background in software configuration management terminology and the git SCM tool as well as a good technical understanding of the Linux kernel itself.
This set of sessions will go into detail on many toolchain topics and help the attendee get the most out of their toolchain usage. Topics covered will include:
Link Time Optimizations (LTO)
Feedback Directed Optimizations (FDO)
Proper code annotation for:
avoiding false sharing
restrict keyword usage
Optimization levels and what they mean
Demystifying -march, -mfpu, -mcpu, -mtune, -with-mode
Debugging binaries compiled with optimizations.
Android provides CTS - Compatibility Test Suite, written in java and run to verify the Android system. However Android has limited low-level tests, typically needed to port, benchmark and optimize components, in isolation. There is a need to create, enhance, share and deploy such user-space tests.
In this discussion, Ashok will cover recent work on multimedia codec tests for AArch64 done by ARM and Linaro, provide a quick overview on current Android user space tests, being run as part of Linaro's monthly release. This will be followed by an open discussio
ARM Linux has traditionally been the the operating system of choice for the very low end of embedded systems, with very low power consumption and tight constraints on memory size and CPU speed.
We still support machines based on ARM7TDMI and Cortex-M3 with as little as 2MB of RAM, but there is a disconnect between the stagnating upstream contributions for systems like this and growing interest for using Linux in ultra-low power and low-cost scenarios like wearable
computing or the "Internet of Things".
In my presentation, I will talk about some of the tricks that used to scale Linux to the absolute low-end, such as running without an MMU or executing the kernel from NOR flash, and areas that could use more work, such as upstream ports for Linaro member platforms (STM32, Kinetis, ...) and improving kernel support for low-memory scenarios.
In the discussion, I want to find out where people in the audience think we should be heading in ARM Linux. Are we leaving the low-end market to MIPS, ARC, Blackfin and MSP430 by removing support for MMU-less systems and small-memory configurations, or should we
invest more time in these systems?'
Coresight is the name given to a set of IP blocks providing hardware assisted tracing for ARM based SoCs. This presentation will give an introduction to the technology, how it works and offer a glimpse of the capabilities it offers. More specifically we will go over the components that are part of the architecture and how they are used. Next will be presented the framework Linaro is working on in an effort to provide consolidation and standardization of interfaces to the coresight subsystem. We will conclude with a status of our current upstreaming efforts and how we see the coming months unfolding.
The intention with this session is to provide guidelines for developing a Trusted Applicationbased on the Global Platform TEE Specifications, and for running it based on the OP-TEE implementation of the TEE.
This session is meant to look at Coresight in deeper details. The goal is to go ove more advanced concepts that are going beyond the basic traces mechanism such as STMs and how it could be used to interleave messages from the existing kernel trace infrastructure with the Coresight trace stream. The second part will concentrated on some of the challenges we face such as the configuration of STM trace channels between user and kernel space, the representation of metadata
for trace decoding and the decoding of compressed streams themselves. The presentation will conclude with a use case example and it's associated decoded trace stream.
QEMU ARMv8-A system emulation was completed shortly after LCA14 and has been fully upstreamed in QEMU. During this session we will briefly cover the level of support and functionality, and we will introduce developers to using QEMU for running 64-bit ARM kernels and distributions using QEMU. We also developed a small set of patches on top of upstream QEMU which allows us to run a 64-bit Android build. We will explain the status and efforts coordinated between Google and Linaro, demo the working system, and show how developers can start playing with this.