This thread started with a topic to ask to open EC firmware and also to use open BIOS firmware, coreboot (Wikipedia). In January 2022, Framework open-sourced their EC firmware (blog). Then this thread became the main thread of the coreboot.
Challenges and actions
Here is a summary mainly from a coreboot issue ticket to port coreboot to Framework Laptop below.
- Notes to collaborate with people in the coreboot community
- Responsibility: The coreboot community doesn’t have the responsibility, but the PC manufacture company (Framework) should have it.
- Fairness: The companies and individuals develop the coreboot. The companies invest a significant amount to get the work done. In the current situation, we can’t ask the entire coreboot project to port coreboot to the Framework. But we can ask individuals. Also due to the fairness with other companies, we may not be able to manage the porting task on the coreboot project’s issue tracker.
- Framework will invest in the coreboot as well as other companies in the coreboot project?
Will ask individuals in the coreboot?
- A task based OSS funding platform in a list of the OSS funding platforms to accelerate the porting?
- Q. Do the 3 Framework Laptops which nrp sent to the people in the coreboot disable Intel BootGuard fully? A. Yes or No. Framework didn’t enable the Intel BootGuard for the 3 Laptops. However, not sure that is equivalent to being fully disabled.
- Will ask Matthew Garrett the current status to port the coreboot to the Framework Laptop. @junaruga emailed him. However, no response so far on June 25, 2022. Needs someone’s help to contact his Twitter.
- Q. Is the current documentation (not full) without an agreement good enough to port coreboot? A. Not sure. Framework didn’t answer this question.
- Q. Can individuals in the coreboot community access the full schematics and board views with an agreement? The kb article says it is for repair shops. A. No.
GitHub - FrameworkComputer/Framework-Laptop-13: Documentation for the Mainboard and other modules in the Framework Laptop 13 - Not a full documentation. The README says “All of this is a starting point for a broader set of open source Mainboard documentation to enable creation of fully compatible third-party Mainboards in the future.”.
- The board schematics
- The full schematics and board views are available under an agreement. kb article, reference
- GitHub - FrameworkComputer/EmbeddedController: Embedded Controller firmware for the Framework Laptop - Open sourced EC firmware.
- GitHub - FrameworkComputer/ExpansionCards: Reference designs and documentation to create Expansion Cards for the Framework Laptop - Expansion Cards document with CAD files.
What Framework or people said or did about coreboot
- In April 2021, Framework said that open source firmware was well aligned to their mission. (reference)
- In February 2022, Matthew Garrett tried to port the coreboot to the Framework Laptop. (reference) Unfortunately it didn’t work at that time. (reference)
- In April 2022, Framework said “We’ve handed three systems that can boot unsigned bootloaders to folks in the coreboot community. Our plan in the near term is to help them create a shim loader that can be signed to run on any Framework Laptop, which then enables anyone to do further coreboot development.”. (reference)
- On 1 June 2022, Framework said below. (reference)
On the list of things that we are exploring ways to improve on in the future:
- More of the schematics, including of modules beyond the Mainboards.
- Moving to open UEFI/BIOS solutions.
- On 5 June 2022, @junaruga opened an issue ticket on the coreboot issue tracker to port the coreboot to the Framework Laptop.
- Support #387: Support Framework Laptop - coreboot - Issue Tracker - Framework Laptop issue ticket on coreboot project.
Original first comment by @Please_Don_t
The Framework Laptop is an exceedingly promising and ambitious project that will create shockwaves if successful, however this grand endeavour will not be truly complete unless framework commits to freeing the embedded controller firmware and offering coreboot. Fully open-sourcing and liberating these two elements would allow us to unleash much more of the hardware’s potential.
Simple, practical applications of having a free EC could include options such as custom remapping the keyboard or allowing user-customisable charging caps to conserve battery cycles, but shipping with a free EC also allows for more exiting prospects, such as fully exposing elements such as fan control to userspace. Perhaps most importantly, it creates much more transparency and enables the community to inspect, audit and fix bugs in the EC.
Coreboot is an equally critical addition for similar reasons, while also opening the door to HEADS being made available further long the line, thus massively improving security prospects.
Purism and System76 have already done a lot of the work needed to make this possible and have eliminated many barriers preventing framework from doing so. Their spirit of collaboration extends to Purism inheriting their custom open EC from System76 without any licencing or permission requirements. Framework has no excuse to not follow suit, the path has already been cleared.
Neutralising the Intel ME would also be nice, but we should limit the scope to Coreboot and an Open EC for now.
I hope framework takes this into consideration and does not forgo this massive opportunity.