Nvidia GPUs have several freedom issues that are referenced on the table below.
|Nonfree software||Effects without the nonfree software or workarounds||Workaround||Workaround consequences||Fix||Existing projects that could be leveraged to fix the problem|
|GPU firmwares/microcodes||Free firwmare are generated in the Linux driver for many GPUs. However:
|Bytecode: This bytecode is part of the Video BIOS and is parsed and executed by the Linux driver||
|The Video BIOS||Use Libreboot or Coreboot with SeaBIOS, put the Video BIOS in memory but don't execute it||The display is initialized very late, when the nouveau driver loads, if the bytecode tables are in the right memory area.||Implement a free Video BIOS replacement either as standalone replacement or in Coreboot and Libreboot.||
- See the FOSDEM_2015.pdf presentation for more details. The Tegra K1 has no bytecode (as it has no video BIOS).
How to help
Documenting all the freedom issues in depth is a lot of work for one person.
Hopefully it can be broken in many small tasks, so it's easy to help by making a tiny part of the work.
Here are some relatively small tasks that could help:
- Migrate the information in ReverseEngineering#Desktops_and_laptops_GPUs here and make theses section point to this article for Nvidia GPUs
- Help completing the table in the introduction section