summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nouveau/nouveau_stateobj.h
AgeCommit message (Collapse)Author
2010-04-12nouveau: don't autobind in state objects relocationsLuca Barbieri
Autobinding creates additional pushbuffer usage which may not be accounted in callers, and is also slow. The next relocations patch depends on this for correctness. Assert instead if the objects are not bound, which should happen at screen creation time.
2010-02-16nouveau: fix for latest libdrmBen Skeggs
2010-01-05nouveau: rewrite nouveau_stateobj to use BEGIN_RING properlyMaarten Maathuis
- The previous solution was hacky and didn't do subchannel autobinding. - The beheaviour should match what libdrm_nouveau does closely. - The solution remains statically sized, but when debugging is on it will check for abuse. Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
2010-01-05nv50: remove vtxbuf stateobject after a referenced vtxbuf is mappedMaarten Maathuis
- This avoids problematic "reloc'ed while mapped" messages and some associated corruption as well. Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
2009-12-14nouveau: avoid running out of relocsMaarten Maathuis
- Added flush notify functions for NV30 and NV40. - Flushing mid frame will call flush notify, which will resubmit all relocs. - We don't try to recover from reloc failure yet.
2009-12-03gallium: fix remaining users of pipe_reference functionRoland Scheidegger
2009-06-05nouveau: fix build with libdrm_nouveau 0.6Ben Skeggs
2009-06-05nouveau: move channel creation into pipe driversBen Skeggs
2009-06-05nouveau: pass nouveau_bo instead of pipe_buffer to so_ callsBen Skeggs
2009-06-05nouveau: call nouveau_pushbuf directly rather than going through nvwsBen Skeggs
2009-03-25nouveau: fix some pipe_buffer reference counting issuesBen Skeggs
2009-03-07nouveau: make stateobjs start off with refcount of 1Ben Skeggs
2009-03-04gallium: Unify reference counting.Michel Dänzer
The core reference counting code is centralized in p_refcnt.h. This has some consequences related to struct pipe_buffer: * The screen member of struct pipe_buffer must be initialized, or pipe_buffer_reference() will crash trying to destroy a buffer with reference count 0. u_simple_screen takes care of this, but I may have missed some of the drivers not using it. * Except for rare exceptions deep in winsys code, buffers must always be allocated via pipe_buffer_create() or via screen->*buffer_create() rather than via winsys->*buffer_create().
2009-02-18util: Move p_debug.h into util module.José Fonseca
The debug functions depend on several util function for os abstractions, and these depend on debug functions, so a seperate module is not possible.
2009-02-04nouveau: link against libdrm_nouveau (installed with libdrm)Ben Skeggs
2008-09-11nouveau: gallium directory structure changed again..Ben Skeggs
2008-07-08nv50: make use of nouveau drm 0.0.11 to get 3d goingBen Skeggs
2008-06-29nv50: use stateobjs for sampler/image_control uploadsBen Skeggs
2008-03-30nouveau: adapt to recent gallium changesBen Skeggs
2008-03-19nouveau: pass nvws to nvws->push_* functions, rather than nouveau_channel*Ben Skeggs
2008-02-22nv40: stateobj start out with 0 refcountBen Skeggs
2008-02-18nouveau: cleanups + fixesBen Skeggs
2008-02-16nouveau: match gallium code reorginisation.Ben Skeggs
That was... fun..