summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/r600_state.c
AgeCommit message (Collapse)Author
2010-11-20r600g: Fix location for clip plane registersOwen W. Taylor
The stride between the different clip plane registers was incorrect. https://bugs.freedesktop.org/show_bug.cgi?id=31788 agd5f: fix evergreen as well.
2010-11-19r600g: use full range of VS resources for vertex samplersAlex Deucher
Now that we have fetch shaders, the full range of VS resources can be used for sampling.
2010-11-19r600g: add fetch shader capabilitiesJerome Glisse
Use fetch shader instead of having fetch instruction in the vertex shader. Allow to restrict shader update to a smaller part when vertex buffer input layout changes. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-17r600g: code cleanup (indent, trailing space, empty line ...)Jerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-03evergreeng: respect linewidth state, use integer widths onlyKeith Whitwell
Discard fractional bits from linewidth. This matches the nvidia closed drivers, my reading of the OpenGL SI and current llvmpipe behaviour. It looks a lot nicer & avoids ugliness where lines alternate between n and n+1 pixels in width along their length. Also fix up r600g to match.
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-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-10-26r600g: fix magic 0x1 ->flat shade enaDave Airlie
2010-10-24r600g: drop more common state handling codeDave Airlie
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 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: 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-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-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-13r600g: remove bpt and start using pitch_in_bytes/pixels.Dave Airlie
this mirror changes in r300g, bpt is kinda useless when it comes to some of the non-simple texture formats.
2010-10-13r600g: rename pitch in texture to pitch_in_bytesDave Airlie
2010-10-13r600g: store samplers/views across blit when we need to modify themDave Airlie
also fixup framebuffer state copies to avoid bad state.
2010-10-13r600g: fix scissor/cliprect confusionDave Airlie
gallium calls them scissors, but r600 hw like r300 is better off using cliprects to implement them as we can turn them on/off a lot easier.
2010-10-12r600g: fix typo in vertex sampling on r600Dave Airlie
fixes https://bugs.freedesktop.org/show_bug.cgi?id=30771 Reported-by: Kevin DeKorte
2010-10-11r600g: don't run with scissors.Dave Airlie
This could probably be done much nicer, I've spent a day chasing a coherency problem in the kernel, that turned out to be incorrect scissor setup.
2010-10-11r600g: enable vertex samplers.Dave Airlie
We need to move the texture sampler resources out of the range of the vertex attribs. We could probably improve this using an allocator but this is the simple answer for now. makes mesa-demos/src/glsl/vert-tex work.
2010-10-07r600g: use format from the sampler view not from the texture.Dave Airlie
we want to use the format from the sampler view which isn't always the same as the texture format when creating sampler views.
2010-10-05r600g: drop use_mem_constant.Dave Airlie
since we plan on using dx10 constant buffers everywhere.
2010-10-04r600g: allow r600_bo to be a sub allocation of a big boJerome Glisse
Add bo offset everywhere needed if r600_bo is ever a sub bo of a bigger bo. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-04r600g: rename radeon_ws_bo to r600_boJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-10-01r600g: Remove unnecessary headers.Vinson Lee
2010-10-01r600g: fixup vertex format picking.Dave Airlie
there are some vertex formats defined in r600c not in the docs.
2010-10-01r600g: add winsys support for CTL constants.Dave Airlie
These need to be emitted, we also need them to do proper vtx start, instead of abusing index offset.
2010-10-01r600g: fix evergreen depth flushing.Dave Airlie
although evergreen can apparantly sample direct from 24-bit, just make it work with the current method for now.
2010-09-30r600g: use constant buffer instead of register for constantJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-30r600g: clean up some code from move to new paths.Dave Airlie
mainly remove 2 suffix from function names
2010-09-29r600g: more cleanupJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-29r600g: cleanupJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-29r600g: delete old pathJerome Glisse
Lot of clean can now happen. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-29Revert "r600g: add initial vertex translate support."Dave Airlie
This reverts commit 914b669b082258fc05d0fec047b69949d88585c4. I didn't mean to commit this yet, will redo in new state system once we clean it up.
2010-09-29r600g: add initial vertex translate support.Dave Airlie
2010-09-28r600g: fix db flush breaking config stateDave Airlie
2010-09-26r600g: move around variables to share depth uncompression codeJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-20r600g: move chip class to radeon common structureJerome Glisse
So texture code can be shared btw new state design & old one. Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-20r600g: clean up valgrind issues on maxtargets test.Dave Airlie
2010-09-20r600g: fix fbo-drawbuffers-maxtargetsDave Airlie
we were leaking buffers since the flush code was added, it wasn't dropping references. move setting up flush to the set_framebuffer_state. clean up the flush state object. make more space in the BOs array for flushing.
2010-09-17r600g: add upload manager support.Dave Airlie
this add support for the upload manager for uploading user vbo/index buffers. this provides a considerable speedup in q3 type games.
2010-09-17r600g: attempt to abstract kernel bos from pipe driver.Dave Airlie
introduce an abstraction layer between kernel bos and the winsys BOs. this is to allow plugging in pb manager with minimal disruption to pipe driver.
2010-09-14r600g: Remove unnecessary headers.Vinson Lee