On Wed, Aug 23, 2017 at 7:00 AM, Taiidan@gmx.com Taiidan@gmx.com wrote:
Just because a board lacks active developers doesn't mean that no one is using it. As a layman I simply can't understand as to how all these seemingly insignificant improvements such as CBMEM in ramstage make it worth removing almost every compatible board from the source, including nearly all the models that still have an open source init.
First, I should correct you meant to say "CBMEM (enablement) in _romstage_".
As it appears, nobody yet explained on this thread the significance of EARLY_CBMEM_INIT, so here is my take on it:
The major features EARLY_CBMEM_INIT implies are: non-const global variables, CBMEM console, timestamps and USB / EHCI debug are available for use in romstage. I claim all of those have been absolute necessities to achieve the boottimes (and coreboot support in general) we have eg. with the popular lenovo laptops using ivybridge.
For old platforms, I mostly agree EARLY_CBMEM_INIT would not bring anything new there. You get instrumentation data if you really wanted to tune up the boot speed, but that's about it. As someone already explained, it's all about the maintenance burden. We probably had 15 variations of how to transition from romstage to ramstage and all the things involving CAR teardown and CBMEM init. Maybe we are down to 5 once LATE_CBMEM_INIT is gone?
Further on, I anticipate and hope that RELOCATABLE_RAMSTAGE becomes compulsory soon as well.
HTH, Kyösti