summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/evergreen_state.c
AgeCommit message (Collapse)Author
2010-11-17r600g: code cleanup (indent, trailing space, empty line ...)Jerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-17r600g: Swizzle vertex data only once.Henri Verbeet
Vertex data swizzles are already done in the vertex shader. Doing them twice breaks BGRA vertex arrays for example.
2010-11-15r600g: Evergreen has two extra frac_bits for the sampler LOD state.Henri Verbeet
The (piglit) mipmap_limits test shows the issue very clearly.
2010-11-03evergreeng: set hardware pixelcenters according to gl_rasterization_rulesKeith Whitwell
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-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-10-26r600g: fix magic 0x1 ->flat shade enaDave Airlie
2010-10-24r600g: drop more common state handling codeDave Airlie
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: 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: 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-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-13r600g: fix stencil export for evergreen harderDave Airlie
2010-10-13r600g: evergreen add stencil export bitDave Airlie
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-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-11r600g: evergreen has no request size bit in texture word4Dave Airlie
2010-10-11r600g: fix input/output Z export mixup for evergreen.Dave Airlie
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-06r600g: add evergreen stencil support.Dave Airlie
this sets the stencil up for evergreen properly.
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: setup basic loop consts on r600 + evergreen.Dave Airlie
this sets up a single loop constant like r600c does.
2010-10-01r600g: only set the Z export if shader exports it.Dave Airlie
2010-10-01r600g: fixup vertex format picking.Dave Airlie
there are some vertex formats defined in r600c not in the docs.
2010-10-01r600g: realign evergreen code with r600 code.Dave Airlie
fixes segfault in depth-tex-modes-glsl and OA startup.
2010-10-01r600g: add reloc for evergreen color attribDave Airlie
we'll need this for color tiling on evergreen.
2010-10-01r600g: drop depth quirk on evergreenDave Airlie
none of the EG cards need the quirk.
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: 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: use a hash table instead of groupJerome Glisse
Instead of creating group of register use a hash table to lookup into which block each register belongs. This simplify code a bit. Signed-off-by: Jerome Glisse <jglisse@redhat.com
2010-09-29r600g: add evergreen texture border support to new pathDave Airlie
2010-09-28r600g: fix remaining piglit issue in new designJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-28r600g: on evergreen the centroid isn't set in this register.Dave Airlie
2010-09-27r600g: fix routing btw vertex & pixel shaderJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: fix pointsprite & resource unbindingJerome Glisse
When asking to bind NULL resource assume it's unbinding so free resource and unreference assoicated buffer. Also fix pointsprite parameter. Fix glsl-fs-pointcoord & fp-fragment-position Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: fix index buffer drawingJerome Glisse
Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-27r600g: add evergreen texture resource properly.Dave Airlie
adding sampler border looks impossible with current design, another day, another corner case not worked out.
2010-09-26r600g: set ENABLE_KILL on evergreen tooBas Nieuwenhuizen