[Mesa-dev] [RFC PATCH 0/6] Refactor st_api and st/dri

Jakob Bornecrantz wallbraker at gmail.com
Sat Apr 24 07:25:18 PDT 2010


Hi Chia-I et all

This Patch series does some minor refactoring in the st_api interface
and some major one to st/dri.

The first patch drops the st_module struct from st_api. This is because it
was overlapping the st_api struct. Both represent the API. It also drops some
extra symbols and instead just exposes a single st_api_create_* function to
get the st_api struct from the state tracker.

The following five patches refactor st/dri and removes some defines in favour
of hooks on dri_screen. And instead of allocating a separate struct for
st_manager and st_framebuffer makes them a base for dri_screen and
dri_drawable. And finally moves the code from dri_st_api.c into dri_screen.c
and dri_drawable.c.

Comments please.

 src/gallium/include/state_tracker/st_api.h         |   35 +--
 .../state_trackers/dri/common/dri1_helper.c        |   10 +-
 .../state_trackers/dri/common/dri_context.c        |   18 +-
 .../state_trackers/dri/common/dri_context.h        |    2 +-
 .../state_trackers/dri/common/dri_drawable.c       |  141 +++++++++-
 .../state_trackers/dri/common/dri_drawable.h       |   17 +-
 src/gallium/state_trackers/dri/common/dri_screen.c |   47 +++-
 src/gallium/state_trackers/dri/common/dri_screen.h |   29 ++-
 src/gallium/state_trackers/dri/common/dri_st_api.c |  289 --------------------
 src/gallium/state_trackers/dri/common/dri_st_api.h |   65 -----
 src/gallium/state_trackers/dri/drm/Makefile        |    1 -
 src/gallium/state_trackers/dri/drm/SConscript      |    1 -
 src/gallium/state_trackers/dri/drm/dri1.c          |   65 ++---
 src/gallium/state_trackers/dri/drm/dri1.h          |    8 -
 src/gallium/state_trackers/dri/drm/dri2.c          |   18 +-
 src/gallium/state_trackers/dri/drm/dri2.h          |   12 -
 src/gallium/state_trackers/dri/drm/dri_st_api.c    |    1 -
 src/gallium/state_trackers/dri/sw/Makefile         |    1 -
 src/gallium/state_trackers/dri/sw/SConscript       |    1 -
 src/gallium/state_trackers/dri/sw/dri_st_api.c     |    1 -
 src/gallium/state_trackers/dri/sw/drisw.c          |   67 ++---
 src/gallium/state_trackers/dri/sw/drisw.h          |   11 -
 src/gallium/state_trackers/egl/common/egl_g3d_st.c |   29 +-
 src/gallium/state_trackers/es/st_es1.c             |   13 +-
 src/gallium/state_trackers/es/st_es2.c             |   14 +-
 src/gallium/state_trackers/vega/vg_manager.c       |   33 +--
 src/gallium/targets/libgl-xlib/xlib.c              |   16 +-
 src/mesa/state_tracker/st_gl_api.h                 |    9 +
 src/mesa/state_tracker/st_manager.c                |   33 +--
 29 files changed, 376 insertions(+), 611 deletions(-)

Cheers Jakob.


More information about the mesa-dev mailing list