Lines Matching full:gbm

265    struct virgl_gbm *gbm = calloc(1, sizeof(struct virgl_gbm));  in virgl_gbm_init()  local
266 if (!gbm) in virgl_gbm_init()
269 gbm->fd = -1; in virgl_gbm_init()
272 gbm->fd = gbm_get_default_device_fd(); in virgl_gbm_init()
273 if (gbm->fd < 0) in virgl_gbm_init()
275 gbm->fd = rendernode_open(); in virgl_gbm_init()
276 if (gbm->fd < 0) in virgl_gbm_init()
279 gbm->device = gbm_create_device(gbm->fd); in virgl_gbm_init()
280 if (!gbm->device) { in virgl_gbm_init()
281 close(gbm->fd); in virgl_gbm_init()
285 gbm->device = gbm_create_device(fd); in virgl_gbm_init()
286 if (!gbm->device) in virgl_gbm_init()
288 gbm->fd = fd; in virgl_gbm_init()
291 return gbm; in virgl_gbm_init()
294 free(gbm); in virgl_gbm_init()
298 void virgl_gbm_fini(struct virgl_gbm *gbm) in virgl_gbm_fini() argument
300 gbm_device_destroy(gbm->device); in virgl_gbm_fini()
301 if (gbm->fd >= 0) in virgl_gbm_fini()
302 close(gbm->fd); in virgl_gbm_fini()
303 free(gbm); in virgl_gbm_fini()
345 /* XXX remove this and map just the region when single plane and GBM honors the region */ in virgl_gbm_transfer()
464 struct gbm_device *gbm = gbm_bo_get_device(bo); in virgl_gbm_export_query() local
491 ret = virgl_gbm_export_fd(gbm, handle, &query->out_fds[query->out_num_fds]); in virgl_gbm_export_query()
520 int virgl_gbm_export_fd(struct gbm_device *gbm, uint32_t handle, int32_t *out_fd) in virgl_gbm_export_fd() argument
523 ret = drmPrimeHandleToFD(gbm_device_get_fd(gbm), handle, DRM_CLOEXEC | DRM_RDWR, out_fd); in virgl_gbm_export_fd()
527 ret = drmPrimeHandleToFD(gbm_device_get_fd(gbm), handle, DRM_CLOEXEC, out_fd); in virgl_gbm_export_fd()