Fetching the latest programs, projects, and workspace data.

Fast, secure and flexible BIOS firmware
Showing 5 of 11 projects. Click any project card for scope, mentors, and proposal studio.
Mentors: Student: Philipp Macher
I plan to update the existing LZ4 and LZMA compressions algorithms and as well to add support for new algorithms to compress and decompress data on the Coreboot File System
Mentors: Student: Yuu
The current codebase contains several Kconfigs that handle POST codes, but they don't have an impact on most platforms. Also, the code responsible for sending POST codes is spread out throughout the codebase in both C and Assembly languages. Some parts of the code use functions, some use macros, and others simply use the ‘outb()’ instruction. Additionally, the POST codes are duplicated across different stages and aren't properly documented, which makes it difficult to understand and maintain the code. To improve the code, the Kconfigs should be guarded with a "depends on" statement to only show on supported platforms, duplicated Kconfigs should be removed, ‘outb()’ calls should be replaced with ‘post_code()’ if it is sending out POST code, the documentation should be updated, macros from the post_code.h file should be used wherever possible, duplicated POST codes should be dropped, and all possible 255 values should be utilized. Finally, new POST codes should be added in a standardized manner to maintain the reliability and maintainability of the codebase.
Mentors: Student: Husni Faiz
Not all mainboards have an accessible serial port, but all boards with socketed RAM have a somehow accessible SMBus (used for reading the SPD-EEPROMs), which can be used very early in the boot process to access the coreboot console. As a device to receive the logs for example a beaglebone black or a cheap stm32 board with the i2c-star firmware can be used.
Mentors: Student: Harshit-Sharma
<p>Memory safety is hard to achieve. We, as humans, are bound to make mistakes in our code. While it may be straightforward to detect memory corruption bugs in few lines of code, it becomes quite challenging to find those bugs in a massive code. In such cases, 'Address Sanitizer' may prove to be useful and could help save time.</p> <p>Address Sanitizer, also known as ASan, is a runtime memory debugger designed to find out-of-bounds accesses and use-after-scope bugs. The goal of this project is to introduce ASan on coreboot. This feature would help to ensure code quality and make the runtime code more robust.</p>
Mentors: Student: Angel Pons
<p>Currently, support for Bay Trail and Braswell hardware is missing from libgfxinit. The project idea is to add support for Bay Trail first, as it is well-documented.</p> <p>It may happen that I finish earlier than expected; in that case, then I shall also work on Braswell support.</p>