[Mesa-dev] [PATCH 1/3] gbm: Add gbm_surface interface

Jakob Bornecrantz jakob at vmware.com
Tue Mar 27 12:27:22 PDT 2012


> +
> +   struct gbm_surface *(*surface_create)(struct gbm_device *gbm,
> +                                         uint32_t width, uint32_t height,
> +                                         uint32_t format);
> +   struct gbm_bo *(*surface_lock_front_buffer)(struct gbm_surface *surface);
> +   void (*surface_release_buffer)(struct gbm_surface *surface,
> +                                  struct gbm_bo *bo);
> +   int (*surface_has_free_buffers)(struct gbm_surface *surface);
> +   void (*surface_destroy)(struct gbm_surface *surface);


Surface map and unmap needs a pipe_context for gallium,
and as such dri_context. I don't know what the best way to solve
that in gbm, either via a hidden dri_context[1] or via a
new gbm_context.

Cheers, Jakob.

[1] which I don't like since we can't get to it if with
fences since if we actually want to support better command
scheduling then what we currently have.


More information about the mesa-dev mailing list