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 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)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories