summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2017-06-21 00:30:21 +0200
committerMarek Olšák <[email protected]>2017-06-23 19:50:20 +0200
commit76f379330acc3993f865ea77dfb0b5bcf47b6697 (patch)
treecd642be3749ad9ad1be418acbb057836b4b22902
parent516488bb51759e581a7aa2858278e6b267c1f52f (diff)
gallium: allow passing 'unsigned flags' to create_screen()
for drirc options Reviewed-by: Nicolai Hähnle <[email protected]>
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader.c4
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader.h2
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c4
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader_priv.h3
-rw-r--r--src/gallium/auxiliary/target-helpers/drm_helper.h48
-rw-r--r--src/gallium/auxiliary/target-helpers/drm_helper_public.h26
-rw-r--r--src/gallium/auxiliary/vl/vl_winsys_dri.c2
-rw-r--r--src/gallium/auxiliary/vl/vl_winsys_dri3.c2
-rw-r--r--src/gallium/auxiliary/vl/vl_winsys_drm.c2
-rw-r--r--src/gallium/include/state_tracker/drm_driver.h2
-rw-r--r--src/gallium/state_trackers/clover/core/device.cpp2
-rw-r--r--src/gallium/state_trackers/dri/dri2.c4
-rw-r--r--src/gallium/state_trackers/dri/drisw.c2
-rw-r--r--src/gallium/state_trackers/xa/xa_tracker.c2
-rw-r--r--src/gallium/targets/d3dadapter9/drm.c4
-rw-r--r--src/gallium/targets/pipe-loader/pipe_i915.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_msm.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_nouveau.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_r300.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_r600.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_radeonsi.c2
-rw-r--r--src/gallium/targets/pipe-loader/pipe_vmwgfx.c2
-rw-r--r--src/gallium/tests/trivial/compute.c2
-rw-r--r--src/gallium/tests/trivial/quad-tex.c2
-rw-r--r--src/gallium/tests/trivial/tri.c2
25 files changed, 65 insertions, 64 deletions
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader.c b/src/gallium/auxiliary/pipe-loader/pipe_loader.c
index 1ddfeba16c9..0857a2cbb7e 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader.c
@@ -74,9 +74,9 @@ pipe_loader_configuration(struct pipe_loader_device *dev,
}
struct pipe_screen *
-pipe_loader_create_screen(struct pipe_loader_device *dev)
+pipe_loader_create_screen(struct pipe_loader_device *dev, unsigned flags)
{
- return dev->ops->create_screen(dev);
+ return dev->ops->create_screen(dev, flags);
}
struct util_dl_library *
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader.h b/src/gallium/auxiliary/pipe-loader/pipe_loader.h
index 690d088ed82..73b75586cfa 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader.h
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader.h
@@ -84,7 +84,7 @@ pipe_loader_probe(struct pipe_loader_device **devs, int ndev);
* \param dev Device the screen will be created for.
*/
struct pipe_screen *
-pipe_loader_create_screen(struct pipe_loader_device *dev);
+pipe_loader_create_screen(struct pipe_loader_device *dev, unsigned flags);
/**
* Query the configuration parameters for the specified device.
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
index 0ba360e1ee0..ef446b6e4f9 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
@@ -281,11 +281,11 @@ pipe_loader_drm_configuration(struct pipe_loader_device *dev,
}
static struct pipe_screen *
-pipe_loader_drm_create_screen(struct pipe_loader_device *dev)
+pipe_loader_drm_create_screen(struct pipe_loader_device *dev, unsigned flags)
{
struct pipe_loader_drm_device *ddev = pipe_loader_drm_device(dev);
- return ddev->dd->create_screen(ddev->fd);
+ return ddev->dd->create_screen(ddev->fd, flags);
}
static const struct pipe_loader_ops pipe_loader_drm_ops = {
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_priv.h b/src/gallium/auxiliary/pipe-loader/pipe_loader_priv.h
index da2ca8c6e1f..58ab992a906 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_priv.h
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_priv.h
@@ -31,7 +31,8 @@
#include "pipe_loader.h"
struct pipe_loader_ops {
- struct pipe_screen *(*create_screen)(struct pipe_loader_device *dev);
+ struct pipe_screen *(*create_screen)(struct pipe_loader_device *dev,
+ unsigned flags);
const struct drm_conf_ret *(*configuration)(struct pipe_loader_device *dev,
enum drm_conf conf);
diff --git a/src/gallium/auxiliary/target-helpers/drm_helper.h b/src/gallium/auxiliary/target-helpers/drm_helper.h
index 1b071a6d36b..65231cf3eba 100644
--- a/src/gallium/auxiliary/target-helpers/drm_helper.h
+++ b/src/gallium/auxiliary/target-helpers/drm_helper.h
@@ -10,7 +10,7 @@
#include "i915/i915_public.h"
struct pipe_screen *
-pipe_i915_create_screen(int fd)
+pipe_i915_create_screen(int fd, unsigned flags)
{
struct i915_winsys *iws;
struct pipe_screen *screen;
@@ -26,7 +26,7 @@ pipe_i915_create_screen(int fd)
#else
struct pipe_screen *
-pipe_i915_create_screen(int fd)
+pipe_i915_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "i915g: driver missing\n");
return NULL;
@@ -38,7 +38,7 @@ pipe_i915_create_screen(int fd)
#include "nouveau/drm/nouveau_drm_public.h"
struct pipe_screen *
-pipe_nouveau_create_screen(int fd)
+pipe_nouveau_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -49,7 +49,7 @@ pipe_nouveau_create_screen(int fd)
#else
struct pipe_screen *
-pipe_nouveau_create_screen(int fd)
+pipe_nouveau_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "nouveau: driver missing\n");
return NULL;
@@ -61,7 +61,7 @@ pipe_nouveau_create_screen(int fd)
#include "pl111/drm/pl111_drm_public.h"
struct pipe_screen *
-pipe_pl111_create_screen(int fd)
+pipe_pl111_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -72,7 +72,7 @@ pipe_pl111_create_screen(int fd)
#else
struct pipe_screen *
-pipe_pl111_create_screen(int fd)
+pipe_pl111_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "pl111: driver missing\n");
return NULL;
@@ -86,7 +86,7 @@ pipe_pl111_create_screen(int fd)
#include "r300/r300_public.h"
struct pipe_screen *
-pipe_r300_create_screen(int fd)
+pipe_r300_create_screen(int fd, unsigned flags)
{
struct radeon_winsys *rw;
@@ -97,7 +97,7 @@ pipe_r300_create_screen(int fd)
#else
struct pipe_screen *
-pipe_r300_create_screen(int fd)
+pipe_r300_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "r300: driver missing\n");
return NULL;
@@ -111,7 +111,7 @@ pipe_r300_create_screen(int fd)
#include "r600/r600_public.h"
struct pipe_screen *
-pipe_r600_create_screen(int fd)
+pipe_r600_create_screen(int fd, unsigned flags)
{
struct radeon_winsys *rw;
@@ -122,7 +122,7 @@ pipe_r600_create_screen(int fd)
#else
struct pipe_screen *
-pipe_r600_create_screen(int fd)
+pipe_r600_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "r600: driver missing\n");
return NULL;
@@ -137,7 +137,7 @@ pipe_r600_create_screen(int fd)
#include "radeonsi/si_public.h"
struct pipe_screen *
-pipe_radeonsi_create_screen(int fd)
+pipe_radeonsi_create_screen(int fd, unsigned flags)
{
struct radeon_winsys *rw;
@@ -153,7 +153,7 @@ pipe_radeonsi_create_screen(int fd)
#else
struct pipe_screen *
-pipe_radeonsi_create_screen(int fd)
+pipe_radeonsi_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "radeonsi: driver missing\n");
return NULL;
@@ -166,7 +166,7 @@ pipe_radeonsi_create_screen(int fd)
#include "svga/svga_public.h"
struct pipe_screen *
-pipe_vmwgfx_create_screen(int fd)
+pipe_vmwgfx_create_screen(int fd, unsigned flags)
{
struct svga_winsys_screen *sws;
struct pipe_screen *screen;
@@ -182,7 +182,7 @@ pipe_vmwgfx_create_screen(int fd)
#else
struct pipe_screen *
-pipe_vmwgfx_create_screen(int fd)
+pipe_vmwgfx_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "svga: driver missing\n");
return NULL;
@@ -194,7 +194,7 @@ pipe_vmwgfx_create_screen(int fd)
#include "freedreno/drm/freedreno_drm_public.h"
struct pipe_screen *
-pipe_freedreno_create_screen(int fd)
+pipe_freedreno_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -205,7 +205,7 @@ pipe_freedreno_create_screen(int fd)
#else
struct pipe_screen *
-pipe_freedreno_create_screen(int fd)
+pipe_freedreno_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "freedreno: driver missing\n");
return NULL;
@@ -218,7 +218,7 @@ pipe_freedreno_create_screen(int fd)
#include "virgl/virgl_public.h"
struct pipe_screen *
-pipe_virgl_create_screen(int fd)
+pipe_virgl_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -229,7 +229,7 @@ pipe_virgl_create_screen(int fd)
#else
struct pipe_screen *
-pipe_virgl_create_screen(int fd)
+pipe_virgl_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "virgl: driver missing\n");
return NULL;
@@ -241,7 +241,7 @@ pipe_virgl_create_screen(int fd)
#include "vc4/drm/vc4_drm_public.h"
struct pipe_screen *
-pipe_vc4_create_screen(int fd)
+pipe_vc4_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -252,7 +252,7 @@ pipe_vc4_create_screen(int fd)
#else
struct pipe_screen *
-pipe_vc4_create_screen(int fd)
+pipe_vc4_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "vc4: driver missing\n");
return NULL;
@@ -264,7 +264,7 @@ pipe_vc4_create_screen(int fd)
#include "etnaviv/drm/etnaviv_drm_public.h"
struct pipe_screen *
-pipe_etna_create_screen(int fd)
+pipe_etna_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -275,7 +275,7 @@ pipe_etna_create_screen(int fd)
#else
struct pipe_screen *
-pipe_etna_create_screen(int fd)
+pipe_etna_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "etnaviv: driver missing\n");
return NULL;
@@ -287,7 +287,7 @@ pipe_etna_create_screen(int fd)
#include "imx/drm/imx_drm_public.h"
struct pipe_screen *
-pipe_imx_drm_create_screen(int fd)
+pipe_imx_drm_create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
@@ -298,7 +298,7 @@ pipe_imx_drm_create_screen(int fd)
#else
struct pipe_screen *
-pipe_imx_drm_create_screen(int fd)
+pipe_imx_drm_create_screen(int fd, unsigned flags)
{
fprintf(stderr, "imx-drm: driver missing\n");
return NULL;
diff --git a/src/gallium/auxiliary/target-helpers/drm_helper_public.h b/src/gallium/auxiliary/target-helpers/drm_helper_public.h
index 5abb5fc7b82..d4adc880df0 100644
--- a/src/gallium/auxiliary/target-helpers/drm_helper_public.h
+++ b/src/gallium/auxiliary/target-helpers/drm_helper_public.h
@@ -5,42 +5,42 @@
struct pipe_screen;
struct pipe_screen *
-pipe_i915_create_screen(int fd);
+pipe_i915_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_ilo_create_screen(int fd);
+pipe_ilo_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_nouveau_create_screen(int fd);
+pipe_nouveau_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_r300_create_screen(int fd);
+pipe_r300_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_r600_create_screen(int fd);
+pipe_r600_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_radeonsi_create_screen(int fd);
+pipe_radeonsi_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_vmwgfx_create_screen(int fd);
+pipe_vmwgfx_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_freedreno_create_screen(int fd);
+pipe_freedreno_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_virgl_create_screen(int fd);
+pipe_virgl_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_vc4_create_screen(int fd);
+pipe_vc4_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_pl111_create_screen(int fd);
+pipe_pl111_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_etna_create_screen(int fd);
+pipe_etna_create_screen(int fd, unsigned flags);
struct pipe_screen *
-pipe_imx_drm_create_screen(int fd);
+pipe_imx_drm_create_screen(int fd, unsigned flags);
#endif /* _DRM_HELPER_PUBLIC_H */
diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri.c b/src/gallium/auxiliary/vl/vl_winsys_dri.c
index b4fb47ea8e4..043483b7fea 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_dri.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_dri.c
@@ -406,7 +406,7 @@ vl_dri2_screen_create(Display *display, int screen)
goto free_authenticate;
if (pipe_loader_drm_probe_fd(&scrn->base.dev, fd))
- scrn->base.pscreen = pipe_loader_create_screen(scrn->base.dev);
+ scrn->base.pscreen = pipe_loader_create_screen(scrn->base.dev, 0);
if (!scrn->base.pscreen)
goto release_pipe;
diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri3.c b/src/gallium/auxiliary/vl/vl_winsys_dri3.c
index 8251087f3f9..68bac44d95b 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_dri3.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_dri3.c
@@ -817,7 +817,7 @@ vl_dri3_screen_create(Display *display, int screen)
free(geom_reply);
if (pipe_loader_drm_probe_fd(&scrn->base.dev, fd))
- scrn->base.pscreen = pipe_loader_create_screen(scrn->base.dev);
+ scrn->base.pscreen = pipe_loader_create_screen(scrn->base.dev, 0);
if (!scrn->base.pscreen)
goto release_pipe;
diff --git a/src/gallium/auxiliary/vl/vl_winsys_drm.c b/src/gallium/auxiliary/vl/vl_winsys_drm.c
index df8809c501c..ebde5b8cb63 100644
--- a/src/gallium/auxiliary/vl/vl_winsys_drm.c
+++ b/src/gallium/auxiliary/vl/vl_winsys_drm.c
@@ -52,7 +52,7 @@ vl_drm_screen_create(int fd)
goto free_screen;
if (pipe_loader_drm_probe_fd(&vscreen->dev, new_fd))
- vscreen->pscreen = pipe_loader_create_screen(vscreen->dev);
+ vscreen->pscreen = pipe_loader_create_screen(vscreen->dev, 0);
if (!vscreen->pscreen)
goto release_pipe;
diff --git a/src/gallium/include/state_tracker/drm_driver.h b/src/gallium/include/state_tracker/drm_driver.h
index 88dda0a9977..4383276a4ad 100644
--- a/src/gallium/include/state_tracker/drm_driver.h
+++ b/src/gallium/include/state_tracker/drm_driver.h
@@ -102,7 +102,7 @@ struct drm_driver_descriptor
* This function does any wrapping of the screen.
* For example wrapping trace or rbug debugging drivers around it.
*/
- struct pipe_screen* (*create_screen)(int drm_fd);
+ struct pipe_screen* (*create_screen)(int drm_fd, unsigned flags);
/**
* Return a configuration value.
diff --git a/src/gallium/state_trackers/clover/core/device.cpp b/src/gallium/state_trackers/clover/core/device.cpp
index 8dfba1ad9fd..2ad9e49cf8d 100644
--- a/src/gallium/state_trackers/clover/core/device.cpp
+++ b/src/gallium/state_trackers/clover/core/device.cpp
@@ -42,7 +42,7 @@ namespace {
device::device(clover::platform &platform, pipe_loader_device *ldev) :
platform(platform), ldev(ldev) {
- pipe = pipe_loader_create_screen(ldev);
+ pipe = pipe_loader_create_screen(ldev, 0);
if (!pipe || !pipe->get_param(pipe, PIPE_CAP_COMPUTE)) {
if (pipe)
pipe->destroy(pipe);
diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
index c5e69d639b1..2d0e78cfdda 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -2026,7 +2026,7 @@ dri2_init_screen(__DRIscreen * sPriv)
goto free_screen;
if (pipe_loader_drm_probe_fd(&screen->dev, fd))
- pscreen = pipe_loader_create_screen(screen->dev);
+ pscreen = pipe_loader_create_screen(screen->dev, 0);
if (!pscreen)
goto release_pipe;
@@ -2117,7 +2117,7 @@ dri_kms_init_screen(__DRIscreen * sPriv)
goto free_screen;
if (pipe_loader_sw_probe_kms(&screen->dev, fd))
- pscreen = pipe_loader_create_screen(screen->dev);
+ pscreen = pipe_loader_create_screen(screen->dev, 0);
if (!pscreen)
goto release_pipe;
diff --git a/src/gallium/state_trackers/dri/drisw.c b/src/gallium/state_trackers/dri/drisw.c
index 8fbfa9eceae..877aa716d26 100644
--- a/src/gallium/state_trackers/dri/drisw.c
+++ b/src/gallium/state_trackers/dri/drisw.c
@@ -400,7 +400,7 @@ drisw_init_screen(__DRIscreen * sPriv)
sPriv->extensions = drisw_screen_extensions;
if (pipe_loader_sw_probe_dri(&screen->dev, &drisw_lf))
- pscreen = pipe_loader_create_screen(screen->dev);
+ pscreen = pipe_loader_create_screen(screen->dev, 0);
if (!pscreen)
goto fail;
diff --git a/src/gallium/state_trackers/xa/xa_tracker.c b/src/gallium/state_trackers/xa/xa_tracker.c
index 03a3abf6835..e5addcf8fef 100644
--- a/src/gallium/state_trackers/xa/xa_tracker.c
+++ b/src/gallium/state_trackers/xa/xa_tracker.c
@@ -162,7 +162,7 @@ xa_tracker_create(int drm_fd)
goto out_no_fd;
if (pipe_loader_drm_probe_fd(&xa->dev, fd))
- xa->screen = pipe_loader_create_screen(xa->dev);
+ xa->screen = pipe_loader_create_screen(xa->dev, 0);
if (!xa->screen)
goto out_no_screen;
diff --git a/src/gallium/targets/d3dadapter9/drm.c b/src/gallium/targets/d3dadapter9/drm.c
index 0434d8e4c17..27c3fb16751 100644
--- a/src/gallium/targets/d3dadapter9/drm.c
+++ b/src/gallium/targets/d3dadapter9/drm.c
@@ -229,7 +229,7 @@ drm_create_adapter( int fd,
return D3DERR_DRIVERINTERNALERROR;
}
- ctx->base.hal = pipe_loader_create_screen(ctx->dev);
+ ctx->base.hal = pipe_loader_create_screen(ctx->dev, 0);
if (!ctx->base.hal) {
ERR("Unable to load requested driver.\n");
drm_destroy(&ctx->base);
@@ -312,7 +312,7 @@ drm_create_adapter( int fd,
/* wrap it to create a software screen that can share resources */
if (pipe_loader_sw_probe_wrapped(&ctx->swdev, ctx->base.hal))
- ctx->base.ref = pipe_loader_create_screen(ctx->swdev);
+ ctx->base.ref = pipe_loader_create_screen(ctx->swdev, 0);
if (!ctx->base.ref) {
ERR("Couldn't wrap drm screen to swrast screen. Software devices "
diff --git a/src/gallium/targets/pipe-loader/pipe_i915.c b/src/gallium/targets/pipe-loader/pipe_i915.c
index 2183dc3c147..43061b06d66 100644
--- a/src/gallium/targets/pipe-loader/pipe_i915.c
+++ b/src/gallium/targets/pipe-loader/pipe_i915.c
@@ -5,7 +5,7 @@
#include "i915/i915_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct i915_winsys *iws;
struct pipe_screen *screen;
diff --git a/src/gallium/targets/pipe-loader/pipe_msm.c b/src/gallium/targets/pipe-loader/pipe_msm.c
index 858b2488b5b..180e0f93511 100644
--- a/src/gallium/targets/pipe-loader/pipe_msm.c
+++ b/src/gallium/targets/pipe-loader/pipe_msm.c
@@ -4,7 +4,7 @@
#include "freedreno/drm/freedreno_drm_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
diff --git a/src/gallium/targets/pipe-loader/pipe_nouveau.c b/src/gallium/targets/pipe-loader/pipe_nouveau.c
index d9c0c5d0377..de61f44ce2c 100644
--- a/src/gallium/targets/pipe-loader/pipe_nouveau.c
+++ b/src/gallium/targets/pipe-loader/pipe_nouveau.c
@@ -4,7 +4,7 @@
#include "nouveau/drm/nouveau_drm_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct pipe_screen *screen;
diff --git a/src/gallium/targets/pipe-loader/pipe_r300.c b/src/gallium/targets/pipe-loader/pipe_r300.c
index dd5c0bd1831..ffd6ba84bf0 100644
--- a/src/gallium/targets/pipe-loader/pipe_r300.c
+++ b/src/gallium/targets/pipe-loader/pipe_r300.c
@@ -5,7 +5,7 @@
#include "r300/r300_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct radeon_winsys *sws;
diff --git a/src/gallium/targets/pipe-loader/pipe_r600.c b/src/gallium/targets/pipe-loader/pipe_r600.c
index 70760d045ff..6f21c50a8bb 100644
--- a/src/gallium/targets/pipe-loader/pipe_r600.c
+++ b/src/gallium/targets/pipe-loader/pipe_r600.c
@@ -5,7 +5,7 @@
#include "r600/r600_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct radeon_winsys *rw;
diff --git a/src/gallium/targets/pipe-loader/pipe_radeonsi.c b/src/gallium/targets/pipe-loader/pipe_radeonsi.c
index 01b1d8aedb9..b6a78e42cbe 100644
--- a/src/gallium/targets/pipe-loader/pipe_radeonsi.c
+++ b/src/gallium/targets/pipe-loader/pipe_radeonsi.c
@@ -6,7 +6,7 @@
#include "radeonsi/si_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct radeon_winsys *rw;
diff --git a/src/gallium/targets/pipe-loader/pipe_vmwgfx.c b/src/gallium/targets/pipe-loader/pipe_vmwgfx.c
index 7aa44217f9c..63208318880 100644
--- a/src/gallium/targets/pipe-loader/pipe_vmwgfx.c
+++ b/src/gallium/targets/pipe-loader/pipe_vmwgfx.c
@@ -5,7 +5,7 @@
#include "svga/svga_public.h"
static struct pipe_screen *
-create_screen(int fd)
+create_screen(int fd, unsigned flags)
{
struct svga_winsys_screen *sws;
struct pipe_screen *screen;
diff --git a/src/gallium/tests/trivial/compute.c b/src/gallium/tests/trivial/compute.c
index 443451e13d2..a2e882cc81d 100644
--- a/src/gallium/tests/trivial/compute.c
+++ b/src/gallium/tests/trivial/compute.c
@@ -76,7 +76,7 @@ static void init_ctx(struct context *ctx)
ret = pipe_loader_probe(&ctx->dev, 1);
assert(ret);
- ctx->screen = pipe_loader_create_screen(ctx->dev);
+ ctx->screen = pipe_loader_create_screen(ctx->dev, 0);
assert(ctx->screen);
ctx->pipe = ctx->screen->context_create(ctx->screen, NULL, 0);
diff --git a/src/gallium/tests/trivial/quad-tex.c b/src/gallium/tests/trivial/quad-tex.c
index 2ee544a4129..113cb9230bb 100644
--- a/src/gallium/tests/trivial/quad-tex.c
+++ b/src/gallium/tests/trivial/quad-tex.c
@@ -96,7 +96,7 @@ static void init_prog(struct program *p)
assert(ret);
/* init a pipe screen */
- p->screen = pipe_loader_create_screen(p->dev);
+ p->screen = pipe_loader_create_screen(p->dev, 0);
assert(p->screen);
/* create the pipe driver context and cso context */
diff --git a/src/gallium/tests/trivial/tri.c b/src/gallium/tests/trivial/tri.c
index a2031696f02..df02e96d85f 100644
--- a/src/gallium/tests/trivial/tri.c
+++ b/src/gallium/tests/trivial/tri.c
@@ -91,7 +91,7 @@ static void init_prog(struct program *p)
assert(ret);
/* init a pipe screen */
- p->screen = pipe_loader_create_screen(p->dev);
+ p->screen = pipe_loader_create_screen(p->dev, 0);
assert(p->screen);
/* create the pipe driver context and cso context */