Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22144>
#include <stdbool.h>
struct pipe_screen;
+struct pipe_screen_config;
struct renderonly;
struct pipe_screen *asahi_drm_screen_create(int drmFD);
-struct pipe_screen *asahi_drm_screen_create_renderonly(struct renderonly *ro);
+struct pipe_screen *
+asahi_drm_screen_create_renderonly(int fd, struct renderonly *ro,
+ const struct pipe_screen_config *config);
#endif /* __ASAHI_DRM_PUBLIC_H__ */
}
struct pipe_screen *
-asahi_drm_screen_create_renderonly(struct renderonly *ro)
+asahi_drm_screen_create_renderonly(int fd, struct renderonly *ro,
+ const struct pipe_screen_config *config)
{
- return u_pipe_screen_lookup_or_create(os_dupfd_cloexec(ro->gpu_fd), NULL, ro,
+ return u_pipe_screen_lookup_or_create(os_dupfd_cloexec(fd), config, ro,
asahi_screen_create);
}
if (ro->gpu_fd >= 0) {
ro->create_for_resource = renderonly_create_kms_dumb_buffer_for_resource;
- screen = asahi_drm_screen_create_renderonly(ro);
+ screen = asahi_drm_screen_create_renderonly(ro->gpu_fd, ro, config);
if (!screen)
goto out_free;