summaryrefslogtreecommitdiff
path: root/config
AgeCommit message (Collapse)Author
2024-02-06config: Add Dell Latitude E5530Nicholas Chin
Tested by Martin Dawson. Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
2024-02-06config: Add Dell Latitude E6520Nicholas Chin
Tested by Martin Dawson. Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
2024-02-06config: Add Dell Latitude E6420Nicholas Chin
Tested by Martin Dawson. Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
2024-01-28update pico-serprog to Riku's new revisionLeah Rowe
Riku introduced three new patches: * Add support for multiple chip selects. This allows you to control multiple chips from the same clip, on systems with dual flash setups, at least theoretically. * Enable pull-up on unused chip selects - pull them high so that chips you connect that to are deactivated while flashing the target chip. This could be used on thinkpad W541 for instance, where miso/mosi have 0ohm between them via the two flash ICs. You could pull the other chip select high. * Documentation for the above, in the pico-serprog readme. This goes in tandem with a patch from Riku, present in the recently integrated flashprog project, namely: commit ddb6d926783d4f9cbee04c7392718ed8f89daa0e Author: Riku Viitanen <riku.viitanen@protonmail.com> Date: Mon Jan 15 19:15:49 2024 +0200 serprog: Add support for multiple SPI chip selects This functionality will therefore be present in the next release of Libreboot. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-28flashprog: apply the good old MX25 workaroundRiku Viitanen
2024-01-27remove remaining flashrom remnants (use flashprog)Leah Rowe
we use flashprog now! Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-27update parabola dependencies for flashprogLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-27update arch dependencies for flashprogLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-27update trisquel dependencies for flashprogLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-27update debian dependencies for flashprogLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-27config/git: use flashprog instead of flashromLeah Rowe
Nico Huber is the rightful project lead. I do not support the coup that occured within the flashrom project. Nico has always been of great service to the Libreboot project, by virtue of his work on both coreboot and flashrom. Nico Huber was unfairly removed from the flashrom project infrastructure, due to unfounded accusations hurled at him by flashrom's new project lead. The accusations are unfounded because no evidence was given. Use Nico Huber's fork, named flashprog. We will work with flashprog from now on. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-26Libreboot 2024012620240126Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-25update config/git/docs to latest revsLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-25dell/e6*30: use generic PS2K/PS2M EISAID stringsLeah Rowe
CONFIG_PS2M_EISAID. this is a a string used for the identifier on the mouse, in ACPI. CONFIG_PS2K_EISAID this is used for the keyboard. IASL comes back with this build error: dsdt.asl 1884: Name(_HID, EISAID("DLLK0534")) Error 6045 - ^ EISAID string must be of the form "UUUXXXX" (3 uppercase, 4 hex digits) (DLLK0534) Change DLLK0534 back to PNP0303 and change DLL0534 back to PNP0F13. These are generic identifiers for PS/2 keyboard and mouse. Any generic driver will work with the onboard mouse/keyboard on these machines. They do not need to be changed. These are the default values anyway. Just leave them explicitly defined to the default values, for now; if these options are not set, coreboot will default to these values. This shouldn't break anything for the users. I've reported this to Nicholas Chin, author of those patches. Libreboot imported the new versions of E6430/E6530 board patches in the coreboot revision update, but the new (technically correct) values broke IASL, so I've decided to use the old values for now. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-25update coreboot/dell to same rev as defaultLeah Rowe
re-use the same patches, and drop the same patches. this tree uses hell's special ddr2 fix, which we apply for the dell latitude e6400. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-25coreboot/default: update coreboot to January 2024Leah Rowe
Base revision changed to: commit b6cbfa977f63d57d5d6b9e9f7c1cef30162f575a Author: Morris Hsu <morris-hsu@quanta.corp-partner.google.com> Date: Fri Jan 5 16:48:17 2024 +0800 mb/google/dedede/var/metaknight:Add fw_config probe for multi codec and amplifier Of note: Several out-of-tree ports have been adjusted to use the new SPD config style, where it is defined in devicetree. I manually updated the E6530 patch myself, based on the update that Nicholas did on E6430 (Nicholas will later update the E6530 patch himself, and I'll re-merge the patch). Several upstream patches now exist in this revision, that we were able to remove from lbmk. The heap size patch was reverted upstream, as we did, but see: https://review.coreboot.org/c/coreboot/+/80023 https://review.coreboot.org/c/coreboot/+/79525 Although we still disable the TSEG Stage Cache, ivy/sandy/haswell should be reliable on S3 now (leaving TSEG Stage Cache disabled, for now, anyway). Also included in upstream now: commit 29030d0f3dad2ec6b86000dfe2c8e951ae80bf94 Author: Bill Xie <persmule@hardenedlinux.org> Date: Sat Oct 7 01:32:51 2023 +0800 drivers/pc80/rtc/option.c: Stop resetting CMOS during s3 resume Further patches from upstream: commit 432e92688eca0e85cbaebca3232f65936b305a98 Author: Bill Xie <persmule@hardenedlinux.org> Date: Fri Nov 3 12:34:01 2023 +0800 drivers/pc80/rtc/option.c: Reset only CMOS range covered by checksum This should fix S3 on GM45 thinkpads. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21fam15h boards: define xtreeLeah Rowe
these should be using the rdimm tree for crossgcc, so define it explicitly. the build system creates a symlink too, but it's still best that we use it. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21coreboot/fam15h_udimm: define xtreeLeah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21fix amd mainboard configsLeah Rowe
in a build test, canoeboot 0.1 builds, but master doesn't, and neither does lbmk. i changed a few of them when doing the crossgcc build optimisation patches. i'm just copying the configs from there. unlike in the canoeboot version of this patch, i've re-enabled microcode updates in these lbmk configs. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21git.sh: support downloading dependency treesLeah Rowe
a tree can specify: tree_depend="treename" this will make the other tree be downloaded. this is used for coreboot trees, to ensure that dependency trees are downloaded, because trees can now re-use crossgcc from other trees. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21re-use crossgcc builds on the coreboot treesLeah Rowe
don't build crossgcc twice, especially if two coreboot trees use the same revision! Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21allow multitree projects to define xgcc treeLeah Rowe
let them specific it, rather than falling back to coreboot/default (can also be used for coreboot boards) Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21u-boot: don't define xarch in defaultLeah Rowe
it's only needed for each board Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21coreboot/*/target.cfg: don't define xarchLeah Rowe
it's defined per board Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21grub/target.cfg: move --disable-werrorLeah Rowe
i meant to push it in configure args, not bootstrap Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21coreboot/fam15h: disable -Werror on binutils 2.32Leah Rowe
work around newer build issues, on very bleeding edge distros (disable treating warnings as errors) Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-21grub: use --disable-werror on ./configureLeah Rowe
work around build issues on very bleeding edge distros Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-20dependencies/arch: add pandoc to dependenciesLeah Rowe
pandoc is required by the grub build system, when running autoconf at the start of the build process Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-18GRUB: insert only 1 keymap per board, in cbfsLeah Rowe
There is no need to add multiple keymap files, because GRUB can load keymaps from CBFS. The current build logic is designed to avoid building multiple GRUB binaries, which are expensive computationally because each one would then have to be compressed for each board. This patch provides the best of both worlds: less space used in flash like in the old lbmk design (1 keymap per board), but retaining the current build speeds and therefore not re-introducing the slowness of lbmk's previous GRUB build logic. The grub.cfg file has been modified, accordingly. It now only loads a keymap.gkb file from CBFS, by default. It does this, only if that file exists; if not, GRUB already defaults to US Qwerty layout anyway. ALSO: compress all keymap gkb files with xz -6 GRUB automatically decompresses files when accessed. This results in about 2KB of flash space saved in CBFS. Here is real-world data, showing the increased flash space: < fallback/payload 0x3eb80 simple elf 548821 none < keymap.cfg 0xc4bc0 raw 16 none < (empty) 0xc4c00 null 11633316 none --- > fallback/payload 0x3eb80 simple elf 546787 none > keymap.gkb 0xc43c0 raw 344 none > (empty) 0xc4540 null 11635044 none This was taken by diffing the cbfstool "print" output, both before and after. The *after* result is with this change. 11633316. In this example, 1728 bytes have been saved. Therefore, with compression taken into account, this patch saves about 1.7KB of space in CBFS. This change means that lbmk can now scale to support hundreds of keymaps, without increasing the amount of flash space used, in each given image. Since the keymap files are compressed in lbmk.git, in advance, we spend no additional time on compression at build time. The resulting change in build speed in negligible. Adding your own keymap.gkb file was already possible, for changing the keymap in libreboot images, if you didn't want to change the memdisk (and thus re-compile grub.elf). Now, this is the default behaviour, and the only way to do it. It's much more efficient. The original keymap files can be restored, by running unxz. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-14config/dependencies/trisquel: replaced package from ttf-unifont to fonts-unifontWilliam Goodspeed
ttf-unifont no longer exists on trisquel aramo. --- Package: fonts-unifont Breaks: ttf-unifont (<< 1:13.0.02-1) Replaces: ttf-unifont (<< 1:13.0.02-1) --- Signed-off-by: William Goodspeed <goodspeed@anche.no>
2024-01-12REMOVE MAINBOARD: lenovo x201Leah Rowe
with neutered ME, fan control fails. while there are ways to mitigate it, many users will not, and will likely see their system overheat, which is very dangerous. this bug (failed fan control on neutered ME) only affects arrandale machines such as lenovo x201. the newer machines are not affected by this. other arrandale machines will probably not be added to libreboot because of this, or they will be subject to further testing. Signed-off-by: Leah Rowe <leah@libreboot.org>
2024-01-10NEW MAINBOARD: HP EliteBook 820 G2Leah Rowe
This is of Broadwell platform, one generation above Haswell. Of note: this uses HP Sure Start. Although the flash is 16MB, our CBFS section (and IFD configuration) assumes 12MB flash, so the final 4MB will be left unflashed on installation, after blanking the private flash. The coreboot documents have more information about this. Some minor design changes in lbmk were made, to accomodate this port: Support for extracting refcode binaries added (pulled from Google recovery images). The refcode file is an ELF that initialises the MRC and the PCH. It is also responsible for enabling or disabling the Intel GbE device, where Google does not enable it, but lbmk modifies it per the instructions on the coreboot documentation, so as to enable Intel GbE. Google's recovery image stores the refcode as a stage file, but coreboot changed the format (for CBFS files) after 4.13 so coreboot 4.13's cbfstool is used to extract refcode. This realisation made me also change the script logic to use a cbfstool and ifdtool version matching the coreboot tree, for all parts of lbmk, whereas lbmk previously used only the default tree for cbfstool/ifdtool, on insertion and deletion of vendor files - it was 81dc20e744 that broke extraction of refcode on google's recovery images, where google used an older version of cbfstool to insert the files in their coreboot ROMs. A further backported patch has been added, copying coreboot revision f22f408956 which is a build fix from Nico Huber. Iru Cai submitted an ACPI bugfix after the revision lbmk currently uses, for coreboot/default, and this fix is needed for rebooting to work on Linux 6.1 or higher. This patch has been backported to lbmk, while it still uses the same October 2023 revision of coreboot. Broadwell MRC is inserted at the same offset as Haswell, so I didn't need to tweak that. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-31Bump GRUB to 2.12 releaseLeah Rowe
Actually, it's 2 commits after 2.12, because there was a patch added afterwards, fixing a build issue on Gentoo. These changes are present in GRUB 2.12, relative to the revision that we previously used on lbmk: * b835601c7 build: Include grub-core/extra_deps.lst in dist * 8961305b4 Bump version to 2.13 * 5ca9db22e Release 2.12 * 477a0dbd5 efi: Add support for reproducible builds * dcc1af5d6 efi: Generate stack protector canary at build time if urandom is available * e424e945c efi: Initialize canary to non-zero value * 7c8ae7dcb gfxmenu/gui_image: Fix double free of bitmap * 63fc253fc commands/acpi: Fix calculation of ACPI tables addresses when processing RSDT and XSDT * f20123072 libnvpair: Support prefixed nvlist symbol names as found on NetBSD * a13df3d15 bootstrap: Don't check gettext version * 6d2aa7ee0 kern/mm: Use %x and cast for displaying sizeof() * b3d49a697 configure: Add RPATH for freetype on NetBSD * 52dbf66ea configure: Add *BSD font paths * 2d6a89980 autogen: Accept python3.10 as a python alternative * 3d4cb5a43 build: Rename HAVE_LIBZFS to USE_LIBZFS * e4dbe5cfa gnulib: Tolerate always_inline attribute being ignored * 31e47cfe2 util/editenv: Don't use %m formatter * f5905f656 osdep/bsd/hostdisk: Fix NetBSD compilation * cb1824a87 osdep/generic/blocklist: Fix compilation * 2f3faf02c disk/diskfilter: Remove unused variable * 3815acc57 build: Tolerate unused-but-set in generated lexer/bison files * c129e44e7 loader/i386/bsdXX: Fix loading after unaligned module * 89fbe0cac grub-core/Makefile.am: Make path to extra_deps.lst relative to $(top_srcdir)/grub-core * 353beb80c util/grub-install: Move platdir path canonicalization after files were copied to grubdir * f18a899ab util/grub-mkstandalone: Ensure deterministic tar file creation by sorting contents * ed74bc376 util/grub-mkstandalone: Ensure stable timestamps for generated images * 069cc46c9 net/http: Fix gcc-13 errors relating to type signedness * e7a831963 templates: Reinstate unused version comparison functions with warning * 3f9eace2d util/grub-install: Delay copying files to {grubdir,platdir} after install_device was validated * e60015f57 efi: Set shim_lock_enabled even if validation is disabled * e35683317 docs: Improve bli module documentation * 57059ccb6 bli: Add explicit dependency on the part_gpt module * 154dcb1ae build: Allow explicit module dependencies * 17c68472d kern/ieee1275/init/ppc64: Display upper_mem_limit when debugging * 5f8e091b6 kern/ieee1275/init/ppc64: Fix a comment * dc569b077 kern/ieee1275/ieee1275: Display successful memory claims when debugging * 0ac3d938a loader/powerpc/ieee1275: Use new allocation function for kernel and initrd * 2a9a8518e kern/ieee1275/cmain/ppc64: Introduce flags to identify KVM and PowerVM * 679691a13 kern/ieee1275/init/ppc64: Rename regions_claim() to grub_regions_claim() * d49e86db2 kern/ieee1275/init/ppc64: Add support for alignment requirements * fe5d5e857 kern/ieee1275/init/ppc64: Return allocated address using context * ea2c93484 kern/ieee1275/init/ppc64: Decide by request whether to initialize region * 0bb59fa9a kern/ieee1275/init/ppc64: Introduce a request for regions_claim() * aa7c13226 fs/xfs: Add large extent counters incompat feature support Most notable in the above log, that are beneficial to Libreboot users, are: aa7c13226 which improves XFS support (large extents), which is default now on many setups. ed74bc376 which introduces more stable timestamp generation when using grub-mkstandalone. this is what lbmk uses to generate grub.elf, whereas grub previously only implemented this fix on mkimage which we don't use f18a899ab which ensures deterministic (reproducible) tar file creation by sorting contents (file names / directories). this is done by sorting the entries f5905f656 which improves grub build system reliability on netbsd and openbsd systems - useful for us because an ambition of lbmk is to port the build system to run on bsd systems, and we will still want grub - several other of the changes here are beneficial for BSD aswell, all or most of them by Vladimir Serbinenko Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-30update/trees: support custom make/autogen argumentLeah Rowe
this is now used in grub, for the FS_PAYLOAD_MODULES option in the make command lbmk should generalise as much logic as possible. in some parts of it, logic is hurrently hardcoded, specific to a given project that lbmk uses, but lbmk is essentially a source-based package manager, like what you might find on a small linux distro, so we need to try to be as generic as possible. lbmk is the "build system of build systems", so it has to work generically with as many of them as possible Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-30update/trees: generic cmake handlingLeah Rowe
it is no longer hardcoded just to be handled for uefiextract. it is now defined as cmakedir in target.cfg, for a single or multi tree project. if multi tree, it is applied to the specific tree, and has to be defined per tree the way it works is: as per cmakelist, a project will define which directory is to be built, and it will then generate a makefile in the main source tree (the build tree in cmake language, where the main CMakeLists.txt file exists) when the makefile has been generated, the project is then treated like any other project. the way cmake works, if a makefile has already been generated by it, in a given directory, running it again will fail and not affect anything; if it fails but the makefile doesn't exist, then something is wrong, but if the makefile does exist, then it's all fine and nothing happens at present, this is only used for uefiextract, which is part of src/uefitool Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-30update/trees: dont hardcode autoconf/bootstrap argLeah Rowe
at present, the bootstrap and configure script is only directly executed for grub, because grub is the only project that uses them in lbmk however, when i start adding linuxboot support, i will have to start building a lot of projects, some of which make use autoconf and bootstrap scripts e.g. ./bootstrap --foo ./configure --bar the "bootstrap" script is often used on GNU programs, because they like to over-engineer absolutely everything Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-28disable u-boot on x86 qemuLeah Rowe
it's not well-tested and currently doesn't build this is for later remove for now Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-27update/trees: further simplify crossgcc handlingLeah Rowe
arch no longer needs to be set, on multi-tree projects, and it has been renamed to xarch the new behaviour is: if xarch is set, treat it as a list of crossgcc targets and go through the list. set the first one as the target, for what lbmk builds, but build all of the defined crossgccc targets crossgcc_ada is now xlang, and defines which languages to build, rather than whether to build gcc-gnat Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-25coreboot: update hp elitebook configsLeah Rowe
i had to run make-oldconfig on all of them, because of the port that riku added the other day. lbmk doesn't use defconfigs, it uses full configs, so we have to make sure they're kept in sync this patch is the result of running the following command in a fresh clone of lbmk: ./update trees -u coreboot i should probably switch to defconfigs. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-24Add HP 8300 CMT portRiku Viitanen
Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com>
2023-12-24fix flashrom build error (implicit enum typecast)Leah Rowe
Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-23git/pico-serprog: update revision againLeah Rowe
riku committed a new patch, that fixes build errors when PICO_DEFAULT_LED_PIN is not defined, on a given board. in such cases, riku's new patch just disables handling of the status LED, but LEDs continue to work on boards where it is defined. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-23git/pico-serprog: update revisionLeah Rowe
the new revision sets drive level to 12mA instead of the default 4mA. 16-20mA is the maximum tolerated level for data lines, on most flash ICs, so 12mA is relatively safe. riku did this a while ago, tested on pico pi. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-23dell/e6400nvidia_4mb: new configuration (nvidia)Leah Rowe
the e6400_4mb target has libgfxinit and (if seabios) vgarom initialisation, but has issues on the nvidia model, even when using nomodeset. with this target, e6400nvidia_4mb, only the vgarom initialisation is used, libgfxinit is disabled. on nvidia models, this one should work a little bit better. specifically: nouveau crashes on this machine, with libreboot installed, but you can use nomodeset. however, when libgfxinit is also enabled, nomodeset no longer works properly. so this target disables all video initialisation in coreboot. only seabios will initialise anything video-related, by executing the vga option rom. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-23don't delete microcode updates in rom imagesLeah Rowe
at present, lbmk can remove microcode updates on images for a given target, if the target specifies microcode_required="n" in target.cfg lbmk then provides images with microcode, and images without, in a given release. although the user can also remove them manually, this just makes it a bit more convenient, for those users who do wish to run without the updates. this functionality is provided only on those platforms where no-microcode is tested. well, this behaviour implements a compromise on libreboot policy, which is to always include microcode updates by default. see: Binary Blob Reduction Policy the *canoeboot* project now exists, developed in parallel with libreboot, and it ships without microcode updates, on the same targets where lbmk also handled this. running without microcode updates is foolish, and should not be encouraged. clean up lbmk by not providing this kludge. the libreboot documentation will be updated, telling such users to try canoeboot instead, or to remove the update from a given libreboot rom - this is still possible, and mitigations such as PECI disablement on GM45 are still in place (and will be kept), so that this continues to work well. Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-21rename hp elitebook ec fw after rom familiesRiku Viitanen
this affects 8460p and 8470p only, as the others' updates aren't common across different boards Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com>
2023-12-21document hp laptop rom familiesRiku Viitanen
Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com>
2023-12-21build/roms: remove modify_coreboot_rom()Leah Rowe
don't handle "romtype" at all, in board target.cfg files add /dev/null as pike2008 rom on amd boards. this serves the same purpose, adding them as empty vga roms, to add an empty rom in cbfs. pike2008 cards cause seabios to hang, when their oproms are executed, so we insert a fake rom on i945 thinkpads, use the coreboot config option: CONFIG_INTEL_ADD_TOP_SWAP_BOOTBLOCK when set, this enables the same bootblock copy, for use with bucts. these two cases, namely pike2008 roms and i945 bootblock copies, no longer need to be handled in code Signed-off-by: Leah Rowe <leah@libreboot.org>
2023-12-21hp8460pintel: actually enable vbtRiku Viitanen
Signed-off-by: Riku Viitanen <riku.viitanen@protonmail.com>
2023-12-21update coreboot configsLeah Rowe
the x220 edp patch invalidated lots of configs, so i did: ./update trees -u coreboot this is the resulting patch Signed-off-by: Leah Rowe <leah@libreboot.org>