summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* nv30, nv40: unify nv[34]0_query.cLuca Barbieri2010-03-1512-236/+42
| | | | The files are identical except formatting.
* nv30, nv40: unify nv[34]0_miptree.cLuca Barbieri2010-03-159-264/+30
| | | | | | | | | | | | | | | | 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.
* nv30, nv40: unify nv[34]0_state_stipple.cLuca Barbieri2010-03-159-48/+7
| | | | | | | The files are identical, except for the fact that the nv40 version forgets to unreference the stateobj. Unified to the correct nv30 version.
* nv30, nv40: unify identical nv[34]0_state_zsa.cLuca Barbieri2010-03-159-56/+12
|
* nv30, nv40: unify identical nv[34]0_state_scissor.cLuca Barbieri2010-03-159-45/+7
|
* nv30, nv40: unify identical nv[34]0_state_rasterizer.cLuca Barbieri2010-03-1510-39/+20
|
* nv30, nv40: unify identical nv[34]0_state_blend.cLuca Barbieri2010-03-159-56/+13
|
* nv30, nv40: non-trivially unify nv[34]0_state_emit.cLuca Barbieri2010-03-1513-199/+75
| | | | | | | | 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.
* nv30, nv40: unify identical nv[34]0_transfer.cLuca Barbieri2010-03-159-26/+26
|
* nv30, nv40: unify identical nv[34]0_clear.cLuca Barbieri2010-03-1510-32/+10
|
* nvfx: add nvfx directory to build systemLuca Barbieri2010-03-154-0/+32
| | | | | | | 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.
* nv30, nv40: add is_nv4x member to context and screen structsLuca Barbieri2010-03-155-0/+11
| | | | This will make it faster to check for nv40.
* nv30, nv40: unify all structures and headers, except shadersLuca Barbieri2010-03-1551-1575/+1298
| | | | | | | | | | | | | | | | | | | 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).
* nouveau: s/rankine/eng3d/g; s/curie/eng3d/gLuca Barbieri2010-03-1532-289/+289
| | | | | | | 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.
* nv30: remove unused on_hw field and constant fp_reg_control fieldLuca Barbieri2010-03-152-5/+1
| | | | This makes nv30_state.h equivalent to nv40_state.h
* nv40: use NV34TCL_ constants where availableLuca Barbieri2010-03-1514-186/+186
| | | | | | | | | | | 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.
* r300g: Remove unnecessary headers.Vinson Lee2010-03-142-3/+0
|
* trace: Remove unnecessary headers.Vinson Lee2010-03-141-3/+0
|
* svga: Remove unnecessary header.Vinson Lee2010-03-141-2/+0
|
* r300g: remove pipe_context from r300_screenMarek Olšák2010-03-142-8/+0
|
* softpipe: Remove unnecessary header.Vinson Lee2010-03-131-1/+0
|
* gallium: Respect user's CFLAGS for including X headersDan Nicholson2010-03-132-2/+4
| | | | | | This can break on systems that don't have a system X installation. Signed-off-by: Dan Nicholson <[email protected]>
* llvmpipe: Switch to PIPE_TEX_MIPFILTER_NONE when texture has no mipmaps.José Fonseca2010-03-131-1/+5
|
* r300g: add high quality anisotropic filtering for R5xx (disabled by default)Marek Olšák2010-03-135-0/+27
| | | | | Oh look, an undocumented feature. It's a nice tool for benchmarking texturing.
* r300g: fix anisotropic filtering, fix macrotilingMarek Olšák2010-03-131-2/+2
| | | | Two bug fixes at the same time. :)
* r300g: refrain from using immediate mode if it causes slowdownMarek Olšák2010-03-133-2/+48
| | | | | | | | | E.g. when mapping buffers could flush CS or cause waiting for a busy buffer. The side effect of this is it also fixes progs/demos/arbocclude however a separate fix should be proposed to address this issue in other cases it might occur.
* r300g: fix up function namesMarek Olšák2010-03-132-3/+2
|
* llvmpipe: Ensure the context is flushed before modifying textures.José Fonseca2010-03-134-0/+102
|
* llvmpipe: Don't use texture transfer internally.José Fonseca2010-03-135-116/+150
| | | | | | | Now that transfers are context objects their sideeffects must happen in order when used by the state tracker, but that synchronization must be bypassed when used inside the driver, or it would cause infinite recursion.
* llvmpipe: Obey rasterization rules.José Fonseca2010-03-135-30/+40
| | | | Replicates softpipe.
* llvmpipe: setup_context -> lp_setup_contextJosé Fonseca2010-03-139-82/+82
| | | | | Otherwise IDEs and debuggers have trouble distinguishing from softpipe's setup_context.
* nv50: fixup after gallium-context-transfers mergeXavier Chantry2010-03-132-3/+0
|
* python: Temporarily disable python state tracker until transfers are done by ↵José Fonseca2010-03-131-1/+2
| | | | | | | contexts It requires changes not ony to the state tracker but to the python scripts too.
* st/egl: Cache the pipe surface used in flush_frontbuffer.Chia-I Wu2010-03-131-7/+15
| | | | | It is very likely that the same surface will be flushed again and again. Caching the surface should reduce the overhead of surface creation.
* r300g: Forcibly sanitize max index.Corbin Simpson2010-03-121-3/+3
| | | | Not perfect, but the kernel should shut up now.
* gallivm: cube map sampling works nowBrian Paul2010-03-121-22/+154
|
* gallivm: fix bugs in nested if/then/else codegenBrian Paul2010-03-121-9/+17
| | | | Quite a bit a hair pulling was involved...
* gallivm: support non-vector float in lp_build_sgn()Brian Paul2010-03-121-6/+21
|
* svga: Fix up for context transfers.Michel Dänzer2010-03-121-0/+2
|
* st/xorg: Remove flushes no longer necessary thanks to context transfers.Michel Dänzer2010-03-122-21/+0
|
* Merge branch '7.8'Michel Dänzer2010-03-128-56/+60
|\
| * vmwgfx/dri: Fix SCons build.Michel Dänzer2010-03-121-0/+1
| |
| * st/dri: Always try to set up R5G6B5 configs.Michel Dänzer2010-03-121-49/+52
| | | | | | | | | | | | | | | | | | | | Allows compiz to work in depth 16. The DRI2 getBuffersWithFormat hook is only required for 16/32 bit depth buffers, for colour buffers the only requirement is that the format matches the drawable depth, which we can't check here. (cherry picked from commit c50477c255a34444720fb944c54373462ef39fb9)
| * Grammar and spelling fixesJeff Smith2010-03-126-7/+7
| | | | | | | | | | Signed-off-by: Jeff Smith <[email protected]> Signed-off-by: Brian Paul <[email protected]>
* | st/xorg: context transfersKeith Whitwell2010-03-123-42/+42
| |
* | gallium: fix BGRA vertex color swizzlesMarek Olšák2010-03-122-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The mapping for vertex_array_bgra: (gl -> st -> translate) GL_RGBA -> PIPE_FORMAT_R8G8B8A8 (RGBA) -> no swizzle (XYZW) GL_BGRA -> PIPE_FORMAT_A8R8G8B8 (ARGB) -> ZYXW (BGRA again??) Iẗ́'s pretty clear that PIPE_FORMAT_A8R8G8B8 here is wrong. This commit fixes the pipe format and removes obvious workarounds in util/translate. Tested with: softpipe, llvmpipe, r300g. Signed-off-by: José Fonseca <[email protected]>
* | r300g: Properly clamp index limits.Corbin Simpson2010-03-122-2/+2
| | | | | | | | Make the kernel even less likely to barf on us.
* | Merge commit 'origin/gallium-context-transfers-2'Keith Whitwell2010-03-1270-589/+718
|\ \
| * | cell: adapt to context texture transfers (untested)Roland Scheidegger2010-03-113-10/+16
| | |
| * | gallium: remove pipe_context member from pipe_transferKeith Whitwell2010-03-1137-108/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There was very little use for this beyond permitting the pipe_context::tex_transfer_destroy() function to omit the pipe_context argument. This change adds the pipe_context argument into tex_transfer_destroy() so that it looks like other pipe_context functions, and removes the pipe_context pointer from pipe_transfer.