Difference between revisions of "OpenPOWER Firmware"

From RCS Wiki
Jump to navigation Jump to search
(talos-hostboot appears identical to open-power/hostboot save for a single commit; are you sure the BMC pushes the firmware into the POWER9 core? if so don't hesitate to revert this edit)
(Undo revision 1160, I didn't know about FSI)
Line 57: Line 57:
  
 
# SBE executes [[OTPROM|OTPROM]], which loads SEEPROM firmware into SBE PIBMEM
 
# SBE executes [[OTPROM|OTPROM]], which loads SEEPROM firmware into SBE PIBMEM
# SBE executes SEEPROM firmware, which loads Hostboot firmware into CPU core
+
# SBE executes SEEPROM firmware
# CPU executes [[Hostboot|Hostboot]], which loads Skiboot
+
# [[OpenBMC|OpenBMC]] starts SBE
 +
# [[Self-Boot Engine|SBE]] loads Hostboot
 +
# [[Hostboot|Hostboot]] loads Skiboot
 
# [[Skiboot|Skiboot]] loads OCC, Petitboot
 
# [[Skiboot|Skiboot]] loads OCC, Petitboot
 
# [[Petitboot|Petitboot]] loads the operating system
 
# [[Petitboot|Petitboot]] loads the operating system

Revision as of 16:16, 30 July 2018

OpenPOWER Firmware is an open-source alternative to OpenFirmware and proprietary IBM firmware used on Power machines.[1] It is a general name for many separate pieces of software used to start recent Power Architecture chips made by IBM.[2]

OpenBMC is a separate project that creates firmware for the Baseboard Management Controller.

Components

Firmware Executed on Loaded from Function
OTPROM SBE core (on CPU chip) eFuses
  • very first instructions executed
  • loads SBE firmware from SEEPROM into SBE core
Self-Boot Engine (SBE) SBE core (on CPU chip) SEEPROM
  • initialises CPU core
  • loads Hostboot
Hostboot CPU core SPI Flash
  • loads Skiboot
  • inits DRAM (zeroing for ECC mem.), Processor Bus, Memory buffer
Skiboot CPU core
  • implements OpenPOWER Abstraction Layer (OPAL) for OS runtime services
  • setup PCIe, device tree, real time clock, NVlink, sensors
  • loads Petitboot, OCC
Petitboot CPU core
  • boot menu
  • loads operating system
On-Chip Controller (OCC) OCC core (on CPU chip)
  • thermal regulation on CPU chip

Process

  1. SBE executes OTPROM, which loads SEEPROM firmware into SBE PIBMEM
  2. SBE executes SEEPROM firmware
  3. OpenBMC starts SBE
  4. SBE loads Hostboot
  5. Hostboot loads Skiboot
  6. Skiboot loads OCC, Petitboot
  7. Petitboot loads the operating system
  8. operating system talks to firmware through OPAL

References

See also

External Links