summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>2019-10-19 16:46:54 -0400
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>2019-10-26 13:17:42 +0000
commitafb0d08cb0f2f97620504e5ccf9bf0c744c42403 (patch)
tree5791df52a6772ee23ec39ac853b6a70bd61cb283
parent4949876dd04e8facc4ba3fd06c3b057295591a15 (diff)
pipe-loader: Default to kmsro if probe fails
A device supported by kmsro will not automatically probe kmsro since the driver name will be panfrost/lima/v3d/..., not "kmsro". Since kmsro is a bit of a catch-all for generic (mostly embedded) GPUs, add a fallback on kmsro for the dynamic loader. Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com> Acked-by: Karol Herbst <kherbst@redhat.com>
-rw-r--r--src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
index 45b941e1f13..3b9b39f62a3 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c
@@ -208,6 +208,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;