Get in Touch

Course Outline

Yocto Project Foundations for OpenBMC

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

Deep Dive into BitBake

  • Anatomy of recipe syntax and structure.
  • Managing tasks, dependencies, and variable flags.
  • Leveraging inheritance and bbclass files.
  • Debugging recipes using devtool.

Machine and BSP Layers

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

Customizing Images

  • Utilizing image recipes and FEATURES flags.
  • Adding and removing packages as required.
  • Defining partition layouts and flash 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).
  • Utilizing pre-mirrors and local download directories.
  • Tuning parallel build processes.
  • Managing build host resources efficiently.

SDK and Cross-Compilation

  • Generating the OpenBMC SDK.
  • Cross-compiling applications independently of bitbake.
  • Employing 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 the Linux command line and shell scripting.
  • Foundational knowledge of embedded Linux build systems.
  • Familiarity with Git and standard Git workflows.

Audience

  • Embedded Linux developers.
  • Professionals working with Yocto and OpenEmbedded.
  • Firmware engineers transitioning to the OpenBMC ecosystem.
 14 Hours

Number of participants


Price per participant

Testimonials (4)

Upcoming Courses

Related Categories