Get in Touch

Course Outline

Foundations of the Yocto Project for OpenBMC

  • Overview of the Yocto Project and OpenEmbedded
  • OpenBMC-specific layers: meta-phosphor, meta-aspeed, meta-arm
  • Understanding layer priorities and dependencies
  • The role of poky, oe-core, and OpenBMC distribution policies

Deep Dive into BitBake

  • Recipe syntax and structural components
  • Tasks, dependencies, and variable flags
  • Inheritance mechanisms and bbclass files
  • Debugging recipes using devtool

Machine and BSP Layers

  • Establishing a new machine configuration
  • Integrating device trees for ARM BMC System on Chips (SoCs)
  • Customizing kernel recipes
  • Configuring U-Boot for BMC boot processes

Image Customization

  • Understanding image recipes and FEATURES flags
  • Adding and removing packages
  • Managing partition layouts and flash memory sizes
  • Integrating initramfs and systemd

Package Management

  • Writing recipes for custom C++ sdbusplus services
  • Packaging Python applications
  • Deploying Systemd unit files
  • Ensuring license compliance and managing COPYING files

Build Optimization

  • Configuring the shared state cache (sstate)
  • Leveraging pre-mirrors and local downloads
  • Tuning parallel build processes
  • Managing build host resources effectively

SDK and Cross-Compilation

  • Generating the OpenBMC SDK
  • Cross-compiling applications independently of bitbake
  • Utilizing the devtool add/modify workflow
  • Testing binaries on target hardware

Layer Maintenance and Upgrades

  • Updating layer dependencies
  • Handling upstream Yocto releases
  • Backporting patches and security fixes
  • Implementing version pinning strategies

Requirements

  • Proficiency with Linux command line interfaces and shell scripting
  • Foundational knowledge of embedded Linux build systems
  • Working familiarity with Git and standard Git workflows

Audience

  • Embedded Linux developers
  • Yocto/OpenEmbedded practitioners
  • Firmware engineers transitioning to the OpenBMC ecosystem
 14 Hours

Number of participants


Price per participant

Testimonials (2)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories