Aaron Durbin has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/31936 )
Change subject: [RFC] util/sconfig: Drop topology from early static tree ......................................................................
Patch Set 5:
Patch Set 5:
(1 comment)
Patch Set 5: Code-Review+1
(1 comment)
As long as we don't identify devices by their full path, this makes absolute sense.
Why the Kconfig, though? I'm eager to find out what Jenkins has to say :)
We need topology in romstages as long as we use some derivative of pcidev_on_root() to find node configs. While I don't like it, some bootblocks seemed to require static devicetree too. I would like to exclude static.c from bootblock-y, smm-y and maybe postcar-y too.
Kconfig is introduced to allow make the change gradually.
Can you please provide examples of the requirements? One thing I know of is that we have some configuration sitting in device tree that we take advantage of for configuration of the system early. We typically just need those values. This sort of ties into Nico's CL where we could just reference the one object needed and get the chip info. With this change it should be struct device and whatever chip info struct. We could make struct device smaller even if we wanted... or we generate aliases for the chip info objects themselves. That last part is slightly different than what Nico was proposing in his CL.
What sort of requirements do we think we have? - alias a struct device by name -- under what conditions? We should fill this one out as I'm not sure of all the cases. One of them is totally the code that is written that just has the one device that tries to locate. - having config data early (bootblock, etc) but remove the bloat from the full device tree. In many of these scenarios we don't need the device itself. We just need the config object.
Anything else?