[The previous email got chopped. This is a re-send.]
Hi all,
I have a 16 MB BIOS flash on a fsp_baytrail based design.
I tried expanding the CBFS to fill the whole space, but found that to cause a 10-15 sec boot delay.
The offending code appears to be in cbfs_locate() in lib/cbfs.c: if (memcmp(file.magic, CBFS_FILE_MAGIC, sizeof(file.magic))) { offset++; offset = ALIGN_UP(offset, CBFS_ALIGNMENT); continue; }
In SeaBIOS, the equivalent code does a break instead of a continue.
I'n not terribly familiar with the design goals of the CBFS.
What is the purpose behind continuing if a bad entry is encountered? It appears that a 'bad' entry only occurs at the end of the CBFS.
Thanks, Ben