summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_state.c
AgeCommit message (Collapse)Author
2010-04-05r300g: add fallback for back stencil reference value and masks for r3xx-r4xxMarek Olšák
This splits rendering into two passes when front and back stencil reference value, value mask, or write mask don't match. The advantages of doing it in the driver instead of in st are: * SWTCL is executed just once and the resulting vertex buffer is reused in the second pass. * Lower driver overhead due to the fallback being very close to the actual draw emission with minimum state change.
2010-04-05r300g: simplify accessing screen from contextMarek Olšák
2010-04-05r300g: raise the number of texture units to 16 for all supported chipsetsMarek Olšák
As per Radeon 9700 Opengl Programming and Optimization Guide [1], there are 16 texture units even on the first r300 chipsets. If you think I am wrong, feel free to propose a patch. [1] Here's PDF: http://people.freedesktop.org/~mareko/
2010-04-05r300g: is_npot -> uses_pitchMarek Olšák
2010-04-02r300g: Expound on dithering comment.Corbin Simpson
2010-04-03r300g: make dithering work like fglrx.Dave Airlie
From fglrx traces the dithering is never enabled. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-03-29r300g: Remove unused variable.Vinson Lee
2010-03-29r300g: Bind constantbuf to Draw immediately, don't wait for render.Corbin Simpson
Doesn't hurt, and reduces code duplication.
2010-03-27r300g: print errors even on non-debug buildsMarek Olšák
We really need to get these into bug reports.
2010-03-27r300g: Make SWTCL clear work again.Corbin Simpson
Kind of surprised that this was as little as it took. Worrying.
2010-03-26Revert "r300g: add generating texture coordinates for point sprites (WIP)"Corbin Simpson
This reverts commit cba6430524198a1bdcdeada03cbe946a454f3935. Breaks celestia with a hardlock. :T We really need to sit down and study texture stuffing further.
2010-03-21r300g: fix scons buildMarek Olšák
2010-03-21r300g: cleanup tiling flags propagationMarek Olšák
2010-03-21r300g: split the vertex buffer alignment validationMarek Olšák
2010-03-21r300g: skip null vertex buffersMarek Olšák
2010-03-20r300g: Correctly hax max_index on pipe_vertex_buffers.Corbin Simpson
Still not happy with this, but at least things seem to work.
2010-03-19r300g: fix breakage after the gallium-sampler-view mergeMarek Olšák
2010-03-19r300g: add generating texture coordinates for point sprites (WIP)Marek Olšák
2010-03-15r300g: fix up after mergeKeith Whitwell
2010-03-15Merge commit 'origin/master' into gallium-sampler-viewKeith Whitwell
Conflicts: src/gallium/drivers/nv30/nv30_context.h src/gallium/drivers/nv30/nv30_state.c src/gallium/drivers/nv40/nv40_context.h src/gallium/drivers/nv40/nv40_state.c src/gallium/drivers/r300/r300_emit.c
2010-03-15r300g: rebuild screen/winsys interfaceDave Airlie
This creates a cleaner winsys and drop the simple screen stuff. It makes r300g use pb_bufmgr structs. It also tries to avoid overheads from mapping too often. v5: clean warnings v6: break out of cache check on first buffer - since most likely the first busy one implies all after it are busy. v7: cleanup a bit v8-merged: drop cman for now to just get all the interface changes in first. rework to changes that happened upstream Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-03-13r300g: add high quality anisotropic filtering for R5xx (disabled by default)Marek Olšák
Oh look, an undocumented feature. It's a nice tool for benchmarking texturing.
2010-03-13r300g: fix anisotropic filtering, fix macrotilingMarek Olšák
Two bug fixes at the same time. :)
2010-03-13Merge commit 'origin/master' into gallium-sampler-viewKeith Whitwell
Conflicts: src/gallium/auxiliary/util/u_tile.c src/gallium/auxiliary/util/u_tile.h src/gallium/drivers/identity/id_context.c src/gallium/drivers/llvmpipe/lp_setup.c src/gallium/drivers/llvmpipe/lp_setup.h src/gallium/drivers/softpipe/sp_tex_tile_cache.c src/gallium/include/pipe/p_context.h src/mesa/state_tracker/st_cb_bitmap.c src/mesa/state_tracker/st_cb_drawpixels.c
2010-03-12r300g: Properly clamp index limits.Corbin Simpson
Make the kernel even less likely to barf on us.
2010-03-11gallium: Check for OOM condition when creating a sampler view.Michal Krol
2010-03-10Merge branch 'master' into gallium-sampler-viewMichal Krol
Conflicts: src/gallium/auxiliary/Makefile src/gallium/auxiliary/SConscript src/gallium/auxiliary/tgsi/tgsi_exec.c src/gallium/auxiliary/util/u_blitter.c src/gallium/drivers/i915/i915_context.h src/gallium/drivers/i965/brw_context.h src/gallium/drivers/llvmpipe/lp_context.h src/gallium/drivers/nv50/nv50_context.h src/gallium/drivers/nv50/nv50_state_validate.c src/gallium/drivers/nv50/nv50_tex.c src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_context.h src/gallium/drivers/r300/r300_emit.c src/gallium/drivers/r300/r300_state.c src/gallium/drivers/softpipe/sp_context.h src/gallium/drivers/svga/svga_context.h src/gallium/drivers/svga/svga_pipe_sampler.c
2010-03-09r300g: Precalculate and CSO-bind PSC state.Corbin Simpson
2010-03-09Merge branch 'gallium-vertexelementcso'Roland Scheidegger
Conflicts: src/gallium/auxiliary/cso_cache/cso_context.c src/gallium/auxiliary/util/u_blit.c src/gallium/auxiliary/util/u_gen_mipmap.c src/gallium/drivers/i915/i915_context.h src/gallium/drivers/i965/brw_draw_upload.c src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_context.h src/gallium/drivers/r300/r300_render.c src/gallium/drivers/r300/r300_state_derived.c src/mesa/state_tracker/st_cb_bitmap.c src/mesa/state_tracker/st_cb_clear.c
2010-03-08r300g: fix updating the tiling flags for the framebuffer stateMarek Olšák
2010-03-08r300g: remove unnecessary state emissions and clean upMarek Olšák
2010-03-07r300g: disable emitting the HWTCL-related state when SWTCL is in useMarek Olšák
Now SWTCL renders at least "something", we're close...
2010-03-07r300g: share the VS-output-mapping state with SWTCLMarek Olšák
And associated cleanups.
2010-03-06r300g: minor cleanups after the no-rhw mergeMarek Olšák
2010-03-02r300g: Use a macro to consolidate general state handling.Corbin Simpson
My God, I've reinvented R300_STATECHANGE. Forgive me. :C
2010-03-02r300g: Make velem CSO actually work.Corbin Simpson
glxgears runs again.
2010-03-02Merge branch 'gallium-format-cleanup'José Fonseca
2010-03-02Merge branch 'gallium-no-rhw-position'Michal Krol
Conflicts: src/gallium/drivers/r300/r300_blit.c src/gallium/drivers/r300/r300_emit.c src/gallium/drivers/r300/r300_state_derived.c
2010-03-02r300: Rename pipe formats.José Fonseca
2010-03-01r300g: adapt to new vertex element csoRoland Scheidegger
2010-03-01r300: Save viewport and clip states before invoking blitter.Michal Krol
2010-02-28r300g: atomize texture and sampler statesMarek Olšák
2010-02-28r300g: decouple vertex stream setup (PSC) and VS output mapping (VAP_OUT)Marek Olšák
Formerly known as vertex_format_state. These two are completely unrelated when using HWTCL and decoupling them makes the design less SWTCL-centric. When bypass_vs_clip_and_viewport gets removed, the PSC setup will no longer be a derived state. This change shouldn't make unbreaking SWTCL harder.
2010-02-28r300g: use the atom size directly during emissionMarek Olšák
2010-02-28r300g: atomize invalidation of texture cachesMarek Olšák
2010-02-28r300g: atomize PVS flushMarek Olšák
The first non-state atom. It's better and cleaner to have it.
2010-02-27r300g: move the emission of GA_POINT_MINMAX into emit_fb_stateMarek Olšák
The only practical limits are the ones derived from the currently-set framebuffer state.
2010-02-27r300g: put the emission of R300_US_OUT_FMT_UNUSED backMarek Olšák
It wasn't such a good idea to remove it. :/
2010-02-27r300g: mark rasterizer_state as dirty only when it's not NULLMarek Olšák
2010-02-27r300g: always emit the correct max vertex index to avoid DRM errorsMarek Olšák
Fixing bizarre reports that a vertex buffer is not large enough.