[FrontPage] [TitleIndex] [WordIndex

Please note, that each item in the matrix is either a big or a huge piece 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

Features

x

NV04/05

NV10

NV20

NV30

NV40

NV50

NVC0

NVE0

2D features

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)

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

decode videos

N/A

TODO

TODO

WIP

WIP

WIP

EXTFW

EXTFW

3D features

Primitives

WIP

WIP

WIP

DONE

DONE

DONE

DONE

DONE

Textures

WIP

WIP

WIP

MOSTLY

MOSTLY

DONE

DONE

DONE

Fixed pipe TCL

N/A

WIP

WIP

NOT USED

N/A

N/A

N/A

N/A

Vertex programs

N/A

N/A

TODO

MOSTLY

MOSTLY

DONE7

DONE7

DONE7

Fragment programs

N/A

N/A

N/A

MOSTLY

MOSTLY

DONE7

DONE7

DONE7

Output

Dual-link DVI

BIOS

BIOS

BIOS

BIOS

DONE3

DONE3

DONE3

DONE3

Dual head (Randr 1.2)

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Kernel Mode Setting

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

TVout4

WIP

WIP

WIP

DONE

MOSTLY

TODO

TODO

TODO

Other

Multicard5

MOSTLY

MOSTLY

MOSTLY

MOSTLY

DONE

DONE

DONE

DONE

SLI6

N/A

N/A

N/A

N/A

TODO

TODO

TODO

TODO

Power management

N/A

WIP

WIP

WIP

WIP

WIP

WIP

WIP

Suspend

DONE

DONE

DONE

DONE

DONE

DONE

DONE

DONE

Video input

TODO

TODO

TODO

TODO

TODO

TODO

TODO

TODO

HDMI audio

N/A

N/A

N/A

N/A

DONE

DONE

DONE

DONE

OpenCL

N/A

N/A

N/A

N/A

N/A

STALLED

TODO

STALLED

Notes

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.: The current specification for XvMC is considered not worth the amount of work required, as the XvMC interface is too limited to be useful with current video formats. Some work is happening on implementing video acceleration within Gallium3D.

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.

5 - Multicard support requires ability to cold-boot the secondary card(s), ie. initialise them without help from their Video BIOS (since it isn't run on startup). This means that you need all your secondary cards to support multicard, but you can use anything as your primary card. Primary in this context means the card that was set up as primary display by your machine's BIOS, secondary means any card that is not the primary card. Also, atm there's a bug that makes running a GPU-intensive application (mostly 3d, but some 2d also do the trick) on one GPU temporarily freeze the others...

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.

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.


2013-03-24 13:16