diff --git a/src/gallium/winsys/kmsro/drm/kmsro_drm_winsys.c b/src/gallium/winsys/kmsro/drm/kmsro_drm_winsys.c index 523c30fc3de..368b91468d5 100644 --- a/src/gallium/winsys/kmsro/drm/kmsro_drm_winsys.c +++ b/src/gallium/winsys/kmsro/drm/kmsro_drm_winsys.c @@ -121,7 +121,7 @@ struct pipe_screen *kmsro_drm_screen_create(int fd, ro->gpu_fd = drmOpenWithType("lima", NULL, DRM_NODE_RENDER); if (ro->gpu_fd >= 0) { ro->create_for_resource = renderonly_create_kms_dumb_buffer_for_resource; - screen = lima_drm_screen_create_renderonly(ro); + screen = lima_drm_screen_create_renderonly(ro->gpu_fd, ro, config); if (!screen) goto out_free; diff --git a/src/gallium/winsys/lima/drm/lima_drm_public.h b/src/gallium/winsys/lima/drm/lima_drm_public.h index 06ca46499d4..96faec814e9 100644 --- a/src/gallium/winsys/lima/drm/lima_drm_public.h +++ b/src/gallium/winsys/lima/drm/lima_drm_public.h @@ -30,6 +30,8 @@ struct pipe_screen; struct renderonly; struct pipe_screen *lima_drm_screen_create(int drmFD); -struct pipe_screen *lima_drm_screen_create_renderonly(struct renderonly *ro); +struct pipe_screen *lima_drm_screen_create_renderonly(int fd, + struct renderonly *ro, + const struct pipe_screen_config *config); #endif /* __LIMA_DRM_PUBLIC_H__ */ diff --git a/src/gallium/winsys/lima/drm/lima_drm_winsys.c b/src/gallium/winsys/lima/drm/lima_drm_winsys.c index b3d8887d4e3..589f150143e 100644 --- a/src/gallium/winsys/lima/drm/lima_drm_winsys.c +++ b/src/gallium/winsys/lima/drm/lima_drm_winsys.c @@ -37,7 +37,8 @@ lima_drm_screen_create(int fd) } struct pipe_screen * -lima_drm_screen_create_renderonly(struct renderonly *ro) +lima_drm_screen_create_renderonly(int fd, struct renderonly *ro, + const struct pipe_screen_config *config) { - return lima_screen_create(os_dupfd_cloexec(ro->gpu_fd), NULL, ro); + return lima_screen_create(os_dupfd_cloexec(fd), config, ro); }