summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nvfx/Makefile
AgeCommit message (Collapse)Author
2010-03-15nvfx: move nv04_surface_2d.c into nvfx directoryLuca Barbieri
It is only used on pre-nv50 and nvfx is the only Gallium pre-nv50 driver.
2010-03-15nv30, nv40: move last files to nvfx/ and rm -rf nv30 nv40Luca Barbieri
This is the last nvfx unification patch. nv[34]0_fragtex.c are moved to the common directory nv[34]0_shader.h are renamed to nv[34]0_vertprog.h and moved to the common directory The separate nv30 and nv40 directories are removed from the build system
2010-03-15nv30, nv40: partially non-trivially unify nv[34]0_fragtex.cLuca Barbieri
The bulk files cannot be unified, but the frontend can and allows to share some code and simplify state_emit.c
2010-03-15nv30, nv40: unify nv[34]0_context.cLuca Barbieri
They are now almost identical, except for nv30 vs nv40 fragtex initialization.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_screen.cLuca Barbieri
The files have the same structure but are substantially different. They are unified with appropriate conditionals.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_vertprog.cLuca Barbieri
vertprog.c is similar but has substantial differences: 1. nv40 supports clip planes 2. nv40 uses a more advanced register allocator 3. Some register setup is different 4. Constants with the same name have different values This patch unifies the two files. nv30 gains clip plane support and the nv40 register allocator. A new NVFX_VP(x) macro is introduced that at runtime resolved to either the nv30 or the nv40 constant value. nv30 clip planes are not tested and might not work
2010-03-15nv30, nv40: partially unify nv[34]0_state.cLuca Barbieri
state.c is identical except for: 1. Sampler state creation is different 2. nv40 swtnl support 3. Separate blend equations on nv40 This patch unifies nv[34]0_state.c, except the sampler state creation code.
2010-03-15nv30, nv40: unify nv[34]0_vbo.cLuca Barbieri
The files are identical, except for swtnl support which is commented out on nv30 and restart being initialized on nv30 to avoid a compiler warning.
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 unify nv[34]0_fragprog.cLuca Barbieri
The files are mostly the same except: 1. On NV40, some TGSI instructions are emulated with several hardware ones 2. Some instructions such as DDX/DDY, and STR were missing from nv30 3. NV40 has more sophisticated register management nv30 now supports all instructions and uses the nv40 register management.
2010-03-15nv30, nv40: non-trivially unify nv[34]0_state_fb.cLuca Barbieri
The files are significantly different due to: 1. nv30 support 2 render targets, nv40 4 2. z-buffer pitch is set differently 3. nv30 has a limitation of colour_bits >= zeta_bits. This may not actually exist in the driver though 4. nv30 points color0 at depth in the depth-only case 5. nv30 sets NV34TCL_VIEWPORT_TX_ORIGIN to 0. This is probably unnecessary This patch attempts to unify the two files and preserve the existing behavior.
2010-03-15nv30, nv40: unify nv[34]0_state_viewport.cLuca Barbieri
The files are identical, except for an extra comment in nv30.
2010-03-15nv30, nv40: unify nv[34]0_query.cLuca Barbieri
The files are identical except formatting.
2010-03-15nv30, nv40: unify nv[34]0_miptree.cLuca Barbieri
The only difference between nv30 and nv40 is that nv30 allowed swizzling for more texture types. This patch preserves the existing behavior, using conditional code. Note however that this does not make sense, since all texture types can be swizzled on nv40 and probably on nv30 too. However, the handling of swizzled surfaces in the current 2D code is partially broken, so it's best not to touch this. A whole rewrite of the 2D code will be submitted, which will solve this problem.
2010-03-15nv30, nv40: unify nv[34]0_state_stipple.cLuca Barbieri
The files are identical, except for the fact that the nv40 version forgets to unreference the stateobj. Unified to the correct nv30 version.
2010-03-15nv30, nv40: unify identical nv[34]0_state_zsa.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_scissor.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_rasterizer.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_state_blend.cLuca Barbieri
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 identical nv[34]0_transfer.cLuca Barbieri
2010-03-15nv30, nv40: unify identical nv[34]0_clear.cLuca Barbieri
2010-03-15nvfx: add nvfx directory to build systemLuca Barbieri
Will be used to hold source files unified between nv30 and nv40. Eventually all nv30 and nv40 code will be moved there and the nv30 and nv40 directories will be removed.