-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rebase on edk2-stable202411 #45
Comments
Evaluation of commits from edk2-stable202108 base.
|
These look especially interesting too:
|
Yes. Patrick (9elements) and Sean (Star Labs) have done substantial work on upstreaming coreboot-based work to edk2. It is unfortunate that Intel and edk2 devs are fucking stupid and rejects all new work that doesn't conform to their half-baked "universal payload" project. |
Sadly that kind of apathetic approach is common with the big silicon makers lately, in regard to all aspects of compatibility and general support. As an aside, it would be cool to have a basic password supported sometime...since though they don't really secure things, they'd prevent an evil maid from being able to easily use the MS shim to bypass secureboot or use their own keys, without having to take apart and mess around with a chip clip...even if we use our own keys, if we want to change the PRIME mode from hybrid to nvidia, secureboot needs to either be off briefly, or the MS key has to be enrolled...though that's another issue and the disable should work, then reenable after the reboot... |
The coreboot SMMSTORE support in particular is not upstreamed because the Sean has done a lot more work for edk2 integration than I think anyone else has recently (and by "recently", I mean 2+ years). In terms of features, its probably best to ask him (or Matt; MrChromebox) if its even possible with a coreboot-based bootloader. I am more inclined in creating a UEFI, coreboot-specific payload written in Rust than working with upstream edk2. (Admittedly, less so, since they supposedly accept GitHub PRs now rather than mail patches.) I detest edk2, and UEFI in general, and avoid working on it if possible. It's one of the primary reasons why we (I) say "do it in the OS if possible" (like managing keys for "Secure Boot"). For firmware (UEFI) password, we have system76/firmware-open#174. But see previous paragraph. |
Thank you for the context—it helps clarify why things are as they are and why UEFI seems to have fragmented far beyond the "Universal" part of its acronym. While vanilla Tianocore is serviceable (I do wonder how well that it would run on Clevo/System76 hardware), I can absolutely see how an alternative, longer-term solution in a safe language could be easier to maintain and port across the various hardware models you're expected to support. I suppose it would also make it easier to integrate new features, and also integrate existing ones as options that coreboot provides like measured boot, heads, etc, as well. I might reach out to Sean or MrChromebox regarding SMM/DXE integration support. That said, when it comes to NVIDIA and dGPU handling, I’m not sure "Advanced Optimus" MUX support brings much to the table, and switching modes can be worked around either using the MS cert with custom ones, or through temporary disabling of secureboot. My /boot and other drives are fully encrypted anyway, which mitigates most realistic threats in my case—I’m just a geek sitting in an office, after all, not a dissident. I care more about open source with reasonable security than anything else. For nVidia, getting G-Sync working is far more interesting to me. After some digging, I suspect NVIDIA’s SMM/DXE modules primarily validate hardware and inject a SLIC line into the SSDT table. If I can figure that out—or get some help doing so—it could be something System76 could standardize across all supported models. To confirm we'd just have to look at the stock bios ACPI tables for a Bonobo/x370SNx and see if the relevant lines are there. I have an issue opened up for that here for more context (sorry for all the issues I keep opening): system76/firmware-open#592 I share your dislike for UEFI. Back when I was more spry and sharp on UEFI internals, I made a bit of side money breaking AMI’s BIOS Guard attempts, and it's complexity and the always included nework stacks in OEM implementations, ostensibly for pxe - but also automatic updates and "stuff" is creepy. Sorry for the slightly incoherent speech patterns, I need to go to bed. |
I added some info on the GSync issue. I have largely figured out the concept involved, but am not sure on the execution...and it may or may not require the advanced optimus mux control that we don't have (yet). |
No description provided.
The text was updated successfully, but these errors were encountered: