summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
Commit message (Collapse)AuthorAgeFilesLines
* r600g: atomize blend stateMarek Olšák2012-10-109-176/+182
| | | | | | | | | | | This is not so trivial, because we disable blending if the dual src blending is turned on and the number of color outputs is less than 2. I decided to create 2 command buffers in the blend state object and just switch between them when needed, because there are other states unrelated to blending (like the color mask) and those shouldn't be changed (the old code had it wrong). Reviewed-by: Jerome Glisse <[email protected]>
* r600g: inline r600_atom_dirtyMarek Olšák2012-10-108-52/+47
| | | | Reviewed-by: Jerome Glisse <[email protected]>
* r600g: remove the "atom" variable from r600_command_bufferMarek Olšák2012-10-106-37/+34
| | | | | | | | | | | | | | | r600_command_buffer is not an atom. The "atoms" have evolved into state slots (or groups of state slots) where you can bind states. There is a fixed amount of atoms (state slots) in the context. The command buffers are nothing like that. They represent states, not state slots. We could probably give r600_atom a better name someday. Reviewed-by: Jerome Glisse <[email protected]>
* r600g: use a select to handle front/back color in llvmVincent Lejeune2012-10-092-5/+44
| | | | Reviewed-by: Tom Stellard <[email protected]>
* r600g: frontcolor tracks its associated backcolorVincent Lejeune2012-10-092-25/+35
| | | | Reviewed-by: Tom Stellard <[email protected]>
* nv50: fix build after "nv50: fix printf warning"Marcin Slusarz2012-10-091-0/+2
| | | | | When compiled with C++ compiler, inttypes.h defines PRI* macros only when __STDC_FORMAT_MACROS is defined.
* nouveau: use pre-calculated stride for resource_get_handleMarcin Slusarz2012-10-092-4/+2
| | | | | | Fixes FDO#55294. NOTE: This is a candidate for the 9.0 branch.
* r600g: Fix build with --enable-openclTom Stellard2012-10-091-1/+3
|
* nv50: fix printf warningMarek Olšák2012-10-091-1/+2
|
* nv30: fix type conversion warningMarek Olšák2012-10-091-1/+1
|
* i915g: fix unused variable and type conversion warningsMarek Olšák2012-10-092-2/+1
|
* nv50: point vertex runout at a valid addressBen Skeggs2012-10-091-0/+12
| | | | | Reviewed-by: Christoph Bumiller <[email protected]> Signed-off-by: Ben Skeggs <[email protected]>
* nvc0: point vertex runout at a valid addressBen Skeggs2012-10-091-5/+16
| | | | | Reviewed-by: Christoph Bumiller <[email protected]> Signed-off-by: Ben Skeggs <[email protected]>
* nvc0: fix missing permanent bo reference on poly cacheBen Skeggs2012-10-091-0/+1
| | | | | Reviewed-by: Christoph Bumiller <[email protected]> Signed-off-by: Ben Skeggs <[email protected]>
* softpipe: initialize quadColor2 to fix compile warningsMarek Olšák2012-10-091-1/+1
|
* r600g: remove unused variables to fix compile warningsMarek Olšák2012-10-092-4/+0
|
* i915g: Don't clobber I915_NEW_FS on new framebuffer.Stéphane Marchesin2012-10-081-1/+1
| | | | This snuck in with a previous commit.
* i915g: Call draw_set_mapped_vertex_buffer from draw_vboStéphane Marchesin2012-10-062-15/+17
| | | | This regressed with the draw rework. Fixes glest and vdrift crash.
* r600g: fix possible issue with stencil mipmap renderingMarek Olšák2012-10-061-1/+12
| | | | | | | Somehow I only hit this issue with my latest libdrm changes. This won't be needed with DB texturing. NOTE: This is a candidate for the 9.0 branch.
* r600g: ensure PERFECT_ZPASS+NOOP_CULL_DISABLE are 0 for blits+decompressionMarek Olšák2012-10-061-23/+22
| | | | | | | | When an occlusion query was active, the derived DB state wasn't changed for u_blitter even though all the occlusion queries were suspended. It's fixed by moving the state update into the emit functions, which are called whenever queries are stopped or suspended.
* r600g: don't modify pipe_resource in resource_copy_region, fixing race conditionMarek Olšák2012-10-065-161/+139
| | | | | | pipe_resource can be shared between contexts, we shouldn't modify its description. Instead, let's use the resource "views" (sampler views and surfaces), where we can freely change almost any property of a resource.
* r600g: fix streamout on RS780 and RS880Marek Olšák2012-10-062-7/+14
| | | | | The latest kernel from git is required. Transform feedback (along with GL3.0) is turned off on older kernels.
* i915g: Get rid of the fixup state functions.Stéphane Marchesin2012-10-053-48/+0
| | | | Now that the saved_* state is gone, we don't need those any longer.
* i915g: Remove the i915_context->saved_* stuff.Stéphane Marchesin2012-10-053-46/+23
| | | | | | | | | When using u_blitter, the state was being saved from saved_*, but we don't use that. So after u_blitter resumed we got some corrupted state in. So let's just remove the saved_* stuff. I thought it was weird but harmless, it's actually broken.
* i915g: Don't update I915_HW_PROGRAM in update_framebufferStéphane Marchesin2012-10-051-2/+2
| | | | It's already going to be updated in update_dst_buf_vars.
* Revert "i915g: Don't bind 0-length programs"Stéphane Marchesin2012-10-051-8/+2
| | | | This reverts commit 8c28a9bd733f5b51ab459c6bc626a5aaac5a6c0c.
* i915g: Don't bind 0-length programsStéphane Marchesin2012-10-041-2/+8
| | | | | | | | Since we started doing fixups for different render target formats, this has been an issue. Instead just don't do anything, when the program gets emitted later it'll get the correct fixup. Fixes a bunch of piglit tests.
* i915g: Implement srgb textures the easy way.Stéphane Marchesin2012-10-023-102/+9
| | | | | Since the hw can do it, let's use the hw. It's less accurate but doesn't have the shader instruction count shortcomings.
* i915g: Use X tiling for texturesStéphane Marchesin2012-10-021-7/+2
| | | | | This is what the classic driver does, and it allows faster texture uploads.
* radeonsi: Fix double compilation of shader variants.Michel Dänzer2012-10-022-6/+4
| | | | | | | Fixes crash in piglit glsl-max-varyings. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* radeonsi: Better indexing of parameters in the pixel shader.Michel Dänzer2012-10-023-8/+12
| | | | | | | | | | | We were previously using the TGSI input index, which can exceed the number of parameters passed from the vertex shader via the parameter cache. Now we use a separate index which only counts those parameters. Prevents piglit regressions with the following fix. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* radeon/llvm: Disable SI flow control again for now.Michel Dänzer2012-10-021-1/+2
| | | | | | | It makes piglit unreliable due to VM protection faults and GPU lockups. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* radeon/llvm: Only initialize the AMDGPU targetTom Stellard2012-10-011-7/+1
|
* radeon: Fix build with LLVM 3.1Tom Stellard2012-10-011-0/+1
| | | | The build was broken by commit 8d9778589f4b3a174e884338adb0fe1bdeca5eb7
* radeon: Support LLVM 3.2Tom Stellard2012-10-013-3/+11
| | | | | LLVM 3.2 and newer requires that the R600/SI backend be part of the LLVM tree.
* r600g: Re-enable growing of the compute memory poolTom Stellard2012-10-012-18/+4
|
* r600g: Fix bug when adding new items to the compute memory poolTom Stellard2012-10-011-6/+23
| | | | | | | The items are ordered in the item list by their offsets, with the lowest offset coming first in the list. The old code was assuming that new items being added to the list would always have a greater offset than the first item in the list, however this is not always the case.
* r600g: Use a RAT buffer as the backing bo for the compute memory poolTom Stellard2012-10-012-34/+6
|
* r600g: Make sure to init the compute memory pool with enough memoryTom Stellard2012-10-011-1/+1
|
* r600g: Add evergreen_init_color_surface_rat() v2Tom Stellard2012-10-012-0/+59
| | | | | | | | | | | This can be used to initialize the CB* registers for buffers without a radeon_surface. v2: - Get correct group_bytes value from r600_screen - Stop setting unnecessary fields Reviewed-by: Marek Olšák <[email protected]>
* r600g: Add register field definitions for 028C70_RESOURCE_TYPETom Stellard2012-10-011-0/+7
| | | | Reviewed-by: Marek Olšák <[email protected]>
* radeonsi: emit PA_SU_PRIM_FILTER_CNTLAlex Deucher2012-10-011-0/+2
| | | | | | | has no default value. Signed-off-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* radeonsi: remove some old r600g cruftAlex Deucher2012-10-011-28/+0
| | | | | Signed-off-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* radeonsi: fix range checking for state regsAlex Deucher2012-10-011-3/+4
| | | | | | | | end value is exclusive, but in practice we shouldn't hit this. Signed-off-by: Alex Deucher <[email protected]> Signed-off-by: Christian König <[email protected]>
* radeonsi: drop some cayman remnantsAlex Deucher2012-10-014-24/+4
| | | | | Signed-off-by: Alex Deucher <[email protected]> Reviewed-by: Christian König <[email protected]>
* radeonsi: define SGPR register numbersChristian König2012-10-016-25/+28
| | | | | | Instead of hardcoding them. Signed-off-by: Christian König <[email protected]>
* nvc0: make sure handles for unbound textures/samplers are uploaded on nve4Christoph Bumiller2012-09-302-2/+8
|
* nv50,nvc0: fix 3d engine blit for nvc0Christoph Bumiller2012-09-302-4/+9
|
* nv50,nvc0: implement blitChristoph Bumiller2012-09-3016-715/+1398
|
* gallium: remove resource_resolveMarek Olšák2012-09-307-158/+8
| | | | | | | The functionality is provided by the new blit function. Tested-by: Michel Dänzer <[email protected]> Reviewed-by: Brian Paul <[email protected]>