summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600
Commit message (Collapse)AuthorAgeFilesLines
* r600g: don't use register mask for CB_COLOR_CONTROL on r6xx-r7xxMarek Olšák2012-01-313-7/+17
| | | | | Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: don't set CB_TARGET_MASK in set_framebuffer_stateMarek Olšák2012-01-312-13/+2
| | | | | | | It's emitted in draw_vbo, always. Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: set full register mask for CB_COLOR_CONTROL on evergreenMarek Olšák2012-01-311-1/+1
| | | | | | | We don't set the other bits anywhere else. Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: use a more clever way to disable per-vertex point sizeMarek Olšák2012-01-314-14/+26
| | | | | | | | This uses point size clamping to force point size to a particular value, making the vertex shader output irrelevant. Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: don't use register mask for DB_RENDER_CONTROLMarek Olšák2012-01-312-6/+2
| | | | | | | | We don't set the other bits anywhere else except the other DSA states, which are mutually-exclusive with this one. Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: cleanup setting DB_SHADER_CONTROLMarek Olšák2012-01-312-32/+7
| | | | | Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: rework and consolidate stencilref state settingMarek Olšák2012-01-314-84/+85
| | | | | | | Stop using the register mask. Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: don't use register mask for SQ_GPR_RESOURCE_MGMT_1Marek Olšák2012-01-312-1/+4
| | | | | Reviewed-by: Dave Airlie <[email protected]> Reviewed-by: Alex Deucher <[email protected]>
* r600g: set minimum point size to 1.0 for non-sprite non-aa pointsMarek Olšák2012-01-314-2/+31
|
* r600g: fix udiv/idiv/umod/imod on caymanDave Airlie2012-01-301-91/+280
| | | | | | | | | | Cayman needs some of the MUL instructions spread across a full slot of vectors. It also no longer has RECIP_UINT, the recommendation is to replace it with a U2F + RECIP_IEEE + MUL + F2U. Signed-off-by: Dave Airlie <[email protected]>
* r600g: enable blend_bypass for uint/sintDave Airlie2012-01-301-1/+12
|
* r600g: fix fragcoord.w test on caymanDave Airlie2012-01-301-11/+28
|
* r600g: remove unused streamout codeMarek Olšák2012-01-301-29/+0
|
* r600g: disable printing debug info for streamoutMarek Olšák2012-01-301-1/+2
|
* st/mesa: add PIPE_CAP_GLSL_FEATURE_LEVEL, cleanup st_extensions.cMarek Olšák2012-01-291-0/+3
| | | | | | | | v2: handle the cap in r300 and r600 as well Additional info for r600g: The env var R600_GLSL130=1 enables GLSL 1.3. Along with R600_STREAMOUT=1, it enables full GL 3.
* r600g: fix linear and flat interpolationVadim Girlin2012-01-284-17/+27
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: remove unsupported evergreen CB formatsAlex Deucher2012-01-271-7/+0
| | | | | | | | | | | | | | The evergreen+ CB no longer supports the following formats compared to 6xx/7xx: - COLOR_4_4 - COLOR_3_3_2 - COLOR_6_5_5 - COLOR_8_24_FLOAT - COLOR_24_8_FLOAT - COLOR_11_11_10 - COLOR_11_11_10_FLOAT Signed-off-by: Alex Deucher <[email protected]>
* Revert "r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enable"Marek Olšák2012-01-271-1/+1
| | | | | | This reverts commit d6cd514edbeca0de38561f66189748078d0dc602. It broke multiple streamout buffers, because it only enabled the first one.
* r600g: handle start_component from stream_output_info when possibleMarek Olšák2012-01-251-4/+4
|
* r600g: don't expose transform_feedback2 without kernel supportMarek Olšák2012-01-251-1/+2
|
* r600g: nuke the fallback for vertex and fragment color clampingMarek Olšák2012-01-256-53/+1
|
* st/mesa: do vertex and fragment color clamping in shadersMarek Olšák2012-01-251-1/+3
| | | | | | | | | | | | | | For ARB_color_buffer_float. Most hardware can't do it and st/mesa is the perfect place for a fallback. The exceptions are: - r500 (vertex clamp only) - nv50 (both) - nvc0 (both) - softpipe (both) We also have to take into account that r300 can do CLAMPED vertex colors only, while r600 can do UNCLAMPED vertex colors only. The difference can be expressed with the two new CAPs.
* r600g: remove unused variableBrian Paul2012-01-241-1/+0
|
* r600g: fix inconsistency with INTERP* opcode definitionsVadim Girlin2012-01-243-11/+11
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: replace raw opcodes with names in the is_alu_trans/vectorVadim Girlin2012-01-241-12/+80
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: add missing opcode definitionsVadim Girlin2012-01-241-5/+85
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix loop break/continue operationsVadim Girlin2012-01-241-2/+0
| | | | Signed-off-by: Vadim Girlin <[email protected]>
* r600g: fix fragcoord.wVadim Girlin2012-01-241-4/+27
| | | | Signed-off-by: Vadim Girlin <[email protected]>
* r600g: fix interpolation with clipvertexVadim Girlin2012-01-241-0/+3
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: clean up register headersAlex Deucher2012-01-234-66/+55
| | | | | | | | - CP_INTERRUPT packet doesn't exist - remove lots of r6xx copy/paste remnants from evergreen reg header - fix some cayman specific registers Signed-off-by: Alex Deucher <[email protected]>
* r600g: cayman fix integer multipliesDave Airlie2012-01-231-1/+29
| | | | | | | | Looks insane, but it does appear we need a full slot per input/output. This fixes another 180 or so piglit tests. Signed-off-by: Dave Airlie <[email protected]>
* r600g: cayman initial integer supportDave Airlie2012-01-231-22/+24
| | | | | | | | | | Adds all the easier lowhanging opcodes. Fixes ~3000 piglit tests with GLSL1.30 enabled on cayman. This just leaves the mul/div/mod ops to fix up. Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix VS fog exportVadim Girlin2012-01-231-0/+5
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: shift integer ops are trans unit only on r600.Dave Airlie2012-01-221-0/+1
| | | | Signed-off-by: Dave Airlie <[email protected]>
* r600g: replace trans/vector-only instruction lists with ranges (v2)Vadim Girlin2012-01-221-71/+15
| | | | | | | airlied : assert on cayman cases to keep compiler happy Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* Revert "r600g: replace trans/vector-only instruction lists with ranges"Dave Airlie2012-01-221-11/+73
| | | | | | This reverts commit 946309067c835d35a85ab2ad774df6698e6669ab. Until we check the cayman bits out properly
* r600g: srgb mode is only valid on certain format types.Dave Airlie2012-01-221-0/+8
| | | | | | | | | | | "If set, forces degamma on XYZ if format is FMT_8_8_8_8, FMT_BC1, FMT_BC2, or FMT_BC3" Don't claim support for sRGB on any other formts. This fixes glean texture_srgb. Signed-off-by: Dave Airlie <[email protected]>
* r600g: initial cube shadow samplingDave Airlie2012-01-221-2/+22
| | | | | | | It doesn't pass the piglit test, but it seems to be a lot closer than it was before. I need to track down if there is another problem. Signed-off-by: Dave Airlie <[email protected]>
* r600g: take into account kcache banks for bank swizzle checkVadim Girlin2012-01-221-2/+2
| | | | | | | | | | Due to the changes for multiple kcache banks support, now we are assigning final SRCx_SEL values for kcache access at the later stage, when building the bytecode. So we need to take into account kcache banks to distinguish the constants with the same address but different bank index. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: set round_mode to truncate and get rid of tgsi_f2i on evergreenVadim Girlin2012-01-223-56/+50
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: replace trans/vector-only instruction lists with rangesVadim Girlin2012-01-221-73/+11
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: fix some interpolation tests for evergreenVadim Girlin2012-01-221-4/+4
| | | | | | | Same fix as previously done by Dave Airlie for r600/r700 Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: implement clip vertex v2Vadim Girlin2012-01-2110-113/+196
| | | | | | | | Clip planes are uploaded as a constant buffer and used by the vertex shader to produce corresponding clip distances for hw clipping. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: improve kcache line sets handling v2Vadim Girlin2012-01-214-86/+216
| | | | | | | | | Add support for multiple kcache banks (constant buffers). Lock the required lines only. Allow up to 4 kcache line sets in the alu clause by using ALU_EXTENDED on eg+. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: no need to do CUBE coordinate handling for TXQ.Dave Airlie2012-01-211-1/+3
| | | | | | Fixes texSize on cube. Signed-off-by: Dave Airlie <[email protected]>
* r600g: make INTERP_LOAD_P0 vector-onlyVadim Girlin2012-01-211-0/+1
| | | | | Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
* r600g: use S_028B20_BUFFER_0_EN macro for streamout buffer enableAlex Deucher2012-01-201-1/+1
| | | | Signed-off-by: Alex Deucher <[email protected]>
* r600g: update streamout support for virtual addressesAlex Deucher2012-01-201-7/+18
| | | | Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix streamout on evergreenVadim Girlin2012-01-201-0/+6
| | | | | | | | Enable it in the evergreen_context_draw if needed. Same as already done in the r600_context_draw for r6xx/r7xx. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
* r600g: fix combined MEM_STREAM instructionsVadim Girlin2012-01-201-1/+3
| | | | | | | | BURST_COUNT is clipped with ARRAY_SIZE, so set it to the max value to avoid clipping. Signed-off-by: Vadim Girlin <[email protected]> Signed-off-by: Alex Deucher <[email protected]>