Get in Touch

Course Outline

Yocto Project Foundations for OpenBMC

  • Overview of the Yocto Project and OpenEmbedded.
  • OpenBMC-specific layers: meta-phosphor, meta-aspeed, meta-arm.
  • Layer priorities and dependencies.
  • poky, oe-core, and OpenBMC distribution policy.

BitBake Deep Dive

  • Recipe syntax and structure.
  • Tasks, dependencies, and variable flags.
  • Inheritance and bbclass files.
  • Debugging recipes with devtool.

Machine and BSP Layers

  • Creating a new machine configuration.
  • Device tree integration for ARM BMC SoCs.
  • Kernel recipe customization.
  • U-Boot configuration for BMC boot.

Customizing Images

  • Image recipes and FEATURES flags.
  • Adding and removing packages.
  • Partition layouts and flash sizes.
  • initramfs and systemd integration.

Package Management

  • Writing recipes for custom C++ sdbusplus services.
  • Python application packaging.
  • Systemd unit file deployment.
  • License compliance and COPYING files.

Build Optimization

  • Shared state cache (sstate) configuration.
  • Using pre-mirrors and local downloads.
  • Parallel build tuning.
  • Build host resource management.

SDK and Cross-Compilation

  • Generating the OpenBMC SDK.
  • Cross-compiling applications outside bitbake.
  • Using 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.
  • Version pinning strategies.

Requirements

  • Experience with the Linux command line and shell scripting.
  • Basic understanding of embedded Linux build systems.
  • Familiarity with Git and Git workflows.

Audience

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

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories