On Mon, Nov 16, 2015 at 2:09 PM, Stefan Reinauer email@example.com wrote:
- Ben Gardner firstname.lastname@example.org [151116 19:32]:
[The previous email got chopped. This is a re-send.]
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.
Sounds like your CBFS file got corrupted. Anything you can share about your build (e.g. log, source code) will raise the chance of getting this fixed.
Are you running without ME firmware? What do your sections look like in the firmware descriptor?
Yes, I am using the ME that came with the 'Gold 4' FSP. The regions are as follows.
FLREG0: 0x00000000 Flash Region 0 (Flash Descriptor): 00000000 - 00000fff FLREG1: 0x0fff0140 Flash Region 1 (BIOS): 00140000 - 00ffffff FLREG2: 0x013f0001 Flash Region 2 (Intel ME): 00001000 - 0013ffff FLREG3: 0x00000001 Flash Region 3 (GbE): 00001000 - 00000fff (unused) FLREG4: 0x00001fff Flash Region 4 (Platform Data): 00fff000 - 00000fff (unused)
I think I found what may have been the issue, but I'm not sure. I had enabled "fast boot" without fixing the "Virtual ROM Size", which was set to 8 MB instead of 16 MB. Side note: I had started with building an 8 MB image before I figured out how to adjust the IFDT for 16 MB and my flash part, so that is likely where that mismatch came from.
I assume this overwrote an important part of the CBFS space when it saved the fast boot cache data That would "corrupt" the CBFS on subsequent boots and cause coreboot to iterate over the 14 MB empty space. I have since drastically changed the layout of the CBFS, so that may be why I can't reproduce the delay now.