Group: Hardware/Components/GPUs/nvidia
m (fix previous grammar edit) |
m |
||
(One intermediate revision by the same user not shown) | |||
Line 11: | Line 11: | ||
! Existing projects that could be leveraged to fix the problem | ! Existing projects that could be leveraged to fix the problem | ||
|- | |- | ||
− | | GPU | + | | GPU peripheral software |
− | | colspan=5 | Free | + | | colspan=5 | Free peripheral software is generated in the Linux driver for many GPUs. However: |
− | * Some GPUs are probably still missing free | + | * Some GPUs are probably still missing free peripheral software like for the Tegra K1 |
− | * The NV110 family (Maxwell) and more recent require signed | + | * The NV110 family (Maxwell) and more recent require signed peripheral software for the GPU power management processor. |
|- | |- | ||
| Bytecode: This bytecode is part of the Video BIOS and is parsed and executed by the Linux driver | | Bytecode: This bytecode is part of the Video BIOS and is parsed and executed by the Linux driver | ||
Line 33: | Line 33: | ||
| Implement a free Video BIOS replacement either as standalone replacement or in Coreboot and Libreboot. | | Implement a free Video BIOS replacement either as standalone replacement or in Coreboot and Libreboot. | ||
| | | | ||
− | * There is a free Video BIOS replacement in Coreboot for many Intel GPUs. While its meant to support Intel GPUs, it may be a good idea to leverage some of the code and architecture. It may also be a good idea to instead implement it as a standalone Video BIOS replacement, as standalone Radeon GPUs do exist, whereas standalone Intel | + | * There is a free Video BIOS replacement in Coreboot for many Intel GPUs. While its meant to support Intel GPUs, it may be a good idea to leverage some of the code and architecture. It may also be a good idea to instead implement it as a standalone Video BIOS replacement, as standalone Radeon GPUs do exist, whereas the few standalone Intel GPUs cannot be freed at the time of writing. |
* TODO: List Radeon Video BIOS Replacement projects and their freedom issues (check if the compiler is free) | * TODO: List Radeon Video BIOS Replacement projects and their freedom issues (check if the compiler is free) | ||
* TODO: Look if there are some projects for Nvidia GPUs. | * TODO: Look if there are some projects for Nvidia GPUs. |
Latest revision as of 06:53, 14 June 2024
Introduction
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 peripheral software | Free peripheral software is 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. |
|
References
- ↑ 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 that section point to this article for Nvidia GPUs
- Help completing the table in the introduction section