summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nv50/nv50_context.h
AgeCommit message (Collapse)Author
2009-12-21gallium: propogate draw retval changes into more driversKeith Whitwell
2009-12-12nv50: support vertex program texturesChristoph Bumiller
2009-12-08nouveau: use boolean instead of boolRoland Scheidegger
2009-11-04nv50: add 3d texture tiling and mip-mappingChristoph Bumiller
Mip-mapped 3D textures are not arrays of 2D layers with a mip-map layout like 2D textures, therefore we cannot use image_nr == depth for them. Making use of "volume tiling" modes now, the allowed modes are 0xZY where Z <= 5 and y <= 5.
2009-10-31nv50: use SIFC also for shader uploadChristoph Bumiller
Adds a more generic SIFC transfer function.
2009-10-19nv50: submit user vbo data through the fifoChristoph Bumiller
Requesting a new real buffer from the kernel and copying all the data is wasteful e.g. if only a few (but widely spread) vertices are accessed.
2009-10-19nv50: use SIFC for TIC, TSC uploadChristoph Bumiller
Add proper flushes for TIC and TSC and remove the costly 2D.0110 flush in nv50_flush. Correct TIC and TSC bo sizes.
2009-10-19nouveau: implement is_{texture,buffer}_referenced properlyBen Skeggs
2009-09-15nv50: use flush_notify to reduce number of relocsMaarten Maathuis
2009-09-15nv50: proper linkage between VP and FPChristoph Bumiller
This moves construction of the mapping between VP outputs and FP inputs into validation. The map also contains slots for special outputs like clip distance and point size, so we need to at least merge the VP related and FP related parts on validation if we want to support those. Now we match every single FP input component with results from the VP and leave those not read out of the map, or replace those not written by 0 (xyz) or 1 (w). The bitmap indicating linear interpolants is also filled, and flat FP inputs are mapped in only after non-flat ones, as is required. Furthermore, we can save some space by only fetching VP attrs we actually use, and avoid wasting any output regs because of TGSI using less than 4 components.
2009-08-31nouveau: introduce nouveau_miptree common to all nouveau pipe driversBen Skeggs
The winsys once again has to know about textures it seems, so we need a common representation between all our pipe drivers to store some information the winsys will need. Only the nv50 driver has been fixed so far.
2009-08-20nv50: use VTX_ATTR_nF for constant vtxeltsChristoph Bumiller
2009-08-14nv50: fix mipmap offsets and tilingChristoph Bumiller
The hardware expects a texture's tile mode to change with the mipmap level. Also, only multiply by block size once to obtain size.
2009-06-06nv50: fix multi-texturingBen Skeggs
2009-06-06nv50: support non-normalized texture coordsBen Skeggs
2009-06-05nv50: create textures with nouveau_bo, for flexibility with tiling laterBen Skeggs
2009-06-05nouveau: add pipe_buffer/fence code to pipe drivers, move nv50 overBen Skeggs
2009-06-05nouveau: pass nouveau_bo instead of pipe_buffer to so_ callsBen Skeggs
2009-04-04gallium: Clean up driver clear() interface.Michel Dänzer
Only allows clearing currently bound buffers, but colour and depth/stencil in a single call.
2009-02-20nv50: rework for texture_transfer changesBen Skeggs
2009-02-07nouveau: Need to surface_copy() without a pipe context.Younes Manton
2009-02-05nv50: stop using nouveau_push.h, it's evilBen Skeggs
2009-02-02gallium: remove pipe_buffer from surfacesZack Rusin
this change disassociates, at least from the driver perspective, the surface from buffer. surfaces are technically now views on the textures so make it so by hiding the buffer in the internals of textures.
2009-01-12nv50: fix handling of depth texturesBen Skeggs
2009-01-12nv50: remove previous hack to manage tiled surfacesBen Skeggs
2009-01-12nv50: any cpu access to a texture is done on its backing imagesBen Skeggs
Still a little dodgy: - RTT will hit an assertion (hopefully!) and fail - 3D textures with depth >= 32 will cause bad things to happen
2009-01-12nv50: create buffers for each image that makes up a textureBen Skeggs
2009-01-06nv50: working towards 3D texturesBen Skeggs
2008-09-11nouveau: gallium directory structure changed again..Ben Skeggs
2008-07-11nv50: quick hack to get textures untiled on map, and tiled on unmapBen Skeggs
progs/fp/tri-tex is all good now rather than all scrambled :)
2008-07-11nv50: split tic construction out into own fileBen Skeggs
2008-07-11nv50: get clear-scissor workingBen Skeggs
2008-06-29nv50: get tri-scissor-tri workingBen Skeggs
2008-06-29nv50: separate state validation and upload, similar to nv40Ben Skeggs
2008-06-29nv50: abuse constbuf upload for program uploadBen Skeggs
2008-06-29nv50: do tsc/tic upload + stub out shader TEX stuffBen Skeggs
2008-06-29nv50: get vp working again, fp is broken regardless somehow..Ben Skeggs
g8x sucks :)
2008-06-29nv50: rename nv50_state.h to nv50_program.hBen Skeggs
2008-06-29nv50: quick hack so progs/fp/fp-tri works for the momentBen Skeggs
2008-06-29nv50: use "real" constbufs for shaders + tcb uploadsBen Skeggs
2008-06-29nv50: import current "state of the art" nv50 codeBen Skeggs
2008-05-27nouveau: very quick port to tex-surface changes.Ben Skeggs
probably the last match-gallium-upstream merge for a bit, some cleanup+nv50 work coming RSN...
2008-03-12nv50: start on fb stateBen Skeggs
2008-03-12nv50: rasterizer stateobjBen Skeggs
2008-03-12nv50: scissor/viewport/blend colour/stippleBen Skeggs
2008-03-12nv50: depth_stencil_alpha stateobjBen Skeggs
2008-03-12nv50: crappy state validate/emit functionBen Skeggs
Just for testing stateobjs to make sure they don't hang the engine.
2008-03-12nv50: create blend stateobjBen Skeggs
2008-03-12nv50: convert to hwctx-in-screen as nv40 isBen Skeggs
2008-02-29nouveau: implement pipe_screenBen Skeggs
Untested on NV3x/NV5x. Quite possibly broken.