summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
AgeCommit message (Collapse)Author
2010-09-28r600g: on evergreen the centroid isn't set in this register.Dave Airlie
2010-09-28r600g: fix db flush breaking config stateDave Airlie
2010-09-28r300g: fix swizzling of texture border colorMarek Olšák
NOTE: This is a candidate for the 7.9 branch.
2010-09-28r300g: add support for 3D NPOT textures without mipmappingMarek Olšák
The driver actually creates a 3D texture aligned to POT and does all the magic with texture coordinates in the fragment shader. It first emulates REPEAT and MIRRORED wrap modes in the fragment shader to get the coordinates into the range [0, 1]. (already done for 2D NPOT) Then it scales them to get the coordinates of the NPOT subtexture. NPOT textures are now less of a lie and we can at least display something meaningful even for the 3D ones. Supported wrap modes: - REPEAT - MIRRORED_REPEAT - CLAMP_TO_EDGE (NEAREST filtering only) - MIRROR_CLAMP_TO_EDGE (NEAREST filtering only) - The behavior of other CLAMP modes is undefined on borders, but they usually give results very close to CLAMP_TO_EDGE with mirroring working perfectly. This fixes: - piglit/fbo-3d - piglit/tex3d-npot
2010-09-28r300g: code cleanupsMarek Olšák
Some random stuff I had here. 1) Fixed some misleading comments. 2) Removed fake_npot, since it's redundant. 3) lower_texture_rect -> scale_texcoords 4) Reordered and reindented some TEX transform code.
2010-09-27softpipe: fix swizzling of texture border colorBrian Paul
We ask the texture tile cache to swizzle the color for us since that's where the view/swizzling info is available.
2010-09-27softpipe: allocate tile data on demandBrian Paul
Changes in v2: - Invalidate last_tile_addr on any change, fixing regressions - Correct coding style Currently softpipe ends up allocating more than 200 MB of memory for each context due to the tile caches. Even worse, this memory is all explicitly cleared, which means that the kernel must actually back it with physical RAM right away. This change allocates tile memory on demand. Signed-off-by: Brian Paul <brianp@vmware.com>
2010-09-27r600g: fix routing btw vertex & pixel shaderJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: fix pointsprite & resource unbindingJerome Glisse
When asking to bind NULL resource assume it's unbinding so free resource and unreference assoicated buffer. Also fix pointsprite parameter. Fix glsl-fs-pointcoord & fp-fragment-position Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: build packet header onceJerome Glisse
Build packet header once and allow to add fake register support so we can handle things like indexed set of register (evergreen sampler border registers for instance. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: fix index buffer drawingJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: Fixed two texture surface leaks in r600_blit_uncompress_depth().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-09-27r600g: add evergreen texture resource properly.Dave Airlie
adding sampler border looks impossible with current design, another day, another corner case not worked out.
2010-09-26r600g: Silence uninitialized variable warnings.Vinson Lee
Fixes these GCC warnings. r600_shader.c: In function 'tgsi_tex': r600_shader.c:1611: warning: 'src2_chan' may be used uninitialized in this function r600_shader.c:1611: warning: 'src_chan' may be used uninitialized in this function
2010-09-26r300g: fix macrotiling on R350Marek Olšák
MACRO_SWITCH on R350 appears to use the RV350 mode by default. Who knew? NOTE: This is a candidate for the 7.9 branch.
2010-09-26r600g: use depth decompression in new pathJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-26r600g: move around variables to share depth uncompression codeJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-26r600g: set ENABLE_KILL on evergreen tooBas Nieuwenhuizen
2010-09-26r600g: set ENABLE_KILL in the shader state in the new designBas Nieuwenhuizen
2010-09-26r600g: disable early cull optimization when occlusion query runningJerome Glisse
When occlusion query are running we want to have accurate fragment count thus disable any early culling optimization GPU has. Based on work from Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-26r300g: Remove unused variable.Vinson Lee
Fixes this GCC warning. r300_state.c: In function 'r300_create_rs_state': r300_state.c:925: warning: unused variable 'i'
2010-09-26r300g: fix glsl-fs-pointcoordDave Airlie
Move GB_ENABLE to derived rs state, and find sprite coord for the correct generic and enable the tex coord for that generic. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-09-25softpipe: minor asst. clean-upsBrian Paul
2010-09-25softpipe: make clip state functions staticBrian Paul
2010-09-25softpipe: make stream out state functions staticBrian Paul
2010-09-25softpipe: make rasterizer state functions staticBrian Paul
2010-09-25softpipe: make vertex state functions staticBrian Paul
2010-09-25softpipe: make sampler state functions staticBrian Paul
2010-09-25softpipe: make blend/stencil/depth functions staticBrian Paul
2010-09-25softpipe: make shader-related functions staticBrian Paul
2010-09-25softpipe: rename sp_state_fs.c -> sp_state_shader.cBrian Paul
2010-09-25softpipe: fix repeat() function for NPOT texturesBrian Paul
The trick of casting the coord to an unsigned value only works for POT textures. Add a bias instead. This fixes a few piglit texwrap failures.
2010-09-25r600g: Disable unused variables.Vinson Lee
The variables are used only in currently disabled code. Fixes this GCC warning. r600_context.c: In function 'r600_flush': r600_context.c:76: warning: unused variable 'dname' r600_context.c:75: warning: unused variable 'dc'
2010-09-25r600g: Remove unused variable.Vinson Lee
Fixes this GCC warning. r600_draw.c: In function 'r600_draw_common': r600_draw.c:71: warning: unused variable 'format'
2010-09-25r600g: Remove unused variable.Vinson Lee
Fixes this GCC warning. r600_screen.c: In function 'r600_screen_create': r600_screen.c:239: warning: unused variable 'family'
2010-09-25nv50: fix/handle a few more PIPE_CAPsChristoph Bumiller
2010-09-25nv50: use CLEAR_BUFFERS for surface fillsChristoph Bumiller
The 2D engine's fill doesn't seem suited for RGBA32F or ZS buffers.
2010-09-25nv50: use formats table in nv50_surface.cChristoph Bumiller
2010-09-25r600g: fix vertex resource & polygon offsetJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-25r600g: add eg db count control register.Dave Airlie
2010-09-25r600g: make index bias fix for evergreenDave Airlie
2010-09-25llvmpipe: handle up to 8 planes in triangle binnerKeith Whitwell
2010-09-25llvmpipe: handle FACING interpolants in line and point setupKeith Whitwell
2010-09-25r600g: add eg poly mode code.Dave Airlie
2010-09-24r600g: Silence 'control reaches end of non-void function' warning.Vinson Lee
Fixes this GCC warning. r600_hw_states.c: In function 'r600_translate_fill': r600_state_inlines.h:136: warning: control reaches end of non-void function
2010-09-24r600g: Remove unused variable.Vinson Lee
Fixes this GCC warning. eg_hw_states.c: In function 'eg_resource': eg_hw_states.c:525: warning: unused variable 'r'
2010-09-24r600g: Disable unused variables.Vinson Lee
The variables are only used in currently disabled code. Fixes this GCC warning. r600_state2.c: In function 'r600_flush2': r600_state2.c:613: warning: unused variable 'dname' r600_state2.c:612: warning: unused variable 'dc'
2010-09-24r600g: Remove unused variable.Vinson Lee
Fixes this GCC warning. r600_buffer.c: In function 'r600_buffer_transfer_map': r600_buffer.c:141: warning: unused variable 'rctx'
2010-09-24r600g: Remove unnecessary header.Vinson Lee
2010-09-24r300g: Silence uninitialized variable warning.Vinson Lee
Silence this GCC warning. r300_state_derived.c: In function 'r300_update_derived_state': r300_state_derived.c:578: warning: 'r' may be used uninitialized in this function r300_state_derived.c:578: note: 'r' was declared here