mirror of
https://github.com/linuxboot/heads.git
synced 2025-02-01 00:45:25 +00:00
2ba56d1304
Update Purism coreboot to 24.02.01-Purism-1. Remove CFLAGS overrides when building coreboot. These overrides break 24.02.01, which added (and needs) --param=min-pagesize=1024. This has happened repeatedly in the past since Heads has to duplicate coreboot's CFLAGS if it overrides them. Specifically, the build fails with this error: src/commonlib/include/commonlib/endian.h:27:26: error: array subscript 1 is outside array bounds of 'void[0]' [-Werror=array-bounds=] 27 | *(uint8_t *)dest = val; | ~~~~~~~~~~~~~~~~~^~~~~ In function 'setup_default_ebda': cc1: note: source object is likely at address zero That's because coreboot is attempting to write to EBDA at physical address 0x40e, just above 1024. That is a valid address for x86, but it's too close to 0 by default for GCC, --param-min-pagesize=1024 allows writes to physical addresses above 1024. coreboot shouldn't need any of the usual Heads CFLAGS overrides for reproducibility; it is already reproducible. Fix indentation in modules/coreboot. Make accepted it before because the indented lines followed a variable assignment, so they couldn't be part of a recipe. That assignment is now gone, so they're now interprted as part of a recipe for the `.configured` target just above, they should not be indented. Add nss to flake.nix, needed as of 24.02.01. Update Librem coreboot configs for 24.02.01-Purism-1. Notably, the board Kconfig changed for Mini v2 in coreboot, so this is needed for correct builds. Signed-off-by: Jonathon Hall <jonathon.hall@puri.sm>