I like CBFS and hope all boards can use it soon. I'm afraid that if we're not careful we'll bring the instability of v3 to v2 as we try to bring back what we've learned.
I'd like to see an orderly transition to CBFS, from simplest to most complex. I think fixed areas, romstraps, etc. should be last.
Simple things that don't work yet in CBFS: 1. Normal/Fallback/Failover - a. There are comments in the code that failover should disappear. Either failover should disappear or the comments should. b. Normal should be stored in CBFS, not concatenated into the bootblock. 2. Delete - Delete works on the assumption that you want contiguous files a. I'm not convinced that fixed CBFS areas will be simpler than ldscripts. I consider them both ugly. 3. PCI ROM optimization. There should be some optimization for ROMs. a. Possibilities: 1. Traverse ROM once and set a flag in devices which have ROMs 2. Traverse ROM and keep a list of ROMs 3. .... 4. Geode ROM handling in CBFS. a. It would be nice to change the code so that it doesn't have to be in a fixed location (maybe via a copy to RAM?)
I guess the short version is that I'd like to keep all the ugly details in the bootblock and peel them out one at a time. I think we'll break fewer boards that way. I feel like we've been lucky to catch some of the little glitches lately, and we've had help from people being willing to bisect.
Thanks, Myles