summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600
AgeCommit message (Collapse)Author
2010-11-03evergreeng: protect against null constant buffersKeith Whitwell
Should do better than this and actually unbind the buffer, but haven't yet gotten it to work.
2010-11-03r600g: set hardware pixel centers according to gl_rasterization_rulesKeith Whitwell
These were previously being left in the default (D3D) mode. This mean that triangles were drawn slightly incorrectly, but also because this state is relied on by the u_blitter code, all blits were half a pixel off.
2010-11-03r600g: remove unused flink, domain fields from r600_resourceKeith Whitwell
These were being set but not used anywhere.
2010-11-03r600g: use a buffer in GTT as intermediate on texture up and downloadsKeith Whitwell
Generalize the existing tiled_buffer path in texture transfers for use in some non-tiled up and downloads. Use a staging buffer, which the winsys will restrict to GTT memory. GTT buffers have the major advantage when they are mapped, they are cachable, which is a very nice property for downloads, usually the CPU will want to do look at the data it downloaded.
2010-11-03r600g: propogate resource usage flags to winsys, use to choose bo domainsKeith Whitwell
This opens the question of what interface the winsys layer should really have for talking about these concepts. For now I'm using the existing gallium resource usage concept, but there is no reason not use terms closer to what the hardware understands - eg. the domains themselves.
2010-11-03r600g: propagate usage flags in texture transfersKeith Whitwell
2010-11-02r600g: Destroy the winsys in r600_destroy_screen().Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: Delete custom_dsa_flush on shutdown.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02r600g: We don't support PIPE_CAP_PRIMITIVE_RESTART.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-11-02st/mesa: unbind constant buffer when not in useKeith Whitwell
Important as more constant buffers per shader start to get used. Fix up r600 (tested) and nv50 (untested) to cope with this. Drivers previously didn't see unbinds of constant buffers often or ever, so this isn't always dealt with cleanly. For r600 just return and keep the reference. Will try to do better in a followup change.
2010-11-02scons: Add aliases for several pipe drivers.José Fonseca
2010-11-02r600g: List recently added files in SConscript.José Fonseca
2010-10-27r600g: Silence uninitialized variable warnings.Vinson Lee
2010-10-27r600g: Destroy the blitter.Tilman Sauerbeck
This fix got lost in the state rework merge. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-10-26r600g: add assembler support for all the kcache fields.Dave Airlie
2010-10-26r600g: fix magic 0x1 ->flat shade enaDave Airlie
2010-10-24r600g: drop more common state handling codeDave Airlie
2010-10-24r600g: Also clear bc data when we're destroying a shader.Tilman Sauerbeck
[airlied: remove unused vars] Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-24r600g: Added r600_pipe_shader_destroy().Tilman Sauerbeck
Not yet complete. Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-24r600g: merge more of the common r600/evergreen state handlingDave Airlie
2010-10-24r600g: Fixed r600_vertex_element leak.Tilman Sauerbeck
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-21r600g: start splitting out common code from eg/r600.Dave Airlie
no point duplicating code that doesn't touch hw, also make it easier to spot mistakes
2010-10-21r600g: initial translate state supportDave Airlie
2010-10-21r600g: add texture tiling enable under a debug option.Dave Airlie
At the moment you need kernel patches to have texture tiling work with the kernel CS checker, so once they are upstream and the drm version is bumped we can make this enable flip the other way most likely.
2010-10-21r600g: add texture tiling alignment support.Dave Airlie
this sets things up to align stride/height with tile sizes, it also adds support for the 2D/1D array mode cross over point.
2010-10-21r600g: introduce a per-driver resource flag for transfers.Dave Airlie
this is to be used to decide not to tile a surface being used for transfers.
2010-10-21r600g: add r600 surface to store the aligned height.Dave Airlie
we need to know the aligned height when binding the surface to cb/zb, not the gallium surface height.
2010-10-21r600g: start adding hooks for aligning width/height for tiles.Dave Airlie
2010-10-21r600g: move to per-miplevel array mode.Dave Airlie
Since the hw transitions from 2D->1D sampling below the 2D macrotile size we need to keep track of the array mode per level so we can render to it using the CB.
2010-10-21r600g: all non-0 mipmap levels need to be w/h aligned to POT.Dave Airlie
this adds a new minify function to the driver to ensure this.
2010-10-20r600g: Ensure r600_src is initialized in tgsi_exp function.Vinson Lee
Silences these GCC warnings. r600_shader.c: In function 'tgsi_exp': r600_shader.c:2339: warning: 'r600_src[0].rel' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].abs' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].neg' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].chan' is used uninitialized in this function r600_shader.c:2339: warning: 'r600_src[0].sel' is used uninitialized in this function
2010-10-18r600g: retrieve tiling info from kernel for shared buffers.Dave Airlie
we need to know if the back is tiled so we can blit from it properly.
2010-10-18r600g: fix transfer function for tiling.Dave Airlie
this makes readback with tiled back work better.
2010-10-18r600g: attempt to cleanup depth blitDave Airlie
cleanup what I'm nearly sure is unnecessary work in the depth blit code.
2010-10-18r600g: depth needs to bound to dsDave Airlie
2010-10-18r600g: fix typo in tiling setup cb code.Dave Airlie
2010-10-18r600g: do proper tracking of views/samplers.Dave Airlie
we need to do pretty much what r300g does in for this, this fixes some issues seen while working on tiling.
2010-10-18r600g: set tiling bits in hw stateDave Airlie
2010-10-18r600g: get tiling info from kernelDave Airlie
2010-10-18r600g: add defines for tilingDave Airlie
2010-10-18r600g: switch to a common formats.h file since they are in different regsDave Airlie
2010-10-17r600g: add evergreen ARL support.Dave Airlie
Thanks to Alex Deucher for pointing out the FLT to int conversion is necessary and writing an initial patch, this brings about 20 piglits, and I think this is the last piece to make evergreen and r600 equal in terms of features.
2010-10-15r600g: evergreen interpolation support.Dave Airlie
On evergreen, interpolation has moved into the fragment shader, with the interpolation parmaters being passed via GPRs and LDS entries. This works out the number of interps required and reserves GPR/LDS storage for them, it also correctly routes face/position values which aren't interpolated from the vertex shader. Also if we noticed nothing is to be interpolated we always setup perspective interpolation for one value otherwise the GPU appears to lockup. This fixes about 15 piglit tests on evergreen.
2010-10-15r600g: handle absolute modifier in shader translatorKeith Whitwell
This was being classed as unsupported in one place but used in others. Enabling it seems to work fine. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-15r600g: emit hardware linewidthKeith Whitwell
Tested with demos/pixeltest - line rasterization doesn't seem to be set up for GL conventions yet, but at least width is respected now. Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-14r600g: select linear interpolate if tgsi input requests itDave Airlie
2010-10-14r600g: fixup typo in macro nameDave Airlie
2010-10-14r600g: fixup pos/face ena/address properlyDave Airlie
2010-10-14r600g: only pick centroid coordinate when asked.Dave Airlie
TGSI tells us when to use this, its not hooked up from GLSL to MESA to TGSI yet though.
2010-10-14r600g: Fix texture sampling with swizzled coordsFredrik Höglund
Signed-off-by: Dave Airlie <airlied@redhat.com>