summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/nouveau
AgeCommit message (Collapse)Author
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-05nouveau: kill nouveau_push.h and use libdrm versions of BEGIN_RINGs, etcMarcin Slusarz
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-28nouveau: Unreference state/buffer objects on context/screen destruction.Younes Manton
- unreference state objects so that buffer objects are unreferenced and eventually destroyed - free channel at screen's destruction Based on Krzysztof Smiechowicz's patch.
2009-12-28nouveau: Fix nv20-40 swizzled miptree RTsLuca Barbieri
I just coded a patch that does this and seems to work fine. It must be fixed since it breaks OpenGL (or the state tracker can be changed, but it seems better to do it in the driver). The patch also fixes NV20 and NV30 in the same way. They compile but are untested. I would guess that using the 3D engine is faster for the larger levels, but the 2D engine is faster for the smaller ones (and lacks this issue).
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-10-19nouveau: implement is_{texture,buffer}_referenced properlyBen Skeggs
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-07-29nouveau: map_range returning -EBUSY isn't necessarily an errorBen Skeggs
2009-06-07nouveau: forgotten makefile...Ben Skeggs
2009-06-05nouveau: plug in our map_buffer_range and friendsBen Skeggs
2009-06-05nouveau: fix build with libdrm_nouveau 0.6Ben Skeggs
2009-06-05nouveau: move channel creation into pipe driversBen Skeggs
2009-06-05nouveau: call notifier/grobj etc funcs directlyBen Skeggs
libdrm_nouveau is linked with the winsys, there's no good reason to do all this through yet another layer.
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-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-18nouveau: rewrite winsys in terms of drm_api, support dri2 state trackerBen Skeggs
drm_api is a set of hooks used by the dri2 state tracker, this wraps our dri1 code around the same set of hooks. Currently the dri2 build will produce nouveau_dri2.so which you'll need to install as nouveau_dri.so if you wish to try it. The dri2 state tracker doesn't make it easy for a driver to support both paths in the same binary.
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-20nv50: rework for texture_transfer changesBen Skeggs
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-05nv04-nv40: move 2d blit/fill code into pipe driverBen Skeggs
2009-02-05nouveau: support getting "native" bo from winsysBen Skeggs
2009-02-04nouveau: notifier timeout is a float nowBen Skeggs
2009-02-04nouveau: link against libdrm_nouveau (installed with libdrm)Ben Skeggs
2009-01-30gallium: make p_winsys internalZack Rusin
move it to pipe/internal/p_winsys_screen.h and start converting the state trackers to the screen usage
2008-12-13Nouveau: move the definition of log2i() to headerPekka Paalanen
Also make the type unsigned instead of signed, since negative values do not make sense. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-12-12nouveau: remove useless NOUVEAU_BO_SWIZZLED flag, copy/paste nv40 work to ↵Patrice Mandin
swizzle textures
2008-12-02nouveau: nv04-nv40 linear <-> swizzled conversion.Younes Manton
2008-11-30Nouveau: nv{10,20} set_primitive API fixPekka Paalanen
Also changes nvgl_primitive() to return zero, i.e. error, on unknown primitive. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-30Nouveau: update nouveau_class.hPekka Paalanen
Fresh from renouveau. Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-11-08Nouveau: build, link and use nv20.Pekka Paalanen
Signed-off-by: Pekka Paalanen <pq@iki.fi>
2008-09-21nouveau: add flag for swizzled surface uploadPatrice Mandin
2008-09-11nouveau: gallium directory structure changed again..Ben Skeggs
2008-08-03nv40: Support for PIPE_FORMAT_R16_SNORM.Younes Manton
2008-07-12nv30: does not have vp_attrib/resultPatrice Mandin
2008-07-11nouveau: update to latest object headerBen Skeggs
2008-07-09nv30: update nouveau_class.hPatrice Mandin
2008-07-08nv50: make use of nouveau drm 0.0.11 to get 3d goingBen Skeggs
2008-07-08nv04.Stephane Marchesin
2008-06-29nv50: use stateobjs for sampler/image_control uploadsBen Skeggs
2008-06-29nv50: flag to indicate to winsys we want a surface for use as a zeta bufferBen Skeggs
NVIDIA love to make life difficult.. we need different flags in PTEs for zeta.. yay.. not.
2008-06-21Update for extra vertex attributesPatrice Mandin
2008-06-21nv30: Update nouveau_class.h to get its proper defines instead of using nv40 ↵Patrice Mandin
ones
2008-05-13nouveau: remove chipset fields in all nv pipe driver context/screen structs.Ben Skeggs
2008-05-13nouveau: make nouveau_device.h part of public APIBen Skeggs
2008-05-13nouveau: create objnull during channel creationBen Skeggs