The original FSP post has been taken down: https://puri.sm/posts/intel-fsp-reverse-engineering-finding-the-real-entry-point/
You can still view it on the archive (licensed under CC-by-SA 4.0 license): https://archive.fo/FGli6
However, there hasn’t been an update in a long time. I think many users are curious what progress is being made towards Intel FSP.
Especially since Purism can legally can be sued if it isn’t actively pursue this goal because of a section in the Articles of Declaration:
Non-free, or proprietary, chipsets that require installable firmware binaries into the kernel will be strictly prohibited within the Corporation. If a suitable component part that fully respects these rights is not available in the marketplace, the Corporation may use a part in its products that does not meet this standard if it is necessary for the product to be fit for purpose, in which case the Corporation will: (1) provide purchasers of the product, in writing, with strong evidence that a free version of the part with equivalent specifications is not available and that developing a free version of such would not be feasible at that point in time; and (2) actively pursue the development of a free version of the part for its future products.
TL;DR Does anybody have any new or interesting knowledge on make Intel FSP free’d or removing/replacing it?
Not really an answer, but related:
- AFAIK, the guy who was working on it left the company
- Long term, Purism hopes to get away from Intel (possibly RISC-V)
@hkjkjbkjsa as we know reverse engineering complex hardware such as intel components is incredibly difficult not to mention time consuming. this has been intentionally made difficult when given government Patent protection for 20 years.
rest assured that as long as article 2) in Purism AOD stands it’s going in the right direction.
i’m just worried about the time it will take for that to happen.
did he leave or has he “moved on” (as in dead) ?
KaKaRoToKS is still around the internet.
He was one of the few people who actually knows low level internals, and the only
one apparently with similar tasks now is @MrChromebox.
Without such people Purism will be nothing but a hipster label brand, repackaging work of
Even now the init process is done by Intel FSP, so ME is just part of the problem.
I have similar concerns myself
I have some new and interesting knowledge about the FSP. I’m going to blog about it.
@androb If you can, please comment the post here.
I think many of us may be interested to read more into this.
@reC The issue with Purism’s SPC is that it is fairly lax.
It states for many things “prioritize” not ensure. This can make things weird in the legal realm…
also things like “respect” is fairly flimsy. Facebook “respects” users privacy by following legal policies.
Is Facebook private?
They are still way better than the competition, therefore I plan to buy a Purism laptop soon.
Releasing source code and whatnot is awesome, BTW!
I’m still working on the article, but what I have right now:
- Coreboot already does FSP-T manually, and yet it also calls the binary blob (which doesn’t make much sense to me, except if there’s some tiny piece I’m missing).
- FSP-M, i.e.: FspMemoryInit() calls a sub-SEC-core (SecCoreM), which does nothing except call a sub-PEI-core (PeiCoreM), which dispatches a bunch of PEIM modules.
- FSP-S, i.e.: FspSiliconInit() is the same structure, it calls a sub-SEC-core (SecCoreS), which does nothing except call a sub-PEI-core (PeiCoreS), which dispatches a bunch of PEIM modules.
The first is not super-secret, it’s in Google’s Coreboot documentation. The last two are not super-secret, it’s in Intel’s official documentation on how to use the binary blobs (FSP). I’m pretty sure whoever (Youness Alaoui?) wrote that article got to this point when he talks about finding the entry point or whatever. I have yet to look into each sub-PEIM module. I will let you know if I find anything.