diff options
author | Lucas Fryzek <lfryzek@igalia.com> | 2023-03-02 14:48:14 -0500 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2023-03-31 13:39:06 +0000 |
commit | 853b4801f27fcb7ef15d3109d61e95397afa0282 (patch) | |
tree | 621c2a5aa927a5a07bbe56cdd3f4cab9e071659b /src/gallium/drivers/i915 | |
parent | 0f5fdd9ca44a3b937e07e7d04d83c96aab04adc8 (diff) |
i915: Add support for `get_screen_fd`
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21654>
Diffstat (limited to 'src/gallium/drivers/i915')
-rw-r--r-- | src/gallium/drivers/i915/i915_screen.c | 9 | ||||
-rw-r--r-- | src/gallium/drivers/i915/i915_winsys.h | 5 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/gallium/drivers/i915/i915_screen.c b/src/gallium/drivers/i915/i915_screen.c index 2530aa73494..1240da087e4 100644 --- a/src/gallium/drivers/i915/i915_screen.c +++ b/src/gallium/drivers/i915/i915_screen.c @@ -639,6 +639,14 @@ i915_destroy_screen(struct pipe_screen *screen) FREE(is); } +static int +i915_screen_get_fd(struct pipe_screen *screen) +{ + struct i915_screen *is = i915_screen(screen); + + return is->iws->get_fd(is->iws); +} + /** * Create a new i915_screen object */ @@ -681,6 +689,7 @@ i915_screen_create(struct i915_winsys *iws) is->base.get_name = i915_get_name; is->base.get_vendor = i915_get_vendor; is->base.get_device_vendor = i915_get_device_vendor; + is->base.get_screen_fd = i915_screen_get_fd; is->base.get_param = i915_get_param; is->base.get_shader_param = i915_get_shader_param; is->base.get_paramf = i915_get_paramf; diff --git a/src/gallium/drivers/i915/i915_winsys.h b/src/gallium/drivers/i915/i915_winsys.h index 1c7a501ecf0..7d99ce98804 100644 --- a/src/gallium/drivers/i915/i915_winsys.h +++ b/src/gallium/drivers/i915/i915_winsys.h @@ -236,6 +236,11 @@ struct i915_winsys { * Destroy the winsys. */ void (*destroy)(struct i915_winsys *iws); + + /** + * Get FD if the winsys provides one + */ + int (*get_fd)(struct i915_winsys *iws); }; #endif |