summaryrefslogtreecommitdiff
path: root/resources
AgeCommit message (Collapse)Author
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-21Add HP EliteBook 2560pRiku 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-20Merge branch 'blobutil_kbc1126_ec'Leah Rowe
2023-04-20Re-disable GRUB payload for E6400Nicholas Chin
This reverts commit fe2b72035fb58d2c0792daa62aa346da710f04a3. The GRUB patch to fix the E6400 broke other systems and has been reverted. As a result, GRUB needs to be disabled again on the E6400 until a better fix has been created.
2023-04-20Revert "Fix GRUB handling of the E6400 keyboard"Nicholas Chin
This reverts commit 1497ae045104145de677fd151da4de6e92be4e5a. The blanket GRUB patch seems to break PS/2 keyboard handling across other platforms, so revert it.
2023-04-19Revert "dell/e6400: disable grub payload"Nicholas Chin
This reverts commit 7bc4dc32ac3e430e50ace3a2876cf501f647b89f. The E6400 keyboard should work in GRUB now so we can reenable it.
2023-04-19Fix GRUB handling of the E6400 keyboardNicholas Chin
This introduces a patch to grub which disables the coreboot specific handling, allowing PS/2 keyboards to be handled the same as i386-pc. However this alone breaks the keyboard in Linux, requiring coreboot to perform PS/2 initialization. I think GRUB may be restoring the original configuration of the PS/2 controller once it exits, and if coreboot doesn't initialize the controller then it's restored to the default state which Linux doesn't seem to like. I think the emulated keyboard interface provided by the EC on the E6400 behaves in a non-standard way that is incompatible with the old coreboot specific handling.
2023-04-19dell/e6400: disable grub payloadLeah Rowe
ps/2 internal keyboard faulty in grub target i386-coreboot, according to nic3-14159 normal i386-pc grub (bios grub) is fine, booted from seabios it is being investigated
2023-04-19Add configs for the Latitude E6400Nicholas Chin
Tested the 4MiB ROMs but not the 8 or 16 MiB ones. This uses the same board.cfg as the GM45 ThinkPads with an IFD+GBE from ich9gen. Known issues: - The internal keyboard does not work properly in GRUB. It seems like the keyboard controller is outputing set 1 (XT) scancodes, but GRUB is interpreting them as set 2 (AT) scancodes. This may also have something to do with scancode translation. However, the keyboard works fine in SeaBIOS and Linux. USB keyboards also work properly. - The subsystem IDs in the GBE region are hardcoded for a Thinkpad in ich9gen, though this doesn't seem to cause issues in Linux. The vendor IFD and GBE region do have some differences from the generated binaries, though they do not appear to be critical.
2023-04-17gm45: re-add mitigations for no-microcode setupLeah Rowe
libreboot will still include microcode updates by default, but mitigations against broken speedstep and reboot (when microcode updates are excluded) were removed following the merge with osboot this patch restores those mitigations; the patch reverts coreboot to older smrr code (which works fine, it isn't critical to use the new behaviour) and disables peci (pointless feature) i'll probably re-tool this later to apply the changes conditionally to whether ucode is present this is not a change in policy. policy says: include cpu microcode updates by default policy also says: libreboot must be configurable microcode removal via cbfstool remove -n, counts as configuration, and in practise is not possible on gm45 patches in current libreboot; this patch corrects that problem, allowing the machines to work somewhat well (same stability issues as before, like MCE errors resulting in kernel panic on high CPU/memory usage, but i digress) happy... hacking
2023-04-16parabola specific dependencies install scriptRiku Viitanen
2023-04-15set grub.cfg timeout to 30sLeah Rowe
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-14Port to HP Compaq 8200 Elite SFFRiku Viitanen
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-09remove daisy and peach boards (todo: re-add)Leah Rowe
bl1 bootloader blobs needed, and lbmk doesn't currently auto-download these for insertion, so their presence in the build system is problematic because people might build these and think they work - they don't, due to the lack of those bl1 blobs notes about this are included in lbwww, on the compatibility list. these can be re-added and tested later, when lbmk handles those bl1 bootloader blobs
2023-04-09remove veyron boards temporarily (will re-add)Leah Rowe
u-boot is known broken on these, last revision known working is 2021.01 can bisect and find the fix. i'm putting this on the issue tracker (new one on codeberg)
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-01remove d945gclf_16mbLeah Rowe
i overlooked this one. the normal one was removed, due to boot issues with the board. i need to look at this board before re-adding it to libreboot
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
2023-04-01blobutil: rename variables to make more senseLeah Rowe
for example, files being downloaded have nothing to do with the ME; they are merely compressed, and contain many files in addition to it
2023-03-25build/boot/roms: bugfix: unitialised variableLeah Rowe
When using e.g. -p grub in build/boot/roms, it will error out. This patch fixes that. E.g. ./build boot roms t440pmrc_12mb -p grub Seldom used feature and it was overlooked. Most people won't use the option that triggered the error.
2023-03-24blobs/inject: use correct offset for haswell mrcLeah Rowe
2023-03-22remove board: d945gclfLeah Rowe
these boards are almost impossible to find, and have always been buggy, it doesn't look like there will be any viable testing or development on it it's currently broken in master, on coreboot. if someone wants to fix and re-add to lbmk, they can do that use older libreboot releases to flash this board, if you wish (i *am* adding te the issue tracker, a note about this commit, with a view to re-adding it one day)
2023-03-20Added copyright line.andreas-hartmann
2023-03-20Added missing dependencies for Arch.andreas-hartmann
2023-03-19build/release: handle nvmutil20230319Leah Rowe
2023-03-19fix bug: me not being downloaded on some boardsLeah Rowe
rename board configs, and add to sources file the t530/w530 boards in some situations, the files weren't being downloaded
2023-03-19new board: lenovo/w530Leah Rowe
2023-03-19new board: lenovo/t530Leah Rowe
2023-03-18haswell (lenovo t440p/w541): fix S3 suspend/resumeLeah Rowe
MRC caches in a certain way, that Heads was able to work around in their build system, for this board. I've adapted the relevant config differences, from their project as of heads revision 96440b928acb06de5b925ea12014c9c280b23165 The downside is that CBFS now has to be 8MB in size. The upside is that the machine also boots much faster See: https://github.com/osresearch/heads/pull/1282/commits/f0792117efa177ded19878f652c5a28e8cc62a71 https://github.com/osresearch/heads/pull/1282#issuecomment-1400634600 I have not adapted their IFD changes, versus Libreboot, because theirs simply has a different version string, and uses different read/write permission bits for regions as defined in the IFD. This affects: t440p_12mb_mrc w541_12mb_mrc S3 suspend/resume still broken on these targets which use the libre MRC init (replacement code by Angel Pons, recently merged in lbmk): t440p_12mb w541_12mb With clever use of FMAP, the rest of the BIOS region might still be used. However, for our purposes, 8MB CBFS will do just fine. Heads's changes configure MRC so that caching is handled properly, for when the machine returns from sleep. Setting CBFS to be any higher will result in slower boot times, and broken S3 resume, due to MRC cache misalignment (this is based on my understanding, reading through the Heads project looking at their research on this). At some point in the future, Angel's libre MRC code will probably be finished, and merged, with more fine tuning possible to allow bigger CBFS sizes.
2023-03-18haswell: re-add mrc.bin in separate board configsLeah Rowe
libre mrc on haswell is quite buggy for now, but works in a limited fashion this patch re-adds the old configs, but as _mrc for example t440p_12mb_mrc instead of t440p_12mb and t440p_12mb (without _mrc) still uses the libre mrc code
2023-03-18haswell: only use txtmod seabios configurationLeah Rowe
i found that with libre mrc, usb was broken in grub however, it worked nicely in seabios for our purposes, doing seabios-only roms in text mode is best for now i'm going to re-add mrc.bin, but for t440p_12mb_mrc and w541_12mb_mrc, as new config names. the regular t440p_12mb and w541_12mb will continue to use libre mrc, but the _mrc ones will use mrc.bin and retain the grub payload in board.cfg