Discussion: PNOR image verification (and possibly Virtual PNOR) on 64MiB flash

Lei YU mine260309 at gmail.com
Wed Nov 21 13:49:34 AEDT 2018

I would like to bring up this question again, as I got questions from system
vendors about PNOR code update.
For OpenPOWER systems, there are two kinds of PNOR, Virtual PNOR based on
ubi-fs, and static layout PNOR.

1. For Virtual PNOR, openpower-pnor-code-mgmt implemented all the features,
   1. Version management;
   2. Code update;
   3. Image verification.
2. For static layout PNOR, there is no support in openpower-pnor-code-mgmt.
   Only code update is imlemented by legacy org.openbmc.control.Flash.service.

To support version management and image verification, should we switch to use
virtual PNOR, or keep using static layout (and add code to implement the
missing features?)

See below email for some details and pros/cons of each way.

On Tue, May 29, 2018 at 5:28 PM Lei YU <mine260309 at gmail.com> wrote:
> This email is to discuss about PNOR image verification on 64MiB flash, and
> possibly it may involve Virtual PNOR feature.
> Background:
> Witherspoon has 128MiB flash, enables PNOR image verification and Virtual PNOR
> feature, implemented by openpower-software-manager.
> And it has the assumptions of:
> 1. Enough space for 2 PNOR images, thus physically 128MiB flash chip is
>    needed;
> 2. UBIFS on PNOR;
> 3. PNOR build in squashfs with signatures.
> Most OpenPOWER machines uses 64MiB PNOR flash and non-UBIFS, so I would like
> to discuss how to support PNOR image verification on smaller chips.
> We have two ways:
> 1. Change to use UBIFS and Virtual PNOR feature with
>    openpower-software-manager;
> 2. Keep current fixed layout, and added new code to support image
>    verification.
> For 1, it needs code change to assume there is only space for one PNOR image,
> then we get all the exiting features: PNOR version, image sign verification,
> code update and virtual PNOR.
> For 2, quite a lot of changes are needed:
> * Generate signature for the whole pnor image (in op-build);
> * Changes in openpower-software-manager to get version of PNOR;
> * Changes in openpower-software-manager to support code update of fixed PNOR
>    layout;
> So I would prefer 1, to make openpower-software-manager support single PNOR
> image.
> What do you think?

More information about the openbmc mailing list