Mesa (master): gallium: No longer allow CPU mapping surfaces directly.

Michel Dänzer daenzer at kemper.freedesktop.org
Wed Feb 18 15:51:08 UTC 2009


Module: Mesa
Branch: master
Commit: 4617981ec72f7985941bee4b03c534d97ff96bc6
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4617981ec72f7985941bee4b03c534d97ff96bc6

Author: Michel Dänzer <daenzer at vmware.com>
Date:   Thu Feb  5 19:41:18 2009 +0100

gallium: No longer allow CPU mapping surfaces directly.

Instead, a new pipe_transfer object has to be created and mapped for
transferring data between the CPU and a texture. This gives the driver more
flexibility for textures in address spaces that aren't CPU accessible.

This is a first pass; softpipe/xlib builds and runs glxgears, but it only shows
a black window. Looks like something's off related to the Z buffer, so the
depth test always fails.

---

 src/gallium/auxiliary/draw/draw_pipe_aaline.c   |   14 +-
 src/gallium/auxiliary/draw/draw_pipe_pstipple.c |   17 ++--
 src/gallium/auxiliary/util/p_debug.c            |   59 +++++----
 src/gallium/auxiliary/util/u_gen_mipmap.c       |  125 ++++++++++----------
 src/gallium/auxiliary/util/u_rect.c             |  110 ++++++-----------
 src/gallium/auxiliary/util/u_tile.c             |  127 ++++++++++----------
 src/gallium/auxiliary/util/u_tile.h             |   18 ++--
 src/gallium/drivers/softpipe/sp_context.c       |   12 +-
 src/gallium/drivers/softpipe/sp_draw_arrays.c   |    2 +-
 src/gallium/drivers/softpipe/sp_flush.c         |    2 +-
 src/gallium/drivers/softpipe/sp_state.h         |    4 +-
 src/gallium/drivers/softpipe/sp_texture.c       |  114 ++++++++++++++----
 src/gallium/drivers/softpipe/sp_texture.h       |   15 ++-
 src/gallium/drivers/softpipe/sp_tile_cache.c    |  150 ++++++++++++-----------
 src/gallium/drivers/softpipe/sp_tile_cache.h    |    4 +-
 src/gallium/include/pipe/p_defines.h            |   10 ++
 src/gallium/include/pipe/p_inlines.h            |   23 ----
 src/gallium/include/pipe/p_screen.h             |   24 +++-
 src/gallium/include/pipe/p_state.h              |   28 ++++-
 src/gallium/winsys/xlib/xlib_brw_aub.c          |   10 +-
 src/gallium/winsys/xlib/xlib_softpipe.c         |    9 +-
 src/mesa/state_tracker/st_atom_pixeltransfer.c  |   13 +-
 src/mesa/state_tracker/st_cb_accum.c            |  144 ++++++++++++----------
 src/mesa/state_tracker/st_cb_bitmap.c           |   52 ++++----
 src/mesa/state_tracker/st_cb_drawpixels.c       |  102 ++++++++--------
 src/mesa/state_tracker/st_cb_fbo.c              |    4 -
 src/mesa/state_tracker/st_cb_readpixels.c       |  104 +++++++++-------
 src/mesa/state_tracker/st_cb_texture.c          |  107 ++++++++---------
 src/mesa/state_tracker/st_gen_mipmap.c          |   34 +++---
 src/mesa/state_tracker/st_texture.c             |   36 +++---
 src/mesa/state_tracker/st_texture.h             |    6 +-
 31 files changed, 797 insertions(+), 682 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=4617981ec72f7985941bee4b03c534d97ff96bc6



More information about the mesa-commit mailing list