Wim Vervoorn has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/36545 )
Change subject: lib/cbfs: Add fallback to RO region to cbfs_boot_locate ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/36545/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/36545/1//COMMIT_MSG@11 PS1, Line 11: static files that are not intended to be updated to the RW regions.
That sound like you want to put multiple files that are expected to be in the RW region into the RO […]
First of all, I am aware that the RO area is intended to be fixed so the items that are there are not intended to be updated. This solution intends to make this a bit more flexible though.
The reason to even consider this is the fact that for the board we want to make maximum space available for the payload. In this case, the payload is most sensitive to changes over time. So this is priority #1 and development shouldn't be constrained when not needed. If there is an important reason it will be possible to put additional effort into this to reduce size.
So what we will be doing is start out by putting all items you would expect into the RO partition and not duplicate them into RW.
For some of the components like the logo, the microcode, and some customer-specific binaries this will mean they will only be there and will not be updated at all. (In this case, the OS image is controlled and will contain the microcode updates).
The other components, like romstage and ramstage, can still be updated when needed by putting them in the RW region. (If it's there the RO copy won't be used).
So what this solution provides for us is: 1) Additional space in flash because of "static" items that are not duplicated to RW regions 2) Additional space for the payload during the initial part of the lifetime of the product. When needed all components can still be updated as normal at the expense of additional effort to reduce payload size to make the updated components fit in RW.