Module: Mesa
Branch: gallium-resources
Commit: 961cbcb62232689c959965384c6aa9b8eca697c1
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=961cbcb62232689c959965384c6aa9b8eca697c1

Author: Keith Whitwell <[email protected]>
Date:   Sun Mar 21 16:51:54 2010 +0000

nouveau: convert nvfx and nv50 to pipe_resources

Compile tested only.

This was a deeper change than I was hoping for, due to the
layering of the pipe_texture implementation in each driver on
top of a shared pipe_buffer implementation in the shared code.

Have modified the shared code to act as a set of convenience
routines operating on nouveau_bo objects.

Each driver now uses the u_resource_vtbl technique to split the
implementation of pipe_resources between the existing miptree code
for textures and a new, minimal buffer implementation in each
driver.

Eventually these should be combined, not least because APIs are now
allowing things like binding buffer resources as textures and render
targets.

---

 configs/default                                 |    2 +-
 configs/linux-debug                             |    2 +-
 src/gallium/drivers/nouveau/Makefile            |    6 +-
 src/gallium/drivers/nouveau/nouveau_context.c   |   41 ------
 src/gallium/drivers/nouveau/nouveau_context.h   |   11 --
 src/gallium/drivers/nouveau/nouveau_screen.c    |  165 +++++++---------------
 src/gallium/drivers/nouveau/nouveau_screen.h    |   70 ++++++----
 src/gallium/drivers/nouveau/nouveau_util.h      |    6 +-
 src/gallium/drivers/nouveau/nouveau_winsys.h    |    1 -
 src/gallium/drivers/nv50/Makefile               |    2 +
 src/gallium/drivers/nv50/nv50_buffer.c          |  147 ++++++++++++++++++++
 src/gallium/drivers/nv50/nv50_context.c         |    3 -
 src/gallium/drivers/nv50/nv50_context.h         |   37 +-----
 src/gallium/drivers/nv50/nv50_miptree.c         |  128 ++++++++++++------
 src/gallium/drivers/nv50/nv50_program.c         |   11 +-
 src/gallium/drivers/nv50/nv50_push.c            |    7 +-
 src/gallium/drivers/nv50/nv50_resource.c        |   67 +++++++++
 src/gallium/drivers/nv50/nv50_resource.h        |   90 ++++++++++++
 src/gallium/drivers/nv50/nv50_screen.h          |    2 +-
 src/gallium/drivers/nv50/nv50_state.c           |    8 +-
 src/gallium/drivers/nv50/nv50_state_validate.c  |    5 +-
 src/gallium/drivers/nv50/nv50_surface.c         |    1 +
 src/gallium/drivers/nv50/nv50_tex.c             |    1 +
 src/gallium/drivers/nv50/nv50_transfer.c        |   84 ++++++------
 src/gallium/drivers/nv50/nv50_transfer.h        |   31 ++++
 src/gallium/drivers/nv50/nv50_vbo.c             |   29 ++--
 src/gallium/drivers/nvfx/Makefile               |    5 +
 src/gallium/drivers/nvfx/nv04_surface_2d.c      |   22 ++--
 src/gallium/drivers/nvfx/nv04_surface_2d.h      |    2 +-
 src/gallium/drivers/nvfx/nv30_fragtex.c         |    5 +-
 src/gallium/drivers/nvfx/nv40_fragtex.c         |    5 +-
 src/gallium/drivers/nvfx/nvfx_buffer.c          |  151 ++++++++++++++++++++
 src/gallium/drivers/nvfx/nvfx_context.c         |    3 -
 src/gallium/drivers/nvfx/nvfx_context.h         |    9 +-
 src/gallium/drivers/nvfx/nvfx_draw.c            |   28 +++--
 src/gallium/drivers/nvfx/nvfx_fragprog.c        |   51 +++++---
 src/gallium/drivers/nvfx/nvfx_miptree.c         |  170 +++++++++++++++--------
 src/gallium/drivers/nvfx/nvfx_resource.c        |   67 +++++++++
 src/gallium/drivers/nvfx/nvfx_resource.h        |   91 ++++++++++++
 src/gallium/drivers/nvfx/nvfx_screen.c          |   12 +--
 src/gallium/drivers/nvfx/nvfx_screen.h          |    1 +
 src/gallium/drivers/nvfx/nvfx_state.c           |   10 +-
 src/gallium/drivers/nvfx/nvfx_state.h           |   20 +--
 src/gallium/drivers/nvfx/nvfx_state_fb.c        |    8 +-
 src/gallium/drivers/nvfx/nvfx_transfer.c        |  118 ++++++++--------
 src/gallium/drivers/nvfx/nvfx_transfer.h        |   26 ++++
 src/gallium/drivers/nvfx/nvfx_vbo.c             |   34 +++--
 src/gallium/drivers/nvfx/nvfx_vertprog.c        |   12 +-
 src/gallium/drivers/svga/svga_resource_buffer.c |    2 +-
 49 files changed, 1234 insertions(+), 575 deletions(-)

Diff:   
http://cgit.freedesktop.org/mesa/mesa/diff/?id=961cbcb62232689c959965384c6aa9b8eca697c1
_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to