1 comment:
Patch Set #1, Line 10: location across early stages, and not necessarily within the
The semantics of . […]
This came about from adding a bootblock/romstage implementation, which I gathered you wanted (but I'm somewhat confident others will too).
If the hybrid-romstage implementation was the only one available, this could be simplified. However this solves a big problem for the bootblock/romstage scenario. In a CAR-based bootblock/romstage system with postcar, the bss region vanishes once CAR is torn down. In PCO's case, using bss means I need to burn DRAM, then reserve it so the OS doesn't use it.
So this purpose here isn't to share bss between stages. It's only to reuse the same DRAM in romstage as was used in bootblock (and bss gets re-zeroed). So all this change does is it allows me to position bss manually using early_ram.ld (CB:35035), the same way car.ld does for ENV_ROMSTAGE_OR_BEFORE.
Now, FWIW, this implementation (i.e. the stack ending with CB:37486 PS21) has romstage still xip when using a bootblock/romstage. I noticed that I'm able to run successfully using NO_XIP_EARLY_STAGES, with romstage running at the default 02000000. However that DRAM isn't getting reserved. So I guess NO_XIP_EARLY_STAGES probably assumes early_stage programs and their data also just vanish once CAR is torn down.
Would you prefer the way I have it, or making NO_XIP_EARLY_STAGES compatible with Picasso?
To view, visit change 37487. To unsubscribe, or for help writing mail filters, visit settings.