summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
Commit message (Collapse)AuthorAgeFilesLines
* r300/compiler: Fix regalloc for values with multiple writersTom Stellard2011-09-181-3/+6
| | | | | | | https://bugs.freedesktop.org/show_bug.cgi?id=40062 https://bugs.freedesktop.org/show_bug.cgi?id=36939 Note: This is a candidate for the 7.11 branch.
* gallium: move clear paths from rgba to a pointer to a color union (v2)Dave Airlie2011-09-1827-103/+121
| | | | | | | | | | | | | | | This moves the gallium interface for clears from using a pointer to 4 floats to a pointer to a union of float/unsigned/int values. Notes: 1. the value is opaque. 2. only when the value is used should it be interpretered according to the surface format it is going to be used with. 3. float clears on integer buffers and vice-versa are undefined. v2: fixed up vega and graw, dropped hunks that shouldn't have been in patch. Signed-off-by: Dave Airlie <[email protected]>
* r300/compiler: Add support for the output modifier (OMOD)Tom Stellard2011-09-1616-25/+310
|
* r300/compiler: Move some helper functions to radeon_compiler_util.cTom Stellard2011-09-163-33/+68
|
* r300/compiler: Don't unroll loops that conditionally increment the counterTom Stellard2011-09-161-2/+14
|
* nouveau: Fix typos of ParseSourceList in SConscript files.Vinson Lee2011-09-164-4/+4
| | | | Reviewed-by: Chia-I Wu <[email protected]>
* winsys/radeon: use the cache bufmgr for buffers with PIPE_BIND_CUSTOMMarek Olšák2011-09-161-1/+1
| | | | so that we don't abuse PIPE_BIND_VERTEX_BUFFER all the time.
* softpipe: use pipe_get_tile_rgba_format()Brian Paul2011-09-161-5/+6
| | | | | | | | | | | Pass an explicit surface format as we do with pipe_put_tile_rgba_format(). This fixes the piglit fbo-srgb-blit test. With GL_EXT_framebuffer_sRGB we override the resource's format with an explicit format (linear vs. sRGB). We need to do so both when getting and putting tiles. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40402 Reviewed-by: Dave Airlie <[email protected]>
* softpipe: use util_format_is_depth_or_stencil()Brian Paul2011-09-161-7/+1
| | | | Reviewed-by: Dave Airlie <[email protected]>
* r600g: fixup missing scaled r600 types.Dave Airlie2011-09-161-0/+4
| | | | | | | | I was still missing a couple of types on r600/r700 codepaths. Fixes these up. Signed-off-by: Dave Airlie <[email protected]>
* r600g: interpret integer texture types as ints.Dave Airlie2011-09-161-0/+5
| | | | | | | For signed/unsigned with no normalisation or srgb, assume its an INT type texture. Signed-off-by: Dave Airlie <[email protected]>
* r600g: take constantly interpolated values into a/cDave Airlie2011-09-161-3/+4
| | | | | | | We could constant interpolated values now and set have_perspective if nothing else is set to avoid a GPU hang. Signed-off-by: Dave Airlie <[email protected]>
* r600g: add flat non-interpolation support.Dave Airlie2011-09-163-3/+33
| | | | | | | | | TGSI CONSTANT interpolation is just flat, and we just read the values direct from the LDS into the GPR without doing any interpolation on them. This is needed to pass integer types into the fragment shader. Signed-off-by: Dave Airlie <[email protected]>
* r600g: set number type correctly for color buffers.Dave Airlie2011-09-161-5/+29
| | | | | | | | | If we get a scaled type assume its a real integer type (as textures are). Also fixup the blend bypass and blend clamp flags on evergreen as per the docs. Signed-off-by: Dave Airlie <[email protected]>
* r600g: add missing formats to color buffer setup.Dave Airlie2011-09-162-1/+17
| | | | | | just playing with EXT_texture_integer, and this was first bug. Signed-off-by: Dave Airlie <[email protected]>
* softpipe: use consistent indentation in sp_quad_blend.cBrian Paul2011-09-151-183/+183
|
* softpipe: fix blending for luminance/intensity surfacesBrian Paul2011-09-151-65/+96
| | | | | | | | | | | | | | If we're drawing to a luminance, luminance/alpha or intensity surface we have to adjust (rebase) the fragment/quad colors before writing them to the tile cache. The tile cache always stores RGBA colors but if we're caching a L/A surface (for example) we need to be sure that R=G=B so that subsequent reads from the surface cache appear to return L/A We previously had a special case for RGB (no alpha) surfaces. This change generalizes that for the other base formats. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40408, but sRGB formats are still failing. That'll be addressed in a later patch.
* r600g: Initialize multi VGT related register on Cayman.Michel Dänzer2011-09-142-0/+11
| | | | | | | | Prevents lockups with piglit tests draw-elements and draw-vertices using large numbers of vertices. Signed-off-by: Michel Dänzer <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* nvc0: implement resource_resolveChristoph Bumiller2011-09-144-5/+532
|
* llvmpipe: Remove dead lp_tile_shuffle_mask.py script.José Fonseca2011-09-141-32/+0
| | | | | Broken, and we now shuffle tiles with pack/unpack instructions, instead of shuffle masks.
* nv50/ir: add missing license headersChristoph Bumiller2011-09-1424-1/+484
|
* nvc0: emit tessellation mode and patch size in TCP/TEP validationChristoph Bumiller2011-09-141-1/+12
|
* nv50,nvc0: handle PIPE_CAP_MIN/MAX_TEXEL_OFFSETChristoph Bumiller2011-09-142-0/+8
|
* nvc0: remove old shader backend filesChristoph Bumiller2011-09-147-7270/+0
|
* nvc0: hook up to new shader code generatorChristoph Bumiller2011-09-1410-612/+508
| | | | | | Also includes loading of shared shader library code (used for f64 and integer division) and setting up the immediate array buffer which is appended to the code.
* nv50/ir: import new shader backend codeChristoph Bumiller2011-09-1427-2/+16434
|
* nvc0: prevent interruption of m2mf pushChristoph Bumiller2011-09-141-20/+18
| | | | | M2MF will trap if the data stream is interrupted by a QUERY fence and report too much or not enough data.
* nouveau: make data argument of nouveau_context::push_data constChristoph Bumiller2011-09-145-6/+6
|
* softpipe: implement blend color clampingBrian Paul2011-09-143-29/+117
| | | | | | | | | Per the GL spec, clamp incoming colors prior to blending depending on whether the destination buffer stores normalized (non-float) values. Note that the constant blend color needs to be clamped too (we always get the unclamped color from Mesa). Fixes https://bugs.freedesktop.org/show_bug.cgi?id=40412
* nouveau: Add max_references parameter to vl_create_decoder()Emeric Grange2011-09-141-6/+7
| | | | Signed-off-by: Emeric Grange <[email protected]>
* nv50/nvc0: add support for R4A4_UNORM and A4R4_UNORM formatsMarcin Slusarz2011-09-132-0/+16
| | | | R4A4 is needed by OSD in mplayer's xvmc output
* r600g: remove unused function r600_buffer_from_handleMarek Olšák2011-09-122-28/+0
|
* r600g: remove an irrelevant XXX commentMarek Olšák2011-09-121-1/+1
|
* r600g: remove r600_resource_buffer structMarek Olšák2011-09-124-80/+65
| | | | | This subclass of r600_resource doesn't contain any useful members, so let's just use r600_resource.
* r600g: set the return type of radeon_destroy to voidMarek Olšák2011-09-121-1/+1
|
* r600g: remove r600_drm_public.hMarek Olšák2011-09-122-1/+1
|
* r600g: inline some of the winsys r600_get functionsMarek Olšák2011-09-125-12/+7
|
* r600g: compute tiling info in the pipe, not in the winsysMarek Olšák2011-09-124-12/+133
| | | | The winsys doesn't need it.
* r600g: cleanup build include dirs and dependenciesMarek Olšák2011-09-123-8/+2
| | | | The scons build still depended on libdrm_radeon.
* r300g: handle the new CAPsMarek Olšák2011-09-111-0/+2
|
* nouveau: Add support for XvMC accelerationMaarten Lankhorst2011-09-106-7/+1328
| | | | | | Try to use the PMPEG where available Signed-off-by: Maarten Lankhorst <[email protected]>
* r300/compiler: Implement ROUNDTom Stellard2011-09-104-1/+56
| | | | | According to the GLSL spec, the implementor can decide which way to round when the fraction is .5. The r300 compiler will round down.
* r600g: fix shadow rect samplersMarek Olšák2011-09-101-3/+6
|
* r600g: use SAMPLE_LB for OPCODE_TXBMarek Olšák2011-09-101-3/+6
|
* r600g: enable texture arraysMarek Olšák2011-09-101-3/+3
|
* r600g: add support for shadow array samplersMarek Olšák2011-09-102-19/+57
| | | | I had to guess & verify how some of the SAMPLE instructions work.
* r600g: implement texture arrays for evergreenMarek Olšák2011-09-101-5/+18
|
* r600g: always decompress all mipmaps and layers, slices, or faces of zbuffersMarek Olšák2011-09-102-28/+49
| | | | | | This fixes piglit/fbo-depth-array. Reviewed-by: Dave Airlie <[email protected]>
* r600g: fix texture array filteringMarek Olšák2011-09-103-74/+113
| | | | | | | | | | | | | | This fixes piglit/fbo-generatemipmap-array. It looks like SQ_TEX_SAMPLER_WORD0_0.TEX_ARRAY_OVERRIDE should be set for array textures in order to disable filtering between slices, which adds a dependency between sampler views and sampler states. This patch reworks sampler state updates such that they are postponed until draw time. TEX_ARRAY_OVERRIDE is updated according to bound sampler views. This also consolidates setting the texture state between vertex and pixel shaders.
* gallium: add PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERSMarek Olšák2011-09-107-11/+10
| | | | v2: remove PIPE_CAP_ARRAY_TEXTURES in favor of the new CAP.