Attention is currently required from: Christian Walter, Werner Zeh, Yu-Ping Wu. Julius Werner has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/59682 )
Change subject: cbfs: Remove deprecated APIs ......................................................................
Patch Set 4:
(1 comment)
Patchset:
PS2:
With a bit of digging it turned out that on Elkhart Lake FSPS somehow disables BIOS flash caching (c […]
Ah great, that is good news. That sounds like a pretty simple explanation then, and hopefully a pretty simple fix. I was worried there might be something more sinister going on. (FWIW I was looking into this mirror_payload() thing, which was added back in CB:5305 but somehow never really used, and I took it out after checking with Aaron in https://mail.coreboot.org/hyperkitty/list/coreboot@coreboot.org/thread/KDE62... , but I never really understood how that worked and whether it was still needed on modern SoCs. Sounds like it's not though, and your issue was just that the caching got incorrectly disabled.)
So are you okay with me pushing this while you try to find a fix for Elkhart Lake? FWIW, if nothing else helps it would be possible to do payload mirroring specifically for that SoC by overriding boot_device_ro() in a clever way. But that would be a pretty ugly hack and just working around the actual issue, fixing the MTRR would definitely be the better option.