From 511e7b6f610fc5c2d4d462ba0586590d62bc7247 Mon Sep 17 00:00:00 2001 From: Rob Herring Date: Thu, 24 Jan 2019 16:36:00 -0600 Subject: [PATCH] pipe-loader: Fallback to kmsro driver when no matching driver name found If we can't find a driver matching by name, then use the kmsro driver. This removes the need for needing a driver descriptor for every possible KMS driver. Signed-off-by: Rob Herring Reviewed-by: Alyssa Rosenzweig Reviewed-by: Eric Anholt --- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c index 230bafe5e15..c1323ac6590 100644 --- a/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c +++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c @@ -106,11 +106,6 @@ static const struct drm_driver_descriptor driver_descriptors[] = { .create_screen = pipe_freedreno_create_screen, .configuration = pipe_default_configuration_query, }, - { - .driver_name = "pl111", - .create_screen = pipe_kmsro_create_screen, - .configuration = pipe_default_configuration_query, - }, { .driver_name = "virtio_gpu", .create_screen = pipe_virgl_create_screen, @@ -142,6 +137,13 @@ static const struct drm_driver_descriptor driver_descriptors[] = { .configuration = pipe_default_configuration_query, }, }; + +static const struct drm_driver_descriptor default_driver_descriptor = { + .driver_name = "kmsro", + .create_screen = pipe_kmsro_create_screen, + .configuration = pipe_default_configuration_query, +}; + #endif static const struct drm_driver_descriptor * @@ -152,6 +154,7 @@ get_driver_descriptor(const char *driver_name, struct util_dl_library **plib) if (strcmp(driver_descriptors[i].driver_name, driver_name) == 0) return &driver_descriptors[i]; } + return &default_driver_descriptor; #else *plib = pipe_loader_find_module(driver_name, PIPE_SEARCH_DIR); if (!*plib) -- 2.30.2