Difference between revisions of "OpenPOWER Firmware"
Jump to navigation
Jump to search
(Add column indicating where each piece of firmware is loaded from (i.e. where it is stored when the system is powered down)) |
(add entry for OTPROM firmware) |
||
Line 10: | Line 10: | ||
! Loaded from | ! Loaded from | ||
! Function | ! Function | ||
+ | |- | ||
+ | | [[OTPROM|OTPROM]] | ||
+ | | SBE core (on CPU chip) | ||
+ | | eFuses | ||
+ | | | ||
+ | * very first instructions executed | ||
+ | * loads SBE firmware from SEEPROM into SBE core | ||
|- | |- | ||
| [[Self-Boot Engine|Self-Boot Engine]] (SBE) | | [[Self-Boot Engine|Self-Boot Engine]] (SBE) | ||
Line 49: | Line 56: | ||
== Process == | == Process == | ||
+ | # SBE executes [[OTPROM|OTPROM]] | ||
# [[OpenBMC|OpenBMC]] starts SBE | # [[OpenBMC|OpenBMC]] starts SBE | ||
# [[Self-Boot Engine|SBE]] loads Hostboot | # [[Self-Boot Engine|SBE]] loads Hostboot |
Revision as of 15:57, 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 |
|
Self-Boot Engine (SBE) | SBE core (on CPU chip) | SEEPROM |
|
Hostboot | CPU core | SPI Flash |
|
Skiboot | CPU core |
| |
Petitboot | CPU core |
| |
On-Chip Controller (OCC) | OCC core (on CPU chip) |
|
Process
- SBE executes OTPROM
- OpenBMC starts SBE
- SBE loads Hostboot
- Hostboot loads Skiboot
- Skiboot loads OCC, Petitboot
- Petitboot loads the operating system
- operating system talks to firmware through OPAL
References
- ↑ Kerr, Jeremy. OpenPOWER: building an open-source software stack from bare metal. LCA 2015 - video on YouTube
- ↑ Smith, Stewart. Adventures in OpenPOWER Firmware. LCA 2016 - video on YouTube