Hi Patrick,
On Tue, Apr 28, 2009 at 01:25:42PM +0200, Patrick Georgi wrote:
Quite simple: There will be a generic header for everything that doesn't require special handling. And that header comes with a compression field, too.
I look at CBFS as a tool for storing named files in flash. I don't see a requirement to handle any files special, and as such I see the concept of special vs normal files as unnecessary complexity. It looks like we view things differently.
As for special handling: Payloads are stored in SELF format, and thus "special" Stages are internal to coreboot. Whatever helps coreboot is fine here. Option ROMs contain the vid/did as fields for faster retrieval.
I view all of the above as files to be stored in flash. Clearly, SELF is a better storage format than elf for coreboot purposes. However, I view a SELF file as just another file to be stored in CBFS. Same thing for Stages and Option ROMs.
Once we go the "use filenames to select" route, we're awfully close to the PRECOMPRESSED_PAYLOAD mess in coreboot-v2 configuration. I'd like to avoid that by keeping all matter related to compression within cbfs.
I can see an advantage of moving compression into CBFS. The cost is having CBFS know when to compress/not compress a given file. I guess I'm not sold on that cost.
-Kevin