Secure data path for media streams involve lots of differents software and hardware elements and is very complexe. The goal of this talk is to expose an hardware independent proposition using open-TEE and dmabuf. Feedback from all SoC experts is more than welcome.
Give high level overview of the components involved in a DRM/Secure. Playback use case. Presentation discusses about how Client device obtains License Keys
using W3C-EME implementation of any particular DRM like Widevine, how content is decrypted, decoded and rendered and how the buffers are allocated, secured and shared among various elements in the secure playback chain.
The Linux kernel can use non-maskable interrupts (NMI) to detect hard
lockups, to help diagnose spin lock problems, to increase performance
monitoring coverage and to make triggering KDB or KGDB more robust. Most
ARM processors provide some means to simulate an NMI, either using Fast
Interrupt reQuests (FIQ) or by carefully prioritizing normal interrupts,
but the kernel was not capable of exploiting the hardware to provide
improved debug features until very recently. This talk will describe how to take advantage of the new kernel features
to help the kernel find your bugs for you. In doing so I will cover the
historic uses of NMI on x86 Linux and of FIQ on Android and also provide
an insight into the challenges of writing code that can pre-empt the
scheduler (and indeed pretty much any other part of the kernel). We will
also look at how TrustZone complicates the use of FIQ on armv7 and how
the new architectural features introduced in armv8 can mitigate this.
Currently the majority of DUTs in the Lab are allocated an IP address at boot time by DHCP in the 10.254.x.x address range.
The proposal is that, where devices have a stable, fixed MAC address, they should be mapped to a fixed IP by the DHCP daemon in a selected
Hibernation on ARM devices is a long-wanted feature, with multiple ways of achieving it - in-kernel, fully userspace, or a combination. This presentation will give brief overview of these methods, and will discuss the effort required in enabling in-kernel ARM hibernation to the TI platform. We will also share the pre-requisites for enabling this on other SoCs.
ARM v8-A NEON optimization, with the following outline - Zhongwei/Phil Wang With FFT optimization as an example, following topics are discussed.
a) Performance boost using ARM v8-A NEON
b) NEON-optimization workflow for Ne10
c) Some tips with example of Ne10 FFT and Android libraries
d) Performance comparison between assembly and intrinsic
Hands on training and a Q&A involving the Lab and LAVA Teams on how to create, submit and interact with hacking sessions. Additionally, a look at some of the issues people can create when they submit or re-submit jobs with inappropriate meta-data or to particular bundle streams, particularly how that affects LAVA Image Reports. Key stakeholders are Hacking session users QA, LAVA team and Lab
Several instances of redundant zero/sign-extension related bugs are reported in GCC and Linaro bugzilla. These bugs are sources of performance/code size penalties. This presentation will discuss the history, design considerations, implementation, and performance characteristics of redundant zero/sign extension elimination in GCC. We will then discuss a new compiler pass that performs computation in promoted type mode in such a way that removes redundant zero/sign-extensions.
Linaro and STM implemented an integration layer between Chromium and Wayland/Gstreamer. The solution allows HW accelerated video playback, high performance GPU accelerated HTML5 rendering. The approach uses hole punching mechanism to compose the UI layer on the top of the video content. The Gstreamer Chromium plugin is implemented trough the Pepper API. The presentation will provide implementation details on the Wayland/Chromium/Gstreamer integration.
The 32-bit ARM kernel supports a wide variety of processors harking back to ARM v4 architecture up to the latest v7 SMP processors. This huge legacy forced kernel developers to adapt the power management code for the newest processors (eg v7 multi-cluster systems) to an infrastructure that was developed to support simpler uniprocessor (UP) ARM architectures, resulting in code fragmentation and lack of unified drivers.