LCA14: LCA14-113:Linaro Comcast RDK project
Upcoming SlideShare
Loading in...5

LCA14: LCA14-113:Linaro Comcast RDK project



Resource: LCA14

Resource: LCA14
Name: LCA14-113:Linaro Comcast RDK project
Date: 03-03-2014
Speaker: Nicolas Dechesne



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

LCA14: LCA14-113:Linaro Comcast RDK project LCA14: LCA14-113:Linaro Comcast RDK project Presentation Transcript

  • Mon 3 Mar, 12:10pm, Nicolas Dechesne. LCA14-113:Linaro Comcast RDK project
  • • What is the RDK? • Linaro RDK project • RDK is migrating to Yocto Project, why? • What is the Yocto Project? • OpenEmbedded RDK and benefits • Linaro RDK project outcome • RDK emulator • Screenshots and Demos Outline
  • • Reference Design Kit (RDK) • Software “bundle” or generic middleware available to operators to build software stack for set-top box. • Goals • Speed to market • Standardization • Collaboration (royalty free community) • Applications “layer” left to the MSO (HTML5, Qt5, …) • 100+ RDK licensees, deployed as of today in millions of homes • Owned and managed by RDK Management “LLC” formed by Comcast and Time Warner Cable • “Under the wood” • typical embedded Linux stack • Gstreamer, Qt5, … • BSP : Linux kernel, HALs, OGLES and Multmedia ‘drivers’ What is the RDK?
  • RDK stack
  • Linaro RDK project • Linaro / Comcast joined project • from July through Dec 2013 in Member Services • founded by Comcast • 7 engineers including assignees from ARM, Comcast, STM, Hisilicon and Entropic (+1 PM) • executed as a “landing team”, with private resources • Create engineering relationship between Linaro and Comcast, prior to LHG • Design and implement the reference implementation of the OpenEmbedded RDK • RDK 2.0 code base • XI3 IP Client use cases and Comcast TV guide • Develop, port, test and integrate on 3 ARM SoCs (STMicro, Hisilicon, Entropic)
  • Why change? • Legacy RDK build system • started with a trivial script • grew into a very large and complex “program”, became a project of its own • Difficult to use • Difficult to maintain and satisfy the scalability of RDK community. • Very slow upgrade of standard open source core components • security • bugs • improvements • Customization and duplication of build scripts for each SoC vendor
  • What is the Yocto Project? It provides all the basic bits that every Linux product needs, pre-integrated and tested to let you spend more time on differentiators that matter to you!
  • • The Yocto Project is an open source project, hosted by the Linux Foundation, launched in 2011 • Built on top 10+ years of OpenEmbedded technology development • A collection of projects that make up the “Yocto Project” • Bitbake: the build engine • OpenEmbedded-Core: core set of recipes • Poky: reference Linux distro implementation • Build “tailored” Linux product / distribution • Support for ARM, PPC, MIPS, x86 • Excellent, extensive documentation • Vibrant Open Source community The Yocto Project
  • • Bitbake is the build engine • parses metadata • manage dependencies • schedule build tasks • Build recipes • Components • Images • Configuration files for “machine”, “distribution” • Source code patches • Layers • container for recipes, configuration files • organized logically by features • OpenEmbedded-Core, Qt5, Gnome, browser(s), … OpenEmbedded
  • • Core layer(s) to build all common base root FS components (busybox, lighttpd, Gstreamer, Qt, …) • Fully maintained by the OSS community • Security fixes • Regular, planned stable version updates, every 6 months. • RDK layer • Owned by the RDK community • RDK mediaframework, IARM, devicesettings, … • Generic image definitions • BSP layer for each SoC • One layer for each SoC vendor • Kernel, multimedia and graphics drivers • SoC RDK components such as RDK HALs • MSO layer • Proprietary applications • Product image definitions • OEM layer OpenEmbedded RDK “layers”
  • OpenEmbedded RDK benefits • Build “on the shoulders of giants” • Standard distribution and build tools • Reduce fragmentation and differentiation across SoCs in areas that don't matter • Reduce entry barrier for newcomers in the RDK community • Benefits from development, innovation and support from the entire OpenEmbedded / Yocto Program ecosystem • Thousands of components already pre-integrated • Standard BSP deliveries • Homogeneous across all RDK SoC vendors • BSP layer can be made independent of RDK, and can be reused for any OpenEmbedded based project • Clear ownership and control of each “participant” (RDK, BSP, OEM). • Yet, full flexibility for customization and/or patches when necessary
  • Linaro RDK project outcome Origin of binary packages in a Comcast XI3 image • Initially started with “dylan” (v1.4) release, and migrated to “dora” (v1.5) • Upstream OE contributions • Layers: • 3 BSP layers • “meta-rdk” • “meta-comcast” • RDK s/w refactoring • Jenkins • LAVA CI loop (almost…)
  • • What is it? • Fully functional reference Implementation of the RDK software stack. • All configurations available (mediaclient, headless gateway, …) • Runs on a vanilla x86 platform (development platform) : 32-bit QEMU, VirtualBox or VMWare • RDK Browser and “rmfApp”, and all other RDK components that would be present in a fielded RDK software stack. • Built “for free” using OpenEmbedded RDK • Usage Scenarios • Provides an easy way to build and validate components and applications without the need for specialized hardware platform. • Component developer - Includes reference implementation for component • The RDK Browser allows for validation of HTML5 and other HTML-based applications. • The reference implementation is very useful when porting the RDK software stack to a new chipset or OEM device. RDK emulator
  • • Comcast has joined Linaro Digital Home Group (LHG) • Expecting several other RDK “players” to join • RDK will be one of the main development platforms for LHG deliverables • At the RDK user conference (Feb 14) , publicly announced new RDK projects to be based on OpenEmbedded RDK • Comcast is building a team to take over this work, ‘productize’ the reference implementation and ship it! • Goodies • Screenshots • Linaro Tech showcase, talk to Trevor So, next?
  • Comcast TV Guide on real hardware
  • RDK emulator (VirtualBox)
  • Any questions?
  • More about Linaro Connect: More about Linaro: More about Linaro engineering: Linaro members: