Allow delete functional PNOR if only 1 PNOR is allowed

When a system only supports 1 PNOR (e.g. 64MiB chip), it shall define
ACTIVE_PNOR_MAX_ALLOWED to 1.
In this case, the PNOR code update shall delete the exising functional
PNOR to free the space for the new PNOR, otherwise there will be not
enough space for the new PNOR, and the code update will fail.

So change the logic in freeSpace() to allow delete functional PNOR if
ACTIVE_PNOR_MAX_ALLOWED is defined to 1.

Tested: Enable openpower-ubi on Romulus and verify PNOR code update
        succeeds.

Change-Id: Ib46c8a542d6baf02b60c3453686d7fe831468e6e
Signed-off-by: Lei YU <mine260309@gmail.com>
1 file changed
tree: 241335a5cafca6fdf9411ce4c7d775802fdef8d6
  1. m4/
  2. org/
  3. test/
  4. .clang-format
  5. .gitignore
  6. activation.cpp
  7. activation.hpp
  8. bootstrap.sh
  9. configure.ac
  10. generate-squashfs
  11. generate-ubi
  12. image_verify.cpp
  13. image_verify.hpp
  14. item_updater.cpp
  15. item_updater.hpp
  16. item_updater_main.cpp
  17. LICENSE
  18. MAINTAINERS
  19. Makefile.am
  20. msl_verify.cpp
  21. msl_verify.hpp
  22. msl_verify_main.cpp
  23. README.md
  24. serialize.cpp
  25. serialize.hpp
  26. utils.cpp
  27. utils.hpp
  28. version.cpp
  29. version.hpp
  30. watch.cpp
  31. watch.hpp
README.md

openpower-pnor-code-mgmt

OpenPower PNOR (Processor NOR) Code Management provides a set of host software management applications for OpenPower systems. The host firmware is stored on the PNOR chip. More information can be found at Software Architecture or Host Code Update

To Build

To build this package, do the following steps:

    1. ./bootstrap.sh
    2. ./configure ${CONFIGURE_FLAGS}
    3. make

To clean the repository run `./bootstrap.sh clean`.