diff options
author | Jakob Bornecrantz <jakob@vmware.com> | 2009-06-30 11:49:43 +0200 |
---|---|---|
committer | Jakob Bornecrantz <jakob@vmware.com> | 2009-06-30 12:20:39 +0200 |
commit | 303cbb45b558a2b94e6922252cf57d115ba60b82 (patch) | |
tree | d56f9e58b8a3944ed7885bc1a72b1f786c98338e /src/gallium/state_trackers/dri/dri_screen.c | |
parent | efe9faf0612778db2423a4f8835b318b95d9efd7 (diff) |
drm/st: Return drm_api struct from a function
Diffstat (limited to 'src/gallium/state_trackers/dri/dri_screen.c')
-rw-r--r-- | src/gallium/state_trackers/dri/dri_screen.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c index 98bf68ccba..5f78b7264a 100644 --- a/src/gallium/state_trackers/dri/dri_screen.c +++ b/src/gallium/state_trackers/dri/dri_screen.c @@ -199,6 +199,7 @@ dri_init_screen(__DRIscreenPrivate * sPriv) if (!screen) return NULL; + screen->api = drm_api_create(); screen->sPriv = sPriv; screen->fd = sPriv->fd; screen->drmLock = (drmLock *) & sPriv->pSAREA->lock; @@ -216,7 +217,7 @@ dri_init_screen(__DRIscreenPrivate * sPriv) dri_copy_version(&arg.drm_version, &sPriv->drm_version); arg.api = NULL; - screen->pipe_screen = drm_api_hooks.create_screen(screen->fd, &arg.base); + screen->pipe_screen = screen->api->create_screen(screen->api, screen->fd, &arg.base); if (!screen->pipe_screen || !arg.api) { debug_printf("%s: failed to create dri1 screen\n", __FUNCTION__); @@ -265,13 +266,14 @@ dri_init_screen2(__DRIscreenPrivate * sPriv) if (!screen) goto fail; + screen->api = drm_api_create(); screen->sPriv = sPriv; screen->fd = sPriv->fd; sPriv->private = (void *)screen; sPriv->extensions = dri_screen_extensions; arg.mode = DRM_CREATE_NORMAL; - screen->pipe_screen = drm_api_hooks.create_screen(screen->fd, &arg); + screen->pipe_screen = screen->api->create_screen(screen->api, screen->fd, &arg); if (!screen->pipe_screen) { debug_printf("%s: failed to create pipe_screen\n", __FUNCTION__); goto fail; |