diff options
author | Jonathan Gray <jsg@cvs.openbsd.org> | 2020-08-26 06:03:18 +0000 |
---|---|---|
committer | Jonathan Gray <jsg@cvs.openbsd.org> | 2020-08-26 06:03:18 +0000 |
commit | af5e8f5366b05c3d4f8521f318c143a5c5dc3ea9 (patch) | |
tree | c5691445908b1beca9facf0e5e3c5d7f35f74228 /lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c | |
parent | 27c93456b58343162f7c4ad20ca6bea0c9a91646 (diff) |
Merge Mesa 20.1.6
Diffstat (limited to 'lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c')
-rw-r--r-- | lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c b/lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c index 45b941e1f..7d90285a4 100644 --- a/lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c +++ b/lib/mesa/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c @@ -135,6 +135,10 @@ static const struct drm_driver_descriptor driver_descriptors[] = { .driver_name = "lima", .create_screen = pipe_lima_create_screen, }, + { + .driver_name = "zink", + .create_screen = pipe_zink_create_screen, + }, }; static const struct drm_driver_descriptor default_driver_descriptor = { @@ -208,6 +212,11 @@ pipe_loader_drm_probe_fd_nodup(struct pipe_loader_device **dev, int fd) plib = &ddev->lib; #endif ddev->dd = get_driver_descriptor(ddev->base.driver_name, plib); + + /* kmsro supports lots of drivers, try as a fallback */ + if (!ddev->dd) + ddev->dd = get_driver_descriptor("kmsro", plib); + if (!ddev->dd) goto fail; @@ -322,7 +331,7 @@ pipe_loader_drm_get_driinfo_xml(const char *driver_name) const struct drm_driver_descriptor *dd = get_driver_descriptor(driver_name, &lib); - if (dd && dd->driconf_xml) + if (dd && dd->driconf_xml && *dd->driconf_xml) xml = strdup(*dd->driconf_xml); if (lib) |