Matt wrote…
That means that the SMMSTORE / NVRAM EFI variable storage is getting corrupted somehow. What platform is this on? I've seen some older platforms which are problematic, especially Braswell, but newer Core platforms seem to work reasonably well. There's also a new SMMSTOREv2 implementation you can try, but requires using the TIanocore UEFIPayload option as well as setting the branch/commit ID to `origin/uefipayloadpkg`
I then wrote some bits that aren’t relevant but led Matt to further write…
I've mostly been using SMMSTOREv2 w/UefiPayload+uefipayloadpkg on the CML devices I've been working on here (both Google and other boards), with no issues. But SMMSTORE (v1) should also work w/CorebootPayload. The SMMSTORE region is 64k-aligned and 256k so don't see any issues with the FMAP layout.
I have switched Tianocore to use the UEFIPayload option and specified the branch as origin/uefipayloadpkg and have enabled SMMSTOREv2. The unit boots to Ubuntu but each time it does it emits the following:
System BootOrder not found. Initialising defaults. Creating boot entry “Boot0003” with label “ubuntu” for file “EFI\ubuntu\shimx64.efi”
No amount of pressing [ESC] and saving options changes the behaviour. I’m assuming that this is the same issue as before and that the SMMSTORE is getting corrupted.
How to go about debugging it as I can’t get a debug build of the Tianocore payload in this configuration to build:
build.py... : error 7000: Failed to generate FV
build.py... : error 7000: Failed to execute command
- Failed - Build end time: 15:00:59, Dec.02 2020 Build total time: 00:00:53
mv: cannot stat ‘/home/xxxxxx/payloads/external/tianocore/tianocore/Build/UefiPayloadPkg*/*/FV/UEFIPAYLOAD.fd': No such file or directory
-Andy.