gbm: Inline load_backend function content
It was a functional no-op with the currently available backends (Only DRI), and its implied intended functionality is implemented elsewhere in subsequent patches. Signed-off-by: James Jones <jajones@nvidia.com> Reviewed-by: Michel Dänzer <mdaenzer@redhat.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9902>
This commit is contained in:
@@ -39,28 +39,13 @@ extern const struct gbm_backend gbm_dri_backend;
|
|||||||
|
|
||||||
struct backend_desc {
|
struct backend_desc {
|
||||||
const char *name;
|
const char *name;
|
||||||
const struct gbm_backend *builtin;
|
const struct gbm_backend *backend;
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct backend_desc backends[] = {
|
static const struct backend_desc backends[] = {
|
||||||
{ "gbm_dri.so", &gbm_dri_backend },
|
{ "gbm_dri.so", &gbm_dri_backend },
|
||||||
};
|
};
|
||||||
|
|
||||||
static const void *
|
|
||||||
load_backend(const struct backend_desc *backend)
|
|
||||||
{
|
|
||||||
const void *init = NULL;
|
|
||||||
|
|
||||||
if (backend == NULL)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
if (backend->builtin) {
|
|
||||||
init = backend->builtin;
|
|
||||||
}
|
|
||||||
|
|
||||||
return init;
|
|
||||||
}
|
|
||||||
|
|
||||||
static const struct backend_desc *
|
static const struct backend_desc *
|
||||||
find_backend(const char *name)
|
find_backend(const char *name)
|
||||||
{
|
{
|
||||||
@@ -80,24 +65,22 @@ find_backend(const char *name)
|
|||||||
struct gbm_device *
|
struct gbm_device *
|
||||||
_gbm_create_device(int fd)
|
_gbm_create_device(int fd)
|
||||||
{
|
{
|
||||||
const struct gbm_backend *backend = NULL;
|
const struct backend_desc *backend = NULL;
|
||||||
struct gbm_device *dev = NULL;
|
struct gbm_device *dev = NULL;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
const char *b;
|
const char *b;
|
||||||
|
|
||||||
b = getenv("GBM_BACKEND");
|
b = getenv("GBM_BACKEND");
|
||||||
if (b)
|
if (b)
|
||||||
backend = load_backend(find_backend(b));
|
backend = find_backend(b);
|
||||||
|
|
||||||
if (backend)
|
if (backend)
|
||||||
dev = backend->create_device(fd);
|
dev = backend->backend->create_device(fd);
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(backends) && dev == NULL; ++i) {
|
for (i = 0; i < ARRAY_SIZE(backends) && dev == NULL; ++i) {
|
||||||
backend = load_backend(&backends[i]);
|
backend = &backends[i];
|
||||||
if (backend == NULL)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
dev = backend->create_device(fd);
|
dev = backend->backend->create_device(fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
return dev;
|
return dev;
|
||||||
|
Reference in New Issue
Block a user