summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300
Commit message (Collapse)AuthorAgeFilesLines
* r300/compiler: Rewrite register allocatorTom Stellard2011-04-301-0/+1
| | | | | | | The new allocator uses ra and does swizzle packing. Also, a data structure (struct rc_variable) and associated functions have been added for generating UD and DU chains.
* r300g: reorder capsMarek Olšák2011-04-241-13/+11
|
* r300g: fix exposing caps on r300-r400Marek Olšák2011-04-241-2/+2
| | | | Broken with 72239d16cd08113e994ea3508f91193c682b0930.
* r300g: do not advertise color_buffer_float on r300 and r400Marek Olšák2011-04-221-1/+1
| | | | It seems they can't do unclamped vertex colors. Tested on RV350.
* r300g: disallow A16F,L16F,LA16F,I16F texture formats on DRM<2.8.0Marek Olšák2011-04-221-4/+9
|
* gallium: add fallback for copying buffers to all driversMarek Olšák2011-04-211-0/+8
| | | | | | Just to keep drivers working. Reviewed-by: Jakob Bornecrantz <[email protected]>
* r300g: remove non-existing include path from SConscriptMarek Olšák2011-04-181-1/+0
|
* r300g/winsys: rename r300->radeon and do a little cleanupMarek Olšák2011-04-1822-439/+117
| | | | | Renaming a few files, types, and functions. Also make the winsys independent of r300g.
* r300g: disable ARB_draw_instanced on SWTCL chipsets.Marek Olšák2011-04-181-1/+1
| | | | This fixes Unigine Heaven.
* gallium: add and use generic function for querying patented format support (v2)Marek Olšák2011-04-152-19/+3
| | | | v2: Unsigned floats are allowed regardless of the configure switch.
* r300g: enable A/L/LA/I float render targetsMarek Olšák2011-04-151-14/+14
|
* Revert "r300g: handle DISCARD_WHOLE_RESOURCE for buffers"Marek Olšák2011-04-081-25/+10
| | | | | | | | | | | | | This reverts commit 437c748bf5072d2bded77a00c74c51cdb8b510e5. The commit is wrong for several reasons. One of them is when we grab a new buffer, we should update all the states it is bound in, including all parallel contexts. I don't think this is even doable. The correct solution would be upload data via a temporary buffer and do resource_copy_region to the original one. https://bugs.freedesktop.org/show_bug.cgi?id=36088
* r300g: fix another crash with hyperzMarek Olšák2011-04-082-22/+2
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=36086
* r300g: emit US_FORMAT on R520 onlyMarek Olšák2011-04-082-2/+2
|
* r300g: fix crash with hyperzMarek Olšák2011-04-081-6/+4
| | | | r300_update_hyperz_state is no longer required to be called here.
* r300g: Properly take the sampler view's first_level into account when sampling.Henri Verbeet2011-04-081-15/+21
| | | | | Signed-off-by: Brian Paul <[email protected]> Signed-off-by: Marek Olšák <[email protected]>
* r300g: do not advertise R16F and RG16F on DRM < 2.8.0Marek Olšák2011-04-081-2/+5
|
* r300g: fix texturing with sizes > 2048 on r500Marek Olšák2011-04-087-8/+52
|
* r300g: postpone fragment shader state validation until draw_vboMarek Olšák2011-04-054-22/+52
|
* r300g: fix RG/LATC1_SNORM by doing UNORM->SNORM conversion in the shaderMarek Olšák2011-04-054-30/+63
|
* r300/compiler: implement the CND opcodeMarek Olšák2011-04-051-2/+1
| | | | No one uses it now, but I will need it for a lowering pass.
* r300g: tell the GLSL compiler to lower the continue opcodeMarek Olšák2011-04-031-2/+2
| | | | NOTE: This is a candidate for the stable branches.
* r300g: handle DISCARD_WHOLE_RESOURCE for buffersMarek Olšák2011-04-031-10/+25
|
* gallium: set PIPE_CAP_MIXED_COLORBUFFER_FORMATS in some driversMarek Olšák2011-04-011-0/+2
|
* r300g: add support for all render targets with one and two channelsMarek Olšák2011-03-291-30/+130
| | | | | | | | | | | | | | | The hardware should be set according to this table: FORMAT -> R300 COLORFORMAT ------------------------- X16 -> UV88 X16Y16 -> ARGB8888 X32 -> ARGB8888 X32Y32 -> ARGB16161616 US_OUT_FMT must contain the real format. I wasn't able to make B3G3R2 and L4A4 work, but those aren't important.
* r300g: finish up signed normalized textures and render targetsMarek Olšák2011-03-292-28/+46
|
* r300g: enable clamping controlsMarek Olšák2011-03-294-6/+14
|
* r300g: fix alpha-test with no colorbufferMarek Olšák2011-03-241-0/+5
| | | | | | | Piglit: - fbo-alphatest-nocolor NOTE: This is a candidate for the stable branches.
* r300g: implement the texture barrierMarek Olšák2011-03-151-0/+10
|
* r300g: clamp after blending for fixed-point formats onlyMarek Olšák2011-03-143-14/+36
|
* r300g: implement fragment color clamping in the shaderMarek Olšák2011-03-123-0/+10
| | | | | This finishes the implementation of the fragment color clamp control for ARB_color_buffer_float. I don't wanna keep this stuff in a branch...
* gallium: remove flags from the flush functionMarek Olšák2011-03-112-3/+1
| | | | | | | | | | The drivers have been changed so that they behave as if all of the flags were set. This is already implicit in most hardware drivers and required for multiple contexts. Some state trackers were also abusing the PIPE_FLUSH_RENDER_CACHE flag to decide whether flush_frontbuffer should be called. New flag ST_FLUSH_FRONT has been added to st_api.h as a replacement.
* gallium: remove the geom_flags param from is_format_supportedMarek Olšák2011-03-112-4/+3
|
* gallium: cleanup fence_signalled and fence_finishMarek Olšák2011-03-111-11/+9
| | | | So that they don't have the driver-specific param and return type.
* gallium: kill is_resource_referencedMarek Olšák2011-03-114-28/+0
| | | | Only st/xorg used it and even incorrectly with regards to pipelined transfers.
* r300g: fix alignement for NPOT values in hyperz setupNicolas Peninguy2011-03-111-3/+3
| | | | | | | With 3 pipes cards we need to align with NPOT values. This fixes: https://bugs.freedesktop.org/show_bug.cgi?id=32945 Signed-off-by: Nicolas Peninguy <[email protected]>
* r300g: handle timeout parameter in fence_finishMarek Olšák2011-03-081-0/+17
|
* gallium: add timeout parameter to fence_finishMarek Olšák2011-03-081-1/+2
| | | | | This is a follow-up to the ARB_sync patch for st/mesa and completes the ARB_sync implementation.
* r300g: add LATC supportMarek Olšák2011-03-083-4/+22
|
* r300g: decide whether a flush should be asynchronous when calling itMarek Olšák2011-03-088-38/+37
| | | | Thread offloading is not sometimes desirable, e.g. when mapping a buffer.
* r300g: use pipelined transfers for RGTC texturesMarek Olšák2011-03-081-1/+2
|
* r300g/swtcl: advertise draw_instanced and primitive_restartMarek Olšák2011-03-051-2/+5
|
* r300g: implement instanced arraysMarek Olšák2011-03-055-48/+132
|
* gallium: split CAP_INSTANCE_DRAWING into INSTANCEID and INSTANCE_DIVISORMarek Olšák2011-03-051-1/+2
| | | | | | | | ARB_instanced_arrays is a subset of D3D9. ARB_draw_instanced is a subset of D3D10. The point of this change is to allow D3D9-level drivers to enable ARB_instanced_arrays without ARB_draw_instanced.
* r300g: cleanup parameters of draw functionsMarek Olšák2011-03-053-108/+113
|
* r300g: preliminary implementation of clamping controlsMarek Olšák2011-03-044-22/+33
|
* r300g: implement FP16 alpha testMarek Olšák2011-03-044-8/+55
|
* r300g: implement blending for some of non-RGBA8 formatsMarek Olšák2011-03-042-7/+52
| | | | | | | | | | | | | | | | Blending is now fully supported with: - R8_UNORM - R8G8_UNORM - B8G8R8A8_UNORM - R16G16B16A16_FLOAT (r500-only) Blending is partially supported (DST_ALPHA not working) with: - L8A8_UNORM - I8_UNORM - B5G5R5A1_UNORM - B10G10R10A2_UNORM The other formats can't do blending.
* r300g: require DRM 2.3.0 (kernel 2.6.34)Marek Olšák2011-03-0210-102/+60
| | | | Running any older kernel is not recommended anyway.
* r300g: Silence 'control reaches end of non-void function' warning.Vinson Lee2011-03-021-0/+4
| | | | | | Fixes this GCC warning. r300_hyperz.c: In function 'r300_get_hiz_func': r300_hyperz.c:65: warning: control reaches end of non-void function