Please note that items in the matrix represent big pieces of functionality, so the matrix is updated rarely. For a better view of daily progress, please see the logs of the source code repositories.
- DONE means that developers think it is fully implemented. It may however contain bugs.
- MOSTLY means that it is mostly implemented and may have known bugs.
- WIP means that someone has started on the initial implementation.
- TODO means that someone needs to write the code. The required knowledge to write the code may or may not be known. Please ask on #nouveau if you want to get your feet wet on this.
- STALLED means that whatever code has been written is accumulating color and texture similar to that 3 week old slice of pizza in your fridge.
- BIOS means "if supported by your BIOS". No software support yet.
- SLOW means that the feature is implemented, but it is slow. Improvements may or may not be planned.
- EXTFW means that the feature is usable, but requires firmware from the binary driver.
|basic 2D (EXA)||DONE||DONE||DONE||DONE||DONE||DONE||DONE||DONE|
|fast 2D (XRender)||N/A1||DONE||DONE||DONE||DONE||DONE||DONE||DONE|
|play videos (Xv2)||DONE9||DONE9||DONE9||DONE9||DONE||DONE||DONE||DONE|
|video decoding accel
|Fixed pipe TCL||N/A||MOSTLY8||MOSTLY8||NOT USED||N/A||N/A||N/A||N/A|
|Dual head (Randr 1.2)||DONE||DONE||DONE||DONE||DONE||DONE||DONE||DONE|
|Kernel Mode Setting||DONE||DONE||DONE||DONE||DONE||DONE||DONE||DONE|
1 - NV0x family only supports swizzled textures, which we can't use for 2D stuff for various reasons. So no acceleration of XRENDER on those.
2 - Note Xv, not XvMC. See the "video decoding accel" line for accelerated decoding.
3 - Works, if the VBIOS gives enough memory bandwidth by default. That is, usually yes.
4 - nv0x-nv2x (nv17-nv19 excluded) need an external, third-party manufactured TV encoder. Only some Chrontel branded chips are currently supported.
6 - SLI or even multicard setups are very rare among developers. You should start hacking with us, if you have such a setup.
7 - It's slow, because proper power management isn't finished yet.
8 - nouveau_vieux supports everything that the hardware supports (except nv20 shaders), but there are some parts of OpenGL not directly supported by the hardware (e.g. glClipPlane)
9 - The hardware overlay isn't used, which is suboptimal (esp on pre-NV30). Work was done in a pre-KMS driver to support hardware overlays by ArthurHuillet. This support currently exists as KMS planes, but the DDX does not take advantage of them (yet).
Note : There is no NV03 (Riva 128 family) support, neither in progress, nor planned. NV03 differs too much from the other chips to be added to a unified driver. A separate driver for NV01/NV03 would probably be the way to go.
Note2 : Disable Composite on low-end cards for better XVideo performance.