131de159fSAdriana Kobylak# Code Update Diagrams 231de159fSAdriana Kobylak 331de159fSAdriana Kobylak1. [High-Level Overview](#High-Level Overview) 431de159fSAdriana Kobylak 531de159fSAdriana Kobylak## High-Level Overview 631de159fSAdriana Kobylak 731de159fSAdriana Kobylak``` 831de159fSAdriana Kobylak┌──────────────┐ ┌─────────────┐ ┌────────────┐ 931de159fSAdriana Kobylak│User Interface│ │Image Manager│ │Item Updater│ 1031de159fSAdriana Kobylak└──────┬───────┘ └──────┬──────┘ └──────┬─────┘ 1131de159fSAdriana Kobylak │ Upload │ │ 1231de159fSAdriana Kobylak │ Firmware │ │ 1331de159fSAdriana Kobylak │ Image to BMC │ │ 1431de159fSAdriana Kobylak ├──────────────────────────▶│ │ 1531de159fSAdriana Kobylak │ │ │ 1631de159fSAdriana Kobylak │ │ Extract │ 1731de159fSAdriana Kobylak │ │ image │ 1831de159fSAdriana Kobylak │ │ contents │ 1931de159fSAdriana Kobylak │ │ │ │ 2031de159fSAdriana Kobylak │ ├─────┘ │ 2131de159fSAdriana Kobylak │ ▼ │ 2231de159fSAdriana Kobylak │ │ │ 2331de159fSAdriana Kobylak │ │ Create │ 2431de159fSAdriana Kobylak │ │Software D-Bus │ 2531de159fSAdriana Kobylak │ │ object[1] │ 2631de159fSAdriana Kobylak │ │ │ │ 2731de159fSAdriana Kobylak │ ├───────┘ │ 2831de159fSAdriana Kobylak │ ▼ │ 2931de159fSAdriana Kobylak │ │ │ 3031de159fSAdriana Kobylak │ Request to ● │ 3131de159fSAdriana Kobylak │ Activate │ 3231de159fSAdriana Kobylak │ Software │ 3331de159fSAdriana Kobylak │ D-Bus Object │ 3431de159fSAdriana Kobylak ├────────────────────────────────────────────────▶│ 3531de159fSAdriana Kobylak │ │ Verify 3631de159fSAdriana Kobylak │ │ digital 3731de159fSAdriana Kobylak │ │ signatures 3831de159fSAdriana Kobylak │ │ │ 3931de159fSAdriana Kobylak │ ├──────┘ 4031de159fSAdriana Kobylak │ ▼ 4131de159fSAdriana Kobylak │ │ 4231de159fSAdriana Kobylak │ │ Write 4331de159fSAdriana Kobylak │ │ image to 4431de159fSAdriana Kobylak │ │ flash[*] 4531de159fSAdriana Kobylak │ │ │ 4631de159fSAdriana Kobylak │ ├─────┘ 4731de159fSAdriana Kobylak │ ▼ 4831de159fSAdriana Kobylak │ │ 4931de159fSAdriana Kobylak │ Success │ 5031de159fSAdriana Kobylak │◀────────────────────────────────────────────────┤ 5131de159fSAdriana Kobylak │ │ 5231de159fSAdriana Kobylak │ ● 5331de159fSAdriana Kobylak ▼ 5431de159fSAdriana Kobylak BMC Reboot is 5531de159fSAdriana Kobylak required to boot 5631de159fSAdriana Kobylak from the updated 5731de159fSAdriana Kobylak image 5831de159fSAdriana Kobylak 5931de159fSAdriana Kobylak``` 60*f4febd00SPatrick Williams 61*f4febd00SPatrick Williams- [1] 62*f4febd00SPatrick Williams [Software D-Bus Object](https://github.com/openbmc/phosphor-dbus-interfaces/tree/master/yaml/xyz/openbmc_project/Software) 6331de159fSAdriana Kobylak- [*] In a static layout configuration, the images are stored in RAM and the 6431de159fSAdriana Kobylak content is written to flash during BMC reboot. Reference the update and 65*f4febd00SPatrick Williams shutdown scripts provided by 66*f4febd00SPatrick Williams [initrdscripts](https://github.com/openbmc/openbmc/tree/master/meta-phosphor/recipes-phosphor/initrdscripts) 67