summaryrefslogtreecommitdiffstats
path: root/src/gallium
Commit message (Collapse)AuthorAgeFilesLines
* r600g: allow constant buffers to be user buffers.Dave Airlie2011-01-076-4/+44
| | | | | | | | | This provides an upload facility for the constant buffers since Marek's constants in user buffers changes. gears at least work on my evergreen now. Signed-off-by: Dave Airlie <[email protected]>
* r600g: add support for NI (Northern Islands) GPUsAlex Deucher2011-01-066-0/+115
| | | | This adds support for Barts, Turks, and Caicos asics.
* svga: Ensure that the wrong vdecls don't get used in swtnl pathJakob Bornecrantz2011-01-063-0/+19
| | | | | | | The draw module set new state that didn't require swtnl which caused need_swtnl to be unset. This caused the call from to svga_update_state(svga, SVGA_STATE_SWTNL_DRAW) from the vbuf backend to overwrite the vdecls we setup there to be overwritten with the real buffers vdecls.
* r300g: fix corruption when nr_cbufs==0 and multiwrites enabledMarek Olšák2011-01-061-1/+2
| | | | https://bugs.freedesktop.org/show_bug.cgi?id=32634
* r300g: remove the buffer range checkingMarek Olšák2011-01-062-60/+1
| | | | | | It's no longer needed because the upload buffer remains mapped while the CS is being filled (openarena, ut2004 and others that this code was for do not use VBOs by default).
* r300g: skip buffer validation of upload buffers when appropriateMarek Olšák2011-01-065-8/+36
| | | | because the upload buffers are reused for subsequent draw operations.
* util: add comments to u_upload_mgr and u_inlinesMarek Olšák2011-01-063-15/+38
|
* tgsi: remove redundant name tables from tgsi_text, use those from tgsi_dumpMarek Olšák2011-01-063-56/+33
| | | | | I also specified the array sizes in the header so that one can use the Elements macro on it.
* gallium: drivers should reference vertex buffersMarek Olšák2011-01-0617-52/+89
| | | | So that a state tracker can unreference them after set_vertex_buffers.
* u_upload_mgr: new featuresMarek Olšák2011-01-066-36/+115
| | | | | | | | | | | | | | - Added a parameter to specify a minimum offset that should be returned. r300g needs this to better implement user buffer uploads. This weird requirement comes from the fact that the Radeon DRM doesn't support negative offsets. - Added a parameter to notify a driver that the upload flush occured. A driver may skip buffer validation if there was no flush, resulting in a better performance. - Added a new upload function that returns a pointer to the upload buffer directly, so that the buffer can be filled e.g. by the translate module.
* u_upload_mgr: keep the upload buffer mapped until it is flushedMarek Olšák2011-01-061-52/+14
| | | | | | | The map/unmap overhead can be significant even though there is no waiting on busy buffers. There is simply a huge number of uploads. This is a performance optimization for Torcs, a car racing game.
* nvc0: Fix typo of nvc0_mm.c in SConscript.Vinson Lee2011-01-061-1/+1
|
* st/xorg: Flesh out colour map support and support depth 8.Michel Dänzer2011-01-053-1/+80
|
* r600g: support up to 64 shader constantsAlex Deucher2011-01-042-1/+20
| | | | | | | | | | | | | | | | | | | From the r600 ISA: Each ALU clause can lock up to four sets of constants into the constant cache. Each set (one cache line) is 16 128-bit constants. These are split into two groups. Each group can be from a different constant buffer (out of 16 buffers). Each group of two constants consists of either [Line] and [Line+1] or [line + loop_ctr] and [line + loop_ctr +1]. For supporting more than 64 constants, we need to break the code into multiple ALU clauses based on what sets of constants are needed in that clause. Note: This is a candidate for the 7.10 branch. Signed-off-by: Alex Deucher <[email protected]>
* Merge remote branch 'origin/nvc0'Christoph Bumiller2011-01-0448-11/+17358
|\
| * nvc0: fix index size method value for u8 indicesChristoph Bumiller2011-01-041-8/+2
| |
| * nvc0: set the correct FP header bit for multiple colour outputsChristoph Bumiller2011-01-041-1/+1
| |
| * nvc0: delete memory caches and fence on screen destructionChristoph Bumiller2011-01-044-0/+50
| |
| * nvc0: use mov instead of ld for scalar const loadsChristoph Bumiller2011-01-041-1/+6
| |
| * nvc0: fix resource unmap after vertex pushChristoph Bumiller2011-01-043-10/+8
| |
| * nvc0: use the proper typed opcodes in constant foldingChristoph Bumiller2011-01-041-86/+92
| |
| * nvc0: demagic GP invocation count bitfieldChristoph Bumiller2011-01-041-2/+16
| |
| * nvc0: rewrite the 9097 GRAPH macrosChristoph Bumiller2011-01-042-177/+192
| |
| * drm/nvc0: don't un-bind every subchannel on initBen Skeggs2010-12-301-5/+0
| | | | | | | | | | | | | | The initial values in the grctx are 0x0000 anyway, and re-binding them all to 0x0000 destroys some init done by the nouveau drm. Signed-off-by: Ben Skeggs <[email protected]>
| * nvc0: reference the vertex buffersChristoph Bumiller2010-12-271-0/+6
| |
| * nvc0: reenable some shader optimizationsChristoph Bumiller2010-12-272-51/+63
| | | | | | | | CSE and constants folding.
| * nvc0: use VTX_ATTR for stride 0 vertex attributesChristoph Bumiller2010-12-271-30/+69
| |
| * nvc0: implement VRAM buffer transfers with bounce buffersChristoph Bumiller2010-12-2712-116/+336
| |
| * nvc0: init miptree transfer layer strideChristoph Bumiller2010-12-271-1/+2
| |
| * nvc0: respond please inline to PIPE_SHADER_CAP_SUBROUTINESChristoph Bumiller2010-12-231-0/+2
| |
| * nvc0: fix layer stride stateChristoph Bumiller2010-12-233-18/+30
| |
| * nvc0: use most defs/decls from nouveau_pushbuf.hChristoph Bumiller2010-12-238-118/+29
| |
| * nvc0: remove unused 'buf' parameter in pipe_buffer_unmapBen Skeggs2010-12-211-1/+1
| |
| * nvc0: BEGIN_RING->BEGIN_RING_NI in a couple of placesBen Skeggs2010-12-212-2/+2
| |
| * nvc0: fence.bo is mappable, mark it as suchBen Skeggs2010-12-211-1/+2
| |
| * Merge remote branch 'origin/master' into nvc0-newBen Skeggs2010-12-2122-59/+59
| |\ | | | | | | | | | | | | Conflicts: src/gallium/drivers/nouveau/nouveau_winsys.h
| * | nvc0: s/INLIN_RING/IMMED_RINGChristoph Bumiller2010-12-195-11/+11
| | |
| * | nvc0: improve shader support for texturingChristoph Bumiller2010-12-196-45/+133
| | | | | | | | | | | | Fixed shadow and cube texture fetches, add array texture fetches.
| * | nvc0: adapt to array textures interface changeChristoph Bumiller2010-12-199-201/+251
| | |
| * | Merge remote branch 'origin/master' into nvc0-newChristoph Bumiller2010-12-19467-10890/+14933
| |\ \
| * | | nvc0: fix clipping with scissors/viewportChristoph Bumiller2010-12-193-11/+56
| | | | | | | | | | | | | | | | | | | | Also setup optional path to use proper primitive clipping instead, which is probably slower.
| * | | nvc0: use BIND_RING to set subchannel classesChristoph Bumiller2010-12-192-13/+25
| | | |
| * | | nvc0: switch to the proper constants upload pathChristoph Bumiller2010-12-192-6/+7
| | | | | | | | | | | | | | | | Makes things suddenly go surprisingly fast.
| * | | nvc0: add the index buffer offset where missingChristoph Bumiller2010-12-193-1/+4
| | | |
| * | | nvc0: support user clip planesChristoph Bumiller2010-12-117-3/+96
| | | |
| * | | nvc0: enable vertex color clampingChristoph Bumiller2010-12-112-2/+4
| | | |
| * | | nvc0: fix FACE state and and handle FACE sysval/varying offsetChristoph Bumiller2010-12-103-19/+23
| | | |
| * | | nvc0: fix branching opsChristoph Bumiller2010-12-104-13/+26
| | | | | | | | | | | | | | | | | | | | | | | | - bra is PC relative - jump to else condition was inverted - handle integer comparisons
| * | | nvc0: call grobj_alloc for all used classesChristoph Bumiller2010-12-092-3/+30
| | | | | | | | | | | | | | | | | | | | Only doing this to notify the DRM that we need a PGRAPH context, nvc0 hardware doesn't use actual grobjs anymore.
| * | | nvc0: write texture address to TIC with a RELOCChristoph Bumiller2010-12-091-4/+19
| | | | | | | | | | | | | | | | Direct access to the bo address requires an API change.