path: root/src/gbm/main
AgeCommit message (Collapse)AuthorFilesLines
2012-07-16gbm: Rename gbm_bo_get_pitch to gbm_bo_get_strideKristian Høgsberg3-5/+5
We use pitch for 'pixels per row' and stride for 'bytes per row' pretty consistently in mesa and most other places, so rename the gbm API.
2012-07-16gbm: Add new gbm_bo_import entry pointKristian Høgsberg3-25/+24
This generalizes and replaces gbm_bo_create_for_egl_image. gbm_bo_import will create a gbm_bo from either an EGLImage or a struct wl_buffer.
2012-05-03gbm: Add gbm_bo_write entry pointKristian Høgsberg3-0/+29
This new gbm entry point allows writing data into a gbm bo. The bo has to be created with the GBM_BO_USE_WRITE flag, and it's only required to work for GBM_BO_USE_CURSOR_64X64 bos. The gbm API is designed to be the glue layer between EGL and KMS, but there was never a mechanism initialize a buffer suitable for use with KMS hw cursors. The hw cursor bo is typically not compatible with anything EGL can render to, and thus there's no way to get data into such a bo. gbm_bo_write() fills that gap while staying out of the efficient cpu->gpu pixel transfer business. Reviewed-by: Ander Conselvan de Oliveira <>
2012-04-30gbm: add gbm_bo_get_device() functionAnder Conselvan de Oliveira2-0/+14
2012-04-30gbm: update documentation to reflect current behaviorAnder Conselvan de Oliveira1-8/+10
2012-04-30gbm: add gbm_bo_get/set_user_data()Ander Conselvan de Oliveira3-0/+41
This allows the user to associate some data to a gbm_bo and get a callback when the bo is destroyed.
2012-03-28gbm: Add gbm_surface interfaceAnder Conselvan de Oliveira3-5/+141
The idea here is to be able to create an egl window surface from a gbm_surface. This avoids the need for the surfaceless extension and lets the EGL platform handle buffer allocation, while keeping the user in charge of somehow presenting the buffers (using kms page flipping, for example). gbm_surface_lock_front_buffer() locks a surface's front buffer and returns a gbm bo representing it. This bo should later be returned to the gbm surface using gbm_surface_release_buffer().
2012-02-22gbm: track buffer format through DRI driversJesse Barnes3-3/+121
GBM needs the buffer format in order to communicate with DRM and clients for things like scanout. So track the DRI format requested in the various back ends and use it to return the DRI format back to GBM when requested. GBM will then map this into the GBM surface type (which is in turn based on the DRM fb format list). Signed-off-by: Jesse Barnes <>
2012-01-25gbm: fix copy & paste error in gbm_bo_get_handle documentationAnder Conselvan de Oliveira1-1/+1
2012-01-23automake: src/gbmMatt Turner2-96/+6 (instead of is installed now along with (no change).
2012-01-13gbm: Add documentation for the public facing APIRob Bradford3-2/+162
2011-07-19Make it possible to use gbm with c++Jørgen Lind1-0/+9
NOTE: This is a candiate for 7.11
2011-06-23gbm: Add gallium (drm) backendBenjamin Franzke1-0/+1
2011-06-23gbm: Add dri backendBenjamin Franzke2-0/+8
2011-06-23Add gbm (generic/graphics buffer manager)Benjamin Franzke10-0/+807