summaryrefslogtreecommitdiff
path: root/resources/scripts
AgeCommit message (Collapse)Author
2023-05-14blobutil/inject: use x86 top-aligned mrc offsetLeah Rowe
the old code was specifing an absolute offset for insertion of mrc.bin - cbfstool interprets anything above 0x80000000 as top-aligned memory address in x86, and anything below as an obsolute offset in the flash, like with the old number where a top-aligned address is provided to cbfstool, the absolute position is calculated for the flash, and cbfstool inserts it in the correct rom location the benefit of this change is that the absolute offset is now calculated automatically, which means that the code will be correct even if the flash size changes. for example, if 16MB flash is used whereas 12MB is currently the default an support haswell hardware coreboot does not provide anything readably like Kconfig, for extracting this value. it's baked into the source code of coreboot, so you have to find it. the correct location is hardcoded for each platform, and always the same on each platform, regardless of mainboard
2023-05-14remove errant code lines from last commitLeah Rowe
2023-05-14blobutil/inject: massively improved coding styleLeah Rowe
top-down function order, with specific functions for each type of blob. startup logic moved into main(), also split into smaller functions "write one program that does one thing well" blobutil is like that, and has this added philosophy: "write one function that does one thing well" during the course of this re-factoring, several bugs and issues were found, that are pre-existing. these will be corrected in follow-up revisions
2023-05-13modify/u-boot: cleaner coding styleLeah Rowe
similar to the previous revision
2023-05-13modify/coreboot: cleaner coding styleLeah Rowe
similar to the previous revision
2023-05-13modify/seabios: cleaner coding styleLeah Rowe
same as build/boot/roms
2023-05-13build/build/roms: simplify mkCoreboot() argumentsLeah Rowe
2023-05-13build/boot/roms: don't use subshells frivilouslyLeah Rowe
use make -BC instead of cd
2023-05-13build/boot/roms: remove errant debug lineLeah Rowe
i added this in the last revision it was put there to debug something that i fixed before pushing
2023-05-13build/boot/roms: simplify build_rom_images()Leah Rowe
2023-05-13build/boot/roms: use fast dd command for ich9m ifdLeah Rowe
bs 12k and count 1, rather than bs 1 and count 12k
2023-05-13build/boot/roms: don't run ich9gen twiceLeah Rowe
2023-05-13build/boot/roms: simplify moverom()Leah Rowe
2023-05-13build/boot/roms: remove unused legacy codeLeah Rowe
this cuttype is no longer used lbmk creates truncated me setups now, on ifd platforms
2023-05-13build/boot/roms: reduced code indentationLeah Rowe
2023-05-12build/boot/roms: split main() to topdown functionsLeah Rowe
the logic can now more or less be read chronologically
2023-05-12build/roms_helper: move logic into main()Leah Rowe
logic will be split from main into smaller functions, in follow-up commits
2023-05-10build/boot/roms_helper: further cleanupLeah Rowe
consolidated some for loops removed errant code
2023-05-10build/boot/roms: top-down function orderLeah Rowe
2023-05-10build/roms: general code style cleanupLeah Rowe
2023-05-10build/roms: fix faulty keymap list expansionLeah Rowe
2023-05-10build/boot/roms*: RFC 2646 complianceLeah Rowe
No more than 80 characters per line.
2023-05-09seabios: do normal config, disable oprom in vgaromLeah Rowe
previously, "normal" initmode relied on the vgarom-based seabios config, which enables option roms, but then lbmk would insert pci-optionrom-exec 0 for vgarom, and 2 for normal in libreboot, coreboot roms with "vgarom" in the filename do pci option rom execution from coreboot, and "normal" roms do execution from seabios(where seabios is the only payload provided on normal setups) this is because payloads like grub can also be used, on vgarom setups, where coreboot must handle oprom execution
2023-05-06blobutil: support downloading E6400 VGA ROMLeah Rowe
For Nvidia GPU models of Dell Latitude E6400
2023-05-06Import new util: bios_extractLeah Rowe
2023-05-04add fedora 38 unifont dependenciesArthegor
2023-04-23build/release/src: update blobutil target dirs20230423Leah Rowe
2023-04-23build/release roms: scrub kbc1126 ec firmwareLeah Rowe
2023-04-23blobutil/inject: fix bad removal patternLeah Rowe
2023-04-23blobutil/inject: handle HP KBC1126 EC firmwareLeah Rowe
2023-04-22Merge pull request 'parabola specific dependencies install script' (#13) ↵Leah Rowe
from Riku_V/lbmk:parabola into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/13
2023-04-22Add HP EliteBook Folio 9470mRiku Viitanen
2023-04-20chmod +x on blobutil/download scriptLeah Rowe
i downloaded this file from git manually at some point, when rebasing changes (i think it was the ec ones) the logic in the file is correct but i forgot to mark it executable without this commit, lbmk fails utterly, on all the newer intel boards
2023-04-16parabola specific dependencies install scriptRiku Viitanen
2023-04-15blobutil: support fetching KBC1126 EC (HP laptops)Leah Rowe
This is useful for e.g. HP EliteBook 2560p. In coreboot config, enable e.g. (for lbmk blobutil): CONFIG_KBC1126_FW1="../../ec/hp2560p/ec.bin.fw1" CONFIG_KBC1126_FW2="../../ec/hp2560p/ec.bin.fw2" In resources/blobs/sources you would have these entries: EC_url EC_url_bkup EC_hash
2023-04-14blobutil: support extracting ME from full ROMsLeah Rowe
In cases where the vendor update file contains a full ROM image encompassing IFD+GbE+ME+BIOS, blobutil was saving the *entire* ROM containing those, as me.bin. For example, if it's an 8MB ROM, blobutil would create a me.bin file that is actually the whole ROM containing: * Vendor IFD region * Vendor GbE(if it has one) * Vendor ME region * Vendor BIOS region This fix tries with -M and -O first. In this combination, me_cleaner shall extract me.bin (neutered) and save it. If that fails, then the normal method with just -O is tried, which by this logic would always be a lone ME image if it succeeds. I tested downloading ME images on existing boards with this, and it didn't break them, and this fixes the bug. This is done for HP 8200 SFF which Riku_V is adding to lbmk. I'm on IRC with Riku_V as I write this commit message! Super hot hotfix patch.
2023-04-13build/release/src: include gitclone in release20230413Leah Rowe
2023-04-10blob/download: don't use bad character in printfLeah Rowe
This fixes errors when running that script.
2023-04-09inject blobs into release archive and check their hashshmalebx9
2023-04-09hash roms with blobs before stripping themshmalebx9
2023-04-08add ich9utils back to utilsLeah Rowe
don't download it. keep it in lbmk. libreboot moved to codeberg for git hosting, and i didn't want to keep lugging around an extra git repo just for one tiny project.
2023-04-01blobutil: replace fake tabs with tabsLeah Rowe
always use tabs
2023-04-01build/dependencies: add p7zip (for blobutil lzma)Leah Rowe
2023-04-01blobutil: don't hardcode pathsLeah Rowe
2023-04-01blobutil/download: don't hardcode me.bin pathsLeah Rowe
Bruteforce it. Some executables are just using inno archival but some are simple LZMA. This patch handles both of them, and also the event where you have LZMA compressed files (even LZMA compressed files within LZMA compressed archives) within any inno/lzma compressed executable. It recursively scans inside a vendor update, to find a me.bin files for neutering with me_cleaner. This is in preparation for two new ports in Libreboot: * HP EliteBook 8560w * Apple MacBook Air 4,2 (2011) This script can literally be used with multiple vendors now. It is no longer specific just to Lenovo. I originally did this and other recent commits to the file, as one big commit, but I decided to split it all up into small commits.
2023-04-01blobutil/download: split into small functionsLeah Rowe
This patch makes it easier to determine which part does what.
2023-04-01blobutil/download: make more logic top-downLeah Rowe
Basically, I really like OpenBSD coding style, and I want to replicate this, somewhat, in shell scripts.
2023-04-01blobutil/download: move main logic to the topLeah Rowe
Top-down order is easier to read, for greater understanding. What's moved is initialisation. The glue that calls Build_deps and Download_needed still need to be at the bottom.
2023-04-01blobutil/download: move Build_deps to the topLeah Rowe
It's called first, so declare it first!
2023-04-01improved a commentLeah Rowe