Skip to content

OpenBMC (WIP)

OpenBMC là firmware BMC mã nguồn mở của Linux Foundation, build bằng Yocto. Tổng quan về BMC xem tại BMC Overview.

Tổng quan

TODO

  • Lịch sử: Facebook, IBM, Google, Intel, Microsoft; dự án Linux Foundation từ 2018
  • Các SoC được hỗ trợ: ASPEED AST2500/AST2600/AST2700, Nuvoton NPCM7xx/NPCM8xx
  • Các máy dùng OpenBMC

Kiến trúc phần mềm

TODO

  • systemd và D-Bus làm xương sống, sdbusplus, phosphor-dbus-interfaces
  • Các daemon phosphor-*: state manager, sensor (dbus-sensors), fan control, logging
  • bmcweb (Redfish, web UI), phosphor-host-ipmid / ipmid, obmc-console (SOL)
  • Entity Manager và cấu hình JSON cho từng board

Build

TODO

  • Cấu trúc layer meta-*, chọn machine (setup <machine>)
  • bitbake obmc-phosphor-image
  • Chạy thử bằng QEMU (qemu-system-arm -M ast2600-evb)
  • Xem thêm Yocto Overview

Boot và cập nhật firmware

TODO

  • U-Boot trên ASPEED, layout SPI flash (static, UBI, eMMC)
  • Cập nhật firmware BMC và BIOS host
  • Xem thêm U-Boot

Porting cho board mới

TODO

  • Device tree của BMC: I2C, GPIO, PWM/tach, KCS, LPC
  • Meta layer riêng cho board

References

  1. OpenBMC Documentation - github.com/openbmc