summaryrefslogtreecommitdiffstats
path: root/src/gallium/winsys
diff options
context:
space:
mode:
authorJonathan Marek <[email protected]>2019-01-16 10:22:53 -0500
committerRob Clark <[email protected]>2019-01-26 10:47:21 -0500
commit41ddf1d1506e4a1394ab784d805d1df78b1892e1 (patch)
treeb546fe3b3299e8d2ac589294d23e8cd9088c65f3 /src/gallium/winsys
parentcd79b5e0c2cc0035719348592bac97dce6ce1d73 (diff)
freedreno: add renderonly scanout
This allows creating a fd_screen with a renderonly object which will be used to allocated scanout resources. Signed-off-by: Jonathan Marek <[email protected]> Reviewed-by: Eric Anholt <[email protected]> [slight tweak to fix uninitialized 'prsc' in debug print] Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/winsys')
-rw-r--r--src/gallium/winsys/freedreno/drm/freedreno_drm_public.h3
-rw-r--r--src/gallium/winsys/freedreno/drm/freedreno_drm_winsys.c4
2 files changed, 4 insertions, 3 deletions
diff --git a/src/gallium/winsys/freedreno/drm/freedreno_drm_public.h b/src/gallium/winsys/freedreno/drm/freedreno_drm_public.h
index a7ba20707d5..2f5591e867a 100644
--- a/src/gallium/winsys/freedreno/drm/freedreno_drm_public.h
+++ b/src/gallium/winsys/freedreno/drm/freedreno_drm_public.h
@@ -3,7 +3,8 @@
#define __FREEDRENO_DRM_PUBLIC_H__
struct pipe_screen;
+struct renderonly;
-struct pipe_screen *fd_drm_screen_create(int drmFD);
+struct pipe_screen *fd_drm_screen_create(int drmFD, struct renderonly *ro);
#endif
diff --git a/src/gallium/winsys/freedreno/drm/freedreno_drm_winsys.c b/src/gallium/winsys/freedreno/drm/freedreno_drm_winsys.c
index a65583f87d4..dff6209e1ef 100644
--- a/src/gallium/winsys/freedreno/drm/freedreno_drm_winsys.c
+++ b/src/gallium/winsys/freedreno/drm/freedreno_drm_winsys.c
@@ -85,7 +85,7 @@ static int compare_fd(void *key1, void *key2)
}
struct pipe_screen *
-fd_drm_screen_create(int fd)
+fd_drm_screen_create(int fd, struct renderonly *ro)
{
struct pipe_screen *pscreen = NULL;
@@ -104,7 +104,7 @@ fd_drm_screen_create(int fd)
if (!dev)
goto unlock;
- pscreen = fd_screen_create(dev);
+ pscreen = fd_screen_create(dev, ro);
if (pscreen) {
int fd = fd_device_fd(dev);