[Mesa-dev] [PATCH 0/6] New DirectFB sw for Gallium's EGL state tracker

Ilyes Gouta ilyes.gouta at gmail.com
Sun Apr 14 10:50:43 PDT 2013


These are few patches that add a new DirectFB native and winsys backend
for the EGL state tracker. This is just about the underlaying infrastructure
that enables DirectFB surface to act as EGL render targets for gallium's
softpipe and llvmpipe sw renderers.

A DirectFB application can now do:

desc.flags = DSDESC_CAPS|DSDESC_WIDTH|DSDESC_HEIGHT|DSDESC_PIXELFORMAT;
desc.caps = DSCAPS_DOUBLE; /* |DSCAPS_PRIMARY */
desc.width = 640;
desc.height = 480;
desc.pixelformat = DSPF_ARGB;
pDfb->CreateSurface(pDfb, &desc, &pSurface);

context = eglCreateContext(display, config[0], EGL_NO_CONTEXT, NULL);
surface = eglCreateWindowSurface(display, config[0], pSurface, NULL);

eglMakeCurrent(display, surface, surface, context);

in order to embed a mesa/EGL rendering into a target surface which could
subsequently serve as a source for further processing.

Ilyes Gouta (6):
  configure.ac: configure for DirectFB
  gallium: new DirectFB backend for the EGL state tracker
  gallium: new winsys for sw DirectFB
  egl: directfb: new DirectFB native EGL types
  egl: directfb: instantiate a new native DirectFB platform
  egl: directfb: automake updates for EGL_PLATFORM_DIRECTFB

 configure.ac                                       |  11 +-
 include/EGL/eglplatform.h                          |   6 +
 src/egl/main/Makefile.am                           |   6 +
 src/egl/main/egldisplay.c                          |   7 +-
 src/egl/main/egldisplay.h                          |   1 +
 src/gallium/state_trackers/egl/Makefile.am         |   9 +
 src/gallium/state_trackers/egl/common/egl_g3d.c    |   6 +
 src/gallium/state_trackers/egl/common/native.h     |   3 +
 .../state_trackers/egl/directfb/native_directfb.c  | 585 +++++++++++++++++++++
 src/gallium/targets/egl-static/Makefile.am         |   7 +
 src/gallium/winsys/sw/Makefile.am                  |   4 +
 src/gallium/winsys/sw/directfb/Makefile.am         |  31 ++
 .../winsys/sw/directfb/directfb_sw_winsys.c        | 280 ++++++++++
 .../winsys/sw/directfb/directfb_sw_winsys.h        |  35 ++
 14 files changed, 989 insertions(+), 2 deletions(-)
 create mode 100644 src/gallium/state_trackers/egl/directfb/native_directfb.c
 create mode 100644 src/gallium/winsys/sw/directfb/Makefile.am
 create mode 100644 src/gallium/winsys/sw/directfb/directfb_sw_winsys.c
 create mode 100644 src/gallium/winsys/sw/directfb/directfb_sw_winsys.h

-- 
1.8.1.4



More information about the mesa-dev mailing list