summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600
Commit message (Collapse)AuthorAgeFilesLines
* r600g: cleanup r600_reset_blittable_to_compressedMarek Olšák2011-10-211-6/+3
|
* r600g: Use the bitfield define matching the register it is used for.Mathias Fröhlich2011-10-181-2/+2
| | | | Fix a typo that should result in the same code.
* gallium: rename ZS stencil type to UINT (v2)Dave Airlie2011-10-113-32/+32
| | | | | | | | | | these are never USCALED, always UINT in reality. taken from some work by Christoph Bumiller v2: fixup formatting of table + tabs Signed-off-by: Dave Airlie <[email protected]>
* r600g: drop force int type workaroundDave Airlie2011-10-104-28/+5
| | | | | | | now that we have integer texture types I can drop this workaround so that copies of values is done properly (as floats would fail on some corner cases). Signed-off-by: Dave Airlie <[email protected]>
* r600g: add integer texture/render integer formats for r600/700.Dave Airlie2011-10-101-2/+60
| | | | | | with these I can drop the force int type hack. Signed-off-by: Dave Airlie <[email protected]>
* r600g: uarl fixes.Dave Airlie2011-10-092-18/+43
| | | | Not 100% sure these are correct yet
* r600g: enable integer shader cap for evergreen.Dave Airlie2011-10-091-0/+3
| | | | | | | Will get to adding r600/r700/cayman support, have it mostly written on another PC. Signed-off-by: Dave Airlie <[email protected]>
* r600g/eg: add integer types supportDave Airlie2011-10-093-10/+66
| | | | | | | | adds handling for int texture/vertices to evergreen. TODO r600/700 support. Signed-off-by: Dave Airlie <[email protected]>
* u_blitter: add integer clear supportDave Airlie2011-10-091-3/+3
| | | | | | | | | | | We need add a new set of fragment shader variants, along with new vertex elements for signed and unsigned clears. The new fragment shader variants are due to the integers values requiring CONSTANT interpolation. The new vertex element descriptions are for passing the clear color as an unsigned or signed integer value. Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix parsing TGSI declarationsMarek Olšák2011-10-041-2/+2
| | | | It was a lucky coincidence that it worked.
* r600g: fix a compiler warningMarek Olšák2011-09-301-0/+1
|
* r600g: move all files from winsys/r600 into drivers/r600Marek Olšák2011-09-304-0/+3219
| | | | | | Be sure to reconfigure after this commit. Reviewed-by: Alex Deucher <[email protected]>
* winsys/radeon: move GEM domains out of the drivers into winsysMarek Olšák2011-09-303-34/+1
| | | | | | | | | | | | | | | The drivers don't need to care about the domains. All they need to set are the bind and usage flags. This simplifies the winsys too. This also fixes on r600g: - fbo-depth-GL_DEPTH_COMPONENT32F-copypixels - fbo-depth-GL_DEPTH_COMPONENT16-copypixels - fbo-depth-GL_DEPTH_COMPONENT24-copypixels - fbo-depth-GL_DEPTH_COMPONENT32-copypixels - fbo-depth-GL_DEPTH24_STENCIL8-copypixels I can't explain it. Reviewed-by: Alex Deucher <[email protected]>
* winsys/radeon: remove a redundant parameter 'size' from buffer_from_handleMarek Olšák2011-09-301-1/+1
| | | | | | It's part of pb_buffer already. Reviewed-by: Alex Deucher <[email protected]>
* r600g: remove struct radeon (or what's left of it)Marek Olšák2011-09-303-24/+5
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: move family and chip_class from struct radeon to r600_screenMarek Olšák2011-09-304-15/+42
| | | | Reviewed-by: Alex Deucher <[email protected]>
* r600g: merge r600_bo with r600_resourceMarek Olšák2011-09-3011-191/+179
| | | | | | | I have moved 'last_flush' and 'binding' from r600_bo to winsys/radeon. The other members are now part of r600_resource. Reviewed-by: Alex Deucher <[email protected]>
* gallium: add PIPE_CAP_TEXTURE_BARRIERMarek Olšák2011-09-301-0/+1
| | | | | | Same issue as with conditional_render. Reviewed-by: Brian Paul <[email protected]>
* gallium: add PIPE_CAP_CONDITIONAL_RENDERMarek Olšák2011-09-301-0/+1
| | | | | | | We were checking whether render_condition is set. That was not reliable, because it's always set with trace and noop regardless of driver support. Reviewed-by: Brian Paul <[email protected]>
* gallium: add and use PIPE_SHADER_CAP_MAX_TEXTURE_SAMPLERSMarek Olšák2011-09-301-3/+2
| | | | | | | | | This removes: - PIPE_CAP_MAX_TEXTURE_IMAGE_UNITS - PIPE_CAP_MAX_VERTEX_TEXTURE_UNITS in favor of the that new per-shader cap. Reviewed-by: Brian Paul <[email protected]>
* gallium: remove PIPE_CAP_TEXTURE_MIRROR_REPEATMarek Olšák2011-09-301-1/+0
| | | | | | | | | | All drivers support it (well, except Cell). The boolean option is going away from core Mesa too. This is a follow-up to Ian Romanick's patch "mesa: Remove ARB_texture_mirrored_repeat extension enable flag". Reviewed-by: Brian Paul <[email protected]>
* r600: support polygon offset clamp stateChristoph Bumiller2011-09-282-2/+2
|
* gallium: move border color to be a color unionDave Airlie2011-09-272-10/+10
| | | | | | | | | | EXT_texture_integer also specifies border color should be a color union, the values are used according to the texture sampler format. (update docs) Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* r600g: add index_bias to index buffer boundsMarek Olšák2011-09-261-0/+5
| | | | | | This fixes ARB_draw_elements_base_vertex with max_index != ~0. NOTE: This is a candidate for the 7.11 branch.
* u_vbuf_mgr: s/u_vbuf_mgr_/u_vbuf_Marek Olšák2011-09-263-9/+9
|
* u_vbuf_mgr: cleanup original vs real vertex buffer arraysMarek Olšák2011-09-261-4/+4
| | | | | | It can now override both buffer offsets and strides in additions to resources. Overriding buffer offsets was kinda hackish and could cause issues with non-native vertex formats.
* gallium: move clear paths from rgba to a pointer to a color union (v2)Dave Airlie2011-09-181-5/+6
| | | | | | | | | | | | | | | 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]>
* 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]>
* 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]>
* 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.
* 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-101-3/+2
| | | | v2: remove PIPE_CAP_ARRAY_TEXTURES in favor of the new CAP.