summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-04-20Merge pull request 'Undo GRUB fixes for E6400' (#20) from ↵Leah Rowe
nic3-14159/lbmk:revert-e6400-grub-fix into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/20
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-20Merge pull request 'Fix E6400 keyboard handling in GRUB' (#19) from ↵Leah Rowe
nic3-14159/lbmk:fix-ps2-grub into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/19
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-19util/e6400-flash-unlock: restore READMENicholas Chin
when nicholas added this, he removed the README because it's going on libreboot.org instead. however, i merged a WIP version of his page for now because i want to get the e6400 going in libreboot sooner. so, temp-readding this README. will just link to this on codeberg or something, from the lb docs NOTE: I didn't write this README, hence author field set in the commit. Nicholas wrote it, but I (Leah Rowe) am just adding it. so, git author set to nicholas, not me
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-19Merge pull request 'Add configs for the Latitude E6400' (#16) from ↵Leah Rowe
nic3-14159/lbmk:e6400-port into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/16
2023-04-19Merge pull request 'Add E6400 flash unlock utility' (#17) from ↵Leah Rowe
nic3-14159/lbmk:e6400-flash-unlock into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/17
2023-04-19Add E6400 flash unlock utilityNicholas Chin
Adding it to lbmk for now as it is not yet in coreboot. If it is merged into coreboot we can just reference the one there. The original README will be incorporated into a new page on lbwww, so README.md just points to a placeholder URL that should match the new page.
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-15util/nvmutil: sort includes alphabeticallyLeah Rowe
small nitpick, but i try to use openbsd style since i like that style. upon further reading of their style guidelines today, it was revealed to me that for includes, they: * sort sys/ includes alphabetically, at the top * after sys/ includes, have an empty line * includes for networking-related headers below that * empty space below networking headers if there * after that, have the rest of the includes, sorted alphabetically at least, that is my understanding. i have to admit, it does look cleaner not really that critical but why not do it?
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-14Merge pull request 'Port to HP Compaq 8200 Elite SFF' (#8) from ↵Leah Rowe
Riku_V/lbmk:hp8200sff into master Reviewed-on: https://codeberg.org/libreboot/lbmk/pulls/8
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-11util/nvmutil: don't display errant whitespaceLeah Rowe
At the end of each line is an errant space. Fix that.
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-08update to codeberg links in the readmeLeah Rowe
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-07util/nvmutil: even crazier code size reductionLeah Rowe
2023-04-07util/nvmutil: yet more code size optimisationLeah Rowe
2023-04-07util/nvmutil: more code size optimisationsLeah Rowe
2023-04-07util/nvmutil: minor code size optimisationLeah Rowe
not just sloccount, but compiled binary size as tested with tcc on an x86_64 host
2023-04-07util/nvmutil: fix possible regressionLeah Rowe
i went too hard on the sloc reductions a check inside a for loop could cause incomplete reading of gbe images revert that
2023-04-06util/nvmutil: minor code cleanupLeah Rowe
also removed some unnecessary checks fixed the check of pwrite's return value (it should check for -1)
2023-04-06util/nvmutil: remove unnecessary else statementLeah Rowe
2023-04-06util/nvmutil: less annoying commentsLeah Rowe
added a few that were more useful deleted a few obnoxious ones
2023-04-06util/nvmutil: remove duplicated logicLeah Rowe
the byteswap() function is used for big endian host compatibility, but it can also be used to swap words in the stored mac address
2023-04-06util/nvmutil: one more commentLeah Rowe
2023-04-06util/nvmutil: add useful code commentsLeah Rowe
2023-04-06util/nvmutil: remove unnecessary debug messagesLeah Rowe
these were put in when i was testing the feature to limit read/written bytes in loading/saving of files
2023-04-06util/nvmutil: serious re-factoring, part 2Leah Rowe
the code is smaller
2023-04-06util/nvmutil: consolidated error messageLeah Rowe
2023-04-06util/nvmutil: serious re-factoring (speed boost!)Leah Rowe
word/setWord no longer mitigates endianness. instead, all bytes are swapped after reading and before writing the file, and only if the host is big endian this improves performance on little endian hosts, which is most machines, and the code is much simpler, so it's more robust and less likely to break mac address endianness made more clear in code, including with a comment that explains it (the nvm section contains little endian words, *except* the mac address whose words are stored big endian)
2023-04-05util/nvmutil: fix faulty zeroes-mac-address checkLeah Rowe
it was resetting the total for each nibble. absolute epic fail on my part. fixed now.
2023-04-05util/nvmutil: minor code cleanupLeah Rowe
2023-04-05util/nvmutil: move mac address parsing to functionLeah Rowe
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-01readmeLeah Rowe
2023-04-01blobutil: replace fake tabs with tabsLeah Rowe
always use tabs