Get in Touch
 Duration 14 hours

Course Outline

Yocto Project Foundations for OpenBMC

  • Introduction to the Yocto Project and OpenEmbedded frameworks.
  • OpenBMC-specific layers, including meta-phosphor, meta-aspeed, and meta-arm.
  • Understanding layer priorities and inter-layer dependencies.
  • Distribution policies for poky, oe-core, and OpenBMC.

BitBake Deep Dive

  • Syntax and structural elements of BitBake recipes.
  • Managing tasks, dependencies, and variable flags.
  • Utilizing inheritance and bbclass files.
  • Debugging recipes effectively using devtool.

Machine and BSP Layers

  • Procedure for creating a new machine configuration.
  • Integrating device trees for ARM BMC SoCs.
  • Customizing kernel recipes.
  • Configuring U-Boot for BMC boot sequences.

Image Customization

  • Managing image recipes and FEATURES flags.
  • Strategies for adding or removing packages.
  • Defining partition layouts and flash memory sizes.
  • Integrating initramfs and systemd.

Package Management

  • Developing 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 download sources.
  • Tuning for parallel builds.
  • Managing resources on the build host.

SDK and Cross-Compilation

  • Generating the OpenBMC Software Development Kit.
  • Cross-compiling applications outside of the bitbake environment.
  • Utilizing the devtool add and modify workflows.
  • Testing compiled binaries on target hardware.

Layer Maintenance and Upgrades

  • Updating layer dependencies efficiently.
  • Managing transitions across upstream Yocto releases.
  • Backporting patches and applying security fixes.
  • Implementing version pinning strategies.

Requirements

  • Proficiency with the Linux command line and shell scripting.
  • A foundational understanding of embedded Linux build systems.
  • Familiarity with Git and standard Git workflows.

Intended Audience

  • Embedded Linux developers.
  • Professionals working with Yocto/OpenEmbedded.
  • Firmware engineers transitioning their focus to OpenBMC.

Number of participants


Price per participant

Testimonials (4)

Upcoming Courses

Related Categories