FeatureMatrix · freedesktop.org
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.
Key
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.
Features
2D features
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
basic 2D (EXA)
11
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
TODO
TODO
TODO
TODO
fast 2D (XRender)
11
N/A
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
TODO
TODO
TODO
TODO
play videos (Xv
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
TODO
TODO
TODO
TODO
video decoding accel
(VDPAU/XvMC)
N/A
TODO
N/A
STALLED
DONE
EXTFW
EXTFW
EXTFW
EXTFW
TODO
TODO
TODO
TODO
TODO
TODO
3D features
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
Primitives
MOSTLY
MOSTLY
MOSTLY
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Textures
MOSTLY
MOSTLY
MOSTLY
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Fixed pipe TCL
N/A
MOSTLY
MOSTLY
NOT USED
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
Vertex programs
N/A
N/A
TODO
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Fragment programs
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Geometry programs
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Tessellation programs
N/A
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Output
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
Dual-link DVI
BIOS
BIOS
BIOS
BIOS
DONE
DONE
DONE
DONE
DONE
DONE
DONE
N/A
N/A
N/A
N/A
Dual head (
Randr 1.2
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Kernel Mode Setting
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
TVout
STALLED
MOSTLY
STALLED
DONE
MOSTLY
TODO
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
HDR
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
TODO
N/A
TODO
TODO
TODO
Laptop discrete graphics
13
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
N/A
DONE
DONE
MOSTLY
14
Laptop hybrid graphics outputs
15
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
N/A
DONE
DONE
DONE
Laptop display muxing
16
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
N/A
N/A
N/A
N/A
TODO
17
TODO
17
DisplayPort features
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
SST (Single-stream)
N/A
N/A
N/A
N/A
TODO
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
SST Audio
N/A
N/A
N/A
N/A
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
SST DSC
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
TODO
TODO
TODO
MST (Multi-stream)
N/A
N/A
N/A
N/A
N/A
N/A
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
MST Audio
N/A
N/A
N/A
N/A
N/A
N/A
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
MST DSC
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
TODO
TODO
TODO
HDMI Features
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
Display
N/A
N/A
N/A
N/A
TODO
DONE
10
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Audio
N/A
N/A
N/A
N/A
TODO
DONE
10
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DSC
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
TODO
TODO
TODO
FRL
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
TODO
TODO
TODO
Other
NV04/05
NV10
NV20
NV30
NV40
NV50
NVC0
NVE0
NVF0
NV110
NV130
NV140
NV160
NV170
NV190
Multicard
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
SLI
N/A
N/A
N/A
N/A
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
TODO
Power management
N/A
TODO
TODO
TODO
STALLED
WIP
WIP
WIP
WIP
WIP
TODO
TODO
DONE
12
DONE
12
DONE
Suspend
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
DONE
Video input
N/A
TODO
TODO
TODO
TODO
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
Compute
N/A
N/A
N/A
N/A
N/A
WIP
WIP
WIP
WIP
WIP
WIP
WIP
WIP
WIP
WIP
Notes
NV0x family only supports swizzled textures, which we can't use for 2D stuff for various reasons. So no acceleration of XRENDER on those.
Note Xv, not XvMC. See the "video decoding accel" line for accelerated decoding.
Works, if the VBIOS gives enough memory bandwidth by default. That is, usually yes.
nv0x-nv2x (nv17-nv19 excluded) need an external, third-party manufactured TV encoder. Only some Chrontel branded chips are currently supported. For the rest, you cay try
nvtv
; make sure to set X to the right resolution first.
SLI or even multicard setups are very rare among developers. You should start hacking with us, if you have such a setup.
It's slow, because proper power management isn't finished yet.
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)
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).
10
HDMI Audio only works for NVA3/A5/A8 (GT21x) GPUs. Some pre-NVA3 setups have been reported, but it's no thanks to nouveau.
11
Use modesetting DDX for 2D acceleration.
12
Boot with
nouveau.config=NvGspRm=1
13
"Discrete mode" means using the discrete Nvidia GPU in a hybrid GPU laptop to drive the internal display (and possibly other display connectors, depending on the laptop).
14
Things mostly work, but some laptop displays (possibly ones which use DSC?) have been observed not to work.
15
This feature refers to whether or not nouveau can properly use external display connectors on a hybrid-GPU laptop, where certain display outputs may be routed to the Nvidia GPU.
16
Some laptops with hybrid graphics feature a "display mux" which can be programmed to route display connectors to either the integrated GPU, or the discrete GPU.
17
The muxes present on these machines are much different from the old-style muxes on older laptops. These muxes can be changed dynamically at runtime by the driver, and can usually also reroute the internal display on the laptop as well. Muxing of the internal display makes use of PSR, in order to prevent flickering on configuration changes.
Note
: Disable Composite on low-end cards for better XVideo performance.
US