summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/dri
diff options
context:
space:
mode:
authorNicolai Hähnle <[email protected]>2017-08-03 15:01:09 +0200
committerNicolai Hähnle <[email protected]>2017-08-04 10:46:20 +0200
commit9fb8476e67a4470bc327303cadcf5320b34c6ebc (patch)
tree033cddca2dcb17f9645b94f9a7a3b15a803eafa1 /src/gallium/state_trackers/dri
parent12ce39d3de55357c8274619d4da973001a4609de (diff)
gallium: get rid of pipe_screen_config::flags
They were set only by the DRI state tracker, which is problematic when radeonsi is used with different state trackers in the same process. Also, we don't need them anymore. Tested-by: Dieter Nützel <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/dri')
-rw-r--r--src/gallium/state_trackers/dri/dri2.c5
-rw-r--r--src/gallium/state_trackers/dri/dri_screen.c12
-rw-r--r--src/gallium/state_trackers/dri/dri_screen.h4
-rw-r--r--src/gallium/state_trackers/dri/drisw.c2
4 files changed, 7 insertions, 16 deletions
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
index 1171e7386d7..0f36e1bf894 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -2073,8 +2073,7 @@ dri2_init_screen(__DRIscreen * sPriv)
if (pipe_loader_drm_probe_fd(&screen->dev, fd)) {
struct pipe_screen_config config = {};
- config.flags =
- dri_init_options_get_screen_flags(screen);
+ dri_init_options(screen);
pscreen = pipe_loader_create_screen(screen->dev, &config);
}
@@ -2169,7 +2168,7 @@ dri_kms_init_screen(__DRIscreen * sPriv)
struct pipe_screen_config config = {};
- config.flags = dri_init_options_get_screen_flags(screen);
+ dri_init_options(screen);
if (pipe_loader_sw_probe_kms(&screen->dev, fd))
pscreen = pipe_loader_create_screen(screen->dev, &config);
diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c
index b992d24068b..406e97dc242 100644
--- a/src/gallium/state_trackers/dri/dri_screen.c
+++ b/src/gallium/state_trackers/dri/dri_screen.c
@@ -478,20 +478,12 @@ dri_set_background_context(struct st_context_iface *st,
hud_add_queue_for_monitoring(ctx->hud, queue_info);
}
-unsigned
-dri_init_options_get_screen_flags(struct dri_screen *screen)
+void
+dri_init_options(struct dri_screen *screen)
{
- unsigned flags = 0;
-
pipe_loader_load_options(screen->dev);
dri_fill_st_options(screen);
-
- if (driQueryOptionb(&screen->dev->option_cache,
- "glsl_correct_derivatives_after_discard"))
- flags |= PIPE_SCREEN_ENABLE_CORRECT_TGSI_DERIVATIVES_AFTER_KILL;
-
- return flags;
}
const __DRIconfig **
diff --git a/src/gallium/state_trackers/dri/dri_screen.h b/src/gallium/state_trackers/dri/dri_screen.h
index b8b27c30222..677e945e039 100644
--- a/src/gallium/state_trackers/dri/dri_screen.h
+++ b/src/gallium/state_trackers/dri/dri_screen.h
@@ -130,8 +130,8 @@ void
dri_fill_st_visual(struct st_visual *stvis, struct dri_screen *screen,
const struct gl_config *mode);
-unsigned
-dri_init_options_get_screen_flags(struct dri_screen *screen);
+void
+dri_init_options(struct dri_screen *screen);
const __DRIconfig **
dri_init_screen_helper(struct dri_screen *screen,
diff --git a/src/gallium/state_trackers/dri/drisw.c b/src/gallium/state_trackers/dri/drisw.c
index d3d44bf418b..ad40e2f837b 100644
--- a/src/gallium/state_trackers/dri/drisw.c
+++ b/src/gallium/state_trackers/dri/drisw.c
@@ -402,7 +402,7 @@ drisw_init_screen(__DRIscreen * sPriv)
if (pipe_loader_sw_probe_dri(&screen->dev, &drisw_lf)) {
struct pipe_screen_config config;
- config.flags = dri_init_options_get_screen_flags(screen);
+ dri_init_options(screen);
pscreen = pipe_loader_create_screen(screen->dev, &config);
}