summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-10-31GRUB: don't spew "Unknown key 0xff" in errorLeah Rowe
Faulty keyboards make GRUB unusable. Normally it happens when a user plugs in a faulty USB keyboard, but if it's the laptop keyboard, then GRUB becomes unusable and the user cannot boot anything. So, your laptop keyboard is a ticking timebomb if you use GRUB; with this patch, that's no longer the case. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-31coreboot/default: use alternative heap size fixLeah Rowe
My previous fix to revert didn't fix S3 on GM45, one of the platforms reported fixed by 78263; I'm merging that instead, at patch set 10. It is referenced by 78815/1 which was split from it, so merge that too (restores overrides of higher values, on certain platforms that we don't use yet). https://review.coreboot.org/c/coreboot/+/78623/10 https://review.coreboot.org/c/coreboot/+/78815/1 Accordingly, update configs to match the new default. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-31fix grub keyboard init on dell e6400 and e6430Leah Rowe
also, enable seabios_withgrub on e6400, but not grubfirst; right now, we also support dgpu which would brick on grubfirst. on my tested nvidia model, loading grub from seabios worked, so i'm going to re-add seabios_grubfirst functionality like in older libreboot revisions, enabled selectively on a given target. e6430 currently only has igpu support anyway, but i've done the same thing there, in anticipation of future dgpu support. e6400 and e6430 ec report scancode set 2 with translation by default, but only actually output scancode set 1 grub is trying to use scancode set 2 without scancode translation, so the key inputs get messed up fix it by forcing scancode set 2 with translation, but only on coreboot; other build targets on GRUB will retain the same behaviour as before courtesy goes to Nicholas Chin who inspired me, and helped me to fix this. tested on Nicholas's E6400 and E6430, and my E6400; Riku also tested it on non-Dell, as did I (some thinkpads), and all seems OK. The new behaviour in coreboot GRUB is essentially no different to that of SeaBIOS, which does the same. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-29add intel d945gclf_8mb support based on previous libreboot configsFederico Braghiroli
The original motherboard uses a 512kB flash chip size, however I replaced the original chip with a bigger one (8MB).
2023-10-29fix raminit/coldboot on dell e6400Leah Rowe
the patch included in this revision is pulled from: https://review.coreboot.org/c/coreboot/+/54024/2 contrary to hell's assertion of "not for merge", this does in fact work nicely on a dell e6400; nicholas chin tested on e6400 and found that those RCOMP values are the same nicholas was testing some errant modules that seemed to fail raminit in coreboot. in some cases, dell e6400 would regularly fail coldboot even though reboot was ok; this was therefore the cause of suspicioun for it being raminit-related with this patch from hell (Angel Pons, but knows as hell on IRC) it should fix boot issue on Dell Latitude E6400 Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-29add heci timeout for ibex peakLeah Rowe
patch courtesy of denis :) Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-29add lenovo x201 supportLeah Rowe
note: me6_update_parser needs to be written, similar to me7_update_parser, to generate the partition tables within intel me6 on lenovo bios updates. the current logic in lbmk goes like this: mkdir -p vendorfiles/cache/ and save your factory dump as: vendorfiles/cache/x201_factory.rom the build system has been modified, in such a way as to support extracting me.bin (which is the full one) and then neutering from this. this is done automatically, if the file is present, but you must first insert that file there, which means you'll need a dump of the original boot flash on your thinkpad x201 Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-29revert coreboot heap size patchLeah Rowe
the patch: https://review.coreboot.org/c/coreboot/+/78270 this has been reverted, because it caused s3 resume issues on most intel laptops in libreboot. i was going to merge this instead: https://review.coreboot.org/c/coreboot/+/78623 however, it's under review, and this doesn't change to the old behaviour; it keeps the new universal config, but changes the default we know the old logic works, so keep that for now. in fact, the offending patch was only merged to main in coreboot, one day before i recently updated coreboot revs in coreboot/default - i used a 12 october revision, the patch above is 11 october i then ran "./update trees -u coreboot" which updated the heap sizes back to the old defaults. this should fix s3 suspend/resume where it was broken, in the libreboot 20231021 release - a point release with this and a few other fixes is planned soon. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-28coreboot/fam15h: don't set microcode_requiredLeah Rowe
the logic for naming coreboot roms is based on whether cpu_microcode_blob.bin would exist in cbfs, and whether deletion was therefore successful. lbmk was naming nomicrocode on fam15h roms on this basis, but the microcode was being inserted as microcode_amd.bin and microcode_amd_fam15h.bin in the recent 20231021 release, the roms were exclusively labeled _nomicrocode in the rom names, but they do in fact contain microcode. i'm fixing it by telling lbmk *not* to delete microcode. if microcode_required is not set, or it's set to y, then only roms *with* microcode updates are provided; even if the rom doesn't actually contain it, lbmk will only label it _nomicrocode if that setting is set to n. i'm not bothering to add further complexity to the rom handling logic, because canoeboot now exists anyway (at website https://canoeboot.org/) which is my new version re-implementing the older, inferior version of libreboot so i'm going to: 1) document this as errata in the release 2) cross reference in the freedom status page 3) if someone still isn't happy, i'll say use canoeboot job done. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-25include/option.sh: fix i945 bootblock copyLeah Rowe
it wasn't being copied right the roms under elf/ were being copied, but not the ones under bin/ - i need to audit it further for now, i run modify_coreboot_roms from build/roms instead of update/trees so, the ones under elf/ no longer have bootblocks copied. it's only done in bin/ Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-25use mirrorservice.org for acpica downloadsLeah Rowe
princeton was down today. kent is probably more reliable. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-24build/roms: copy base rom again for u-bootLeah Rowe
when building only for u-boot, the current script works just fine. however, when building for other payloads in additional to u-boot, the final u-boot stage fails because other payloads are already inserted via cbfs. when we build u-boot, we do that last because we want u-boot setups to only be u-boot, nothing else. this patch enables qemu x86 to build properly with u-boot. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-23Merge pull request 'u-boot: Add qemu_x86_12mb build again' (#143) from ↵Leah Rowe
alpernebbi/lbmk:uboot-qemu-x86 into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/143
2023-10-23Merge pull request 'u-boot: qemu_arm64_12mb: Enable video console' (#142) ↵Leah Rowe
from alpernebbi/lbmk:uboot-qemu-arm64-video into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/142
2023-10-23u-boot: Add qemu_x86_12mb build againAlper Nebi Yasak
Add a U-Boot build for the qemu_x86_12mb board. The config is a copy of the upstream "coreboot" defconfig, but with OF_EMBED=y. Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
2023-10-23u-boot: qemu_arm64_12mb: Enable video consoleAlper Nebi Yasak
Add my upstream U-Boot series enabling video console support by default for QEMU ARM virtual machines. Similarly, enable the related config options for our builds using savedefconfig and olddefconfig. The resulting ROM can be booted with a command line like: qemu-system-aarch64 \ -machine virt,secure=on,virtualization=on \ -cpu cortex-a72 -m 1G \ -serial stdio -device VGA \ -device qemu-xhci \ -device usb-kbd -device usb-mouse \ -bios bin/qemu_arm64_12mb/*.rom Signed-off-by: Alper Nebi Yasak <alpernebiyasak@gmail.com>
2023-10-23Merge pull request 'arch, fedora38, parabola, void: install ↵Leah Rowe
python-setuptools' (#141) from Riku_V/lbmk:master into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/141
2023-10-22arch, fedora38, parabola, void: install python-setuptoolsRiku Viitanen
gru_bob fails to build without python-setuptools. this isn't a huge issue, because most users probably have it already as many other python programs depend on it too. that's probably why no one noticed until now, when i tried to do this on a fresh artix install uncontaminated by python. i also sorted and deduplicated the packages with 'sort -u'.
2023-10-22coreboot/default: don't use github on acpica fetch20231021fix2Leah Rowe
github's httpd b0rked the fuck out and i didn't want to wait for them to fix it (ssl cert error) before i continued a build. i now host the relevant acpica tarball on libreboot rsync, mirrored to princeton. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-2220231021hotfix: replace x_ with err in some places20231021fixLeah Rowe
keymaps weren't being set in keymay.cfg of cbfs, due to use of x_ in the rom script, and x_ doesn't handle quotes or spaces in arguments well. i'm going to remove use of x_ and xx_ (it's in my todo), for next release. for now, hot patch the release. i've gone through and replaced use of x_ with || err, in some places. not just the keymap.cfg command, but others too. in case there are more issues we missed. this commit is being tagged "20231021fix" and i'm using this tag to re-build the 20231021 release. i'll just replace the tarballs in rsync and add errata to the news page announcing the release. all i did was break peoples umlauts, i didn't brick their machines fortunately! very minor bug. anyway, x_/xx_ is a great idea, but sh isn't really designed for that style of programming. i'll go back to using just || err in the next release. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21Libreboot 2023102120231021Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21config/git/www and www-img: import libreboot.orgLeah Rowe
it's not used by anywhere else in lbmk, but the release build script will automatically download each project named as per file names in config/git/ this is a stupidly simply way to prove documentation in libreboot releases, and i've used current revisions corresponding to the Libreboot 20231021 release, for this 20231021 release of lbmk. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-21change default volname in grub.cfgLeah Rowe
it's been a while since we did encrypted /boot and the current name sucks. it's unlikely that anyone still uses it, but people will soon change the default assumed lvm name to grubcrypt and stick to that. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release: clean up temporary crossgcc dirLeah Rowe
clean it up after copying the tarballs i really hate how this logic is written, it's clunky but it should work; the only issue is that it's quite slow, and inefficient on use of disk space. however, i've not yet figured out how to reproducible add files to a tarball, once the tarball has been created, and i rely on sorting (of file names) when creating them. it's really not a problem because normal people won't use this script, only i or anyone who wants to test out the libreboot release infrastructure. this script is largely intended to *work* but i'm still annoyed by how crappy it is. i'll fix it after the Libreboot 20231021 release. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20don't use notabug for backup git reposLeah Rowe
notabug is unreliable, even as a backup. why, just today, it was offline! all day. i originally moved libreboot away from notabug, to codeberg instead, but kept the notabug account online, and i still push to it when it's online. however, notabug seems to be in a terminal state of neglect by its admins, so lbmk should not use it. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20move git_init to the main build scriptLeah Rowe
also, don't use x_ because it totally b0rks on these commands. handle exit status directly. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release: confirm vdir path on exitLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release: copy crossgcc to archiveLeah Rowe
everything downloaded, then tarballed, then built, now crossgcc is downloaded by coreboot. now extract, copy crossgcc tarballs, re-compress. TODO: simply add files to the archive, without re- compressing the whole thing. this is still more efficient than the old way: build everything, then clean and compress, making another build test on the release archive necessary; with this, there is still only one build test per release. with this, and the previous revisions dealing with submodules, the source archives should now be complete. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20always re-generate .git in lbmkLeah Rowe
in release archives, .git is excluded but the version and versiondate files are included. from these, the git history is re-created with the exact date (but not taking into account timezone, at present). in this way, lbmk will have git history in a release archive. some build systems, like coreboot, prefer that there be git history available, so this is a nice workaround on those build systems. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update flashrom revisionLeah Rowe
flashrom-stable isn't really going anywhere i'll decide at some future point what to do with flashrom. for now, just give latest rev Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20add backup git repo for flashromLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20Revert "config/git: don't download flashrom"Leah Rowe
This reverts commit bf4ea8102ad71bf07e0014c71579b7f3576c1dec.
2023-10-20config/git: add more backup reposLeah Rowe
the grub backup was the same gnu server i decided to host grub on codeberg, as backup (gnu links as primary is ok) Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20git/config: don't use github on main reposLeah Rowe
it's ok for now to use it as a backup. where only github was specified, i mirrored each given repository to codeberg as main repo for lbmk. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20config/git: don't download flashromLeah Rowe
it's not actually needed in lbmk flashrom can be downloaded separately by the user, if they want to flash their chip Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20git/config stm32-vserprog: don't fetch libopencm3Leah Rowe
it's downloaded by .gitmodules in stm32-vserprog Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release: delete *all* .git and .gitmodulesLeah Rowe
do it using find -exec this is more robust, and it will never need to be maintained over time (famous last words). this is done because now we download submodules for all git projects, so it's hard to predict. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20include/git: fix already-exists download messageLeah Rowe
i forgot to put the download path in printf Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20Revert "Revert "include/git: don't re-download single-trees""Leah Rowe
This reverts commit baa3d4f217863ff34c03d54c4014f53812ae12ec.
2023-10-20include/git: fix error caused by sh idiosyncrasyLeah Rowe
when [] is used right at the end of a function, or certain loops/subshells, some sh implementations will just return a non-zero exit Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20Revert "include/git: don't re-download single-trees"Leah Rowe
This reverts commit 8de7bc93397a95312b742bc5af733208f702f3a8.
2023-10-20include/git: don't re-download single-treesLeah Rowe
only do it if the target source tree does not exist Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20config/git: remove rpi-pico-tinyusb dependencyLeah Rowe
it's now downloaded automatically as a submodule, when downloading pico-sdk (which defines this module) Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20config/git: give pico-sdk its own fileLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/trees: don't run make if mode=fetchLeah Rowe
this fixes a regression caused by a previous revision Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20include/git: fetch submodules on one-tree projectsLeah Rowe
only fetch if .gitmodules exists in some cases, lbmk is compiling source trees that use submodules, without having downloaded them first. in all cases, those submodules are either optional, or the build system auto-fetches them (or if it can, we sometimes disable it as with grub and gnulib). this is a nice fallback behaviour, for situations where we forget to put submodules as dependencies under config/git (and disable submodules in the given project). with this change, release archives are guaranteed to be complete, sans crossgcc downloads in coreboot; this will be handled in a follow-up commit. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20include/git: only download submodules if possibleLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release .git/*: delete one more level upLeah Rowe
it couldn't hurt Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20update/release: don't hardcode project namesLeah Rowe
config/git has been re-arranged in a prior revision, ensuring that each file only refers to a main source tree defined within those files. the erstwhile "./build clean all" functionality is now once again possible in lbmk Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-10-20consistent naming for src/pico-serprogLeah Rowe
don't ever name it rpi-pico-serprog Signed-off-by: Leah Rowe <leah@libreboot.org>