summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nv40/nv40_draw.c
AgeCommit message (Collapse)Author
2010-03-15nv30, nv40: non-trivially unify nv[34]0_draw.cLuca Barbieri
nv30_draw.c is a stub. This patch makes both nv30 and nv40 use the nv40 swtnl path. Note that this doesn't actually work on nv30 because the vertex program is encoded in the nv40-only layout. However, swtnl was unimplemented before on nv30, so this is not a regression. Furthermore, a patch to fix this is available near the end of the patchset.
2010-03-15nv30, nv40: non-trivially partially unify nv[34]0_shader.hLuca Barbieri
shader.h is similar, except for the following differences: 1. The instruction sets are not exactly the same, but mostly similar 2. Vertex program fields are in different bit positions This patch unifies all parts of nv[34]0_shader.h except the vertex program fields. Vertex opcodes are also changed so that the constant names includes SCA if it is a scalar opcode and VEC if it is a vector opcode.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_state_emit.cLuca Barbieri
The files are the same except for swtnl support on nv40 and for texture cache flushing on nv40. Unify them, and use a macro to define 4 versions of render_states, for all combinations of nvfx and hwtnl/swtnl.
2010-03-15nv30, nv40: unify all structures and headers, except shadersLuca Barbieri
This patch unifies nv[34]0_screen.h, nv[34]0_context.h and nv[34]0_state.h The unified files are put in a new "nvfx" directory. nv30_context.h and nv40_context.h still exist to hold the function prototypes and include nvfx_context.h nv[34]0_screen.h and nv[34]0_state.h are deleted, replaced by the unified versions. nv40 includes some extra fields for swtnl and user clip planes support. These fields will be unused on nv30 until that functionality gets added to it too (by unification with nv40).
2010-03-15nouveau: s/rankine/eng3d/g; s/curie/eng3d/gLuca Barbieri
Result of running: perl -i -p -e 's/rankine/eng3d/g; s/curie/eng3d/g;' nv[34]0/*.[ch] This will allow to more easily unify nv30 and nv40.
2010-03-15nv40: use NV34TCL_ constants where availableLuca Barbieri
It was decided to just use the NV34TCL_ constants for constants common between nv30 and nv40, and deprecate the NV40TCL_ versions. This patch changes the nv40 driver to use NV34TCL_ constants for common functionality. This reduces differences between nv30 and nv40 to ease further unification.
2010-02-12nouveau: use AVAIL_RING()Ben Skeggs
2010-02-02gallium: pipe/p_inlines.h -> util/u_inlines.hJosé Fonseca
2010-01-28gallium: Enable multiple constant buffers for vertex and geometry shaders.Michal Krol
2010-01-05nouveau: kill nouveau_push.h and use libdrm versions of BEGIN_RINGs, etcMarcin Slusarz
2010-01-05Merge commit 'origin/gallium-draw-retval'Keith Whitwell
Conflicts: src/gallium/drivers/identity/id_context.c
2009-12-25gallium: add geometry shader support to galliumZack Rusin
2009-12-21gallium: propogate draw retval changes into more driversKeith Whitwell
2009-06-05nouveau: remove unneeded code from ws, use pipe_buffer_ instead of ws->Ben Skeggs
2009-06-05nouveau: move channel creation into pipe driversBen Skeggs
2009-01-30gallium: make p_winsys internalZack Rusin
move it to pipe/internal/p_winsys_screen.h and start converting the state trackers to the screen usage
2009-01-29gallium: give the screen priority when it comes to buffer allocationsZack Rusin
allows the driver to overwrite buffer allocation, first step on the way to making winsys interface internal to the drivers. state trackers and the code above it will go through the screen
2008-09-11nouveau: gallium directory structure changed again..Ben Skeggs
2008-06-23nouveau: update for interface changes + hack around gallium x86_64 bustageBen Skeggs
2008-06-21Update for extra vertex attributesPatrice Mandin
2008-04-23nouveau: fix buildBen Skeggs
2008-04-09nv40: use vb/ve counts rather than shader inputs for related loopsBen Skeggs
2008-04-07nv40: implement user clip planesBen Skeggs
It turns out the user planes handed to the driver are already in clip space. Hence, we no longer need to transform incoming vertices before computing the clip distance, and no longer need to change the interface provided by gallium. Yay :) The clip state change handling could be better, but this works.
2008-03-30nouveau: adapt to recent gallium changesBen Skeggs
2008-03-21nv40: ensure vb relocs don't end up on list for swtnlBen Skeggs
Avoids bo code bailing out because of mapped buffers being validated.
2008-03-21nv40: s/free/FREE/Ben Skeggs
2008-03-17nv40: workaround main swtnl breakageBen Skeggs
Not sure where the real bug is here yet, but for now this gives us correct rendering in far more cases than previously.
2008-03-16nv40: simple swtnl path (half broken, but getting there)Ben Skeggs
2008-02-16nouveau: match gallium code reorginisation.Ben Skeggs
That was... fun..