From bc7f41e11d325280db12e7b9444501357bc13922 Mon Sep 17 00:00:00 2001 From: Nicolai Hähnle Date: Wed, 28 Jun 2017 14:47:32 +0200 Subject: gallium: add pipe_screen_config to screen_create functions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This allows a more generic mechanism for passing user configurations into drivers by accessing the dri options directly. Reviewed-by: Marek Olšák --- src/gallium/winsys/radeon/drm/radeon_drm_public.h | 5 +++-- src/gallium/winsys/radeon/drm/radeon_drm_winsys.c | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'src/gallium/winsys/radeon/drm') diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_public.h b/src/gallium/winsys/radeon/drm/radeon_drm_public.h index 2192aa68ef6..6a772f3a621 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_public.h +++ b/src/gallium/winsys/radeon/drm/radeon_drm_public.h @@ -5,12 +5,13 @@ struct radeon_winsys; struct pipe_screen; +struct pipe_screen_config; typedef struct pipe_screen *(*radeon_screen_create_t)(struct radeon_winsys *, - unsigned); + const struct pipe_screen_config *); struct radeon_winsys * -radeon_drm_winsys_create(int fd, unsigned flags, +radeon_drm_winsys_create(int fd, const struct pipe_screen_config *config, radeon_screen_create_t screen_create); #endif diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c index ad1db3c388c..542e5494beb 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_winsys.c @@ -736,7 +736,7 @@ static int handle_compare(void *key1, void *key2) } PUBLIC struct radeon_winsys * -radeon_drm_winsys_create(int fd, unsigned flags, +radeon_drm_winsys_create(int fd, const struct pipe_screen_config *config, radeon_screen_create_t screen_create) { struct radeon_drm_winsys *ws; @@ -832,7 +832,7 @@ radeon_drm_winsys_create(int fd, unsigned flags, * * Alternatively, we could create the screen based on "ws->gen" * and link all drivers into one binary blob. */ - ws->base.screen = screen_create(&ws->base, flags); + ws->base.screen = screen_create(&ws->base, config); if (!ws->base.screen) { radeon_winsys_destroy(&ws->base); mtx_unlock(&fd_tab_mutex); -- cgit v1.2.3