Lines Matching refs:driver
105 char *driver;
109 log_(_LOADER_WARNING, "failed to get driver name for fd %d\n", fd);
113 driver = strndup(version->name, version->name_len);
114 log_(driver ? _LOADER_DEBUG : _LOADER_WARNING, "using driver %s for %d\n",
115 driver, fd);
118 return driver;
436 char *driver = NULL;
449 driver = strdup(driver_map[i].driver);
455 driver = strdup(driver_map[i].driver);
461 log_(driver ? _LOADER_DEBUG : _LOADER_WARNING,
462 "pci id for fd %d: %04x:%04x, driver %s\n",
463 fd, vendor_id, chip_id, driver);
464 return driver;
470 char *driver;
472 /* Allow an environment variable to force choosing a different driver
473 * binary. If that driver binary can't survive on this FD, that's the
478 driver = getenv("MESA_LOADER_DRIVER_OVERRIDE");
479 if (driver)
480 return strdup(driver);
484 driver = loader_get_dri_config_driver(fd);
485 if (driver)
486 return driver;
489 driver = loader_get_pci_driver(fd);
490 if (!driver)
491 driver = loader_get_kernel_driver_name(fd);
493 return driver;
520 * Opens a driver or backend using its name, returning the library handle.
523 * \param lib_suffix - a suffix to append to the driver name to generate the
528 * \param warn_on_fail - Log a warning if the driver is not found.
551 void *driver = NULL;
564 driver = dlopen(path, RTLD_NOW | RTLD_GLOBAL);
566 if (driver == NULL) {
569 driver = dlopen(path, RTLD_NOW | RTLD_GLOBAL);
570 if (driver == NULL) {
576 /* not need continue to loop all paths once the driver is found */
577 if (driver != NULL)
581 if (driver == NULL) {
592 return driver;
596 * Opens a DRI driver using its driver name, returning the __DRIextension
612 void *driver = loader_open_driver_lib(driver_name, "_dri", search_path_vars,
615 if (!driver)
620 get_extensions = dlsym(driver, get_extensions_name);
624 log_(_LOADER_DEBUG, "MESA-LOADER: driver does not expose %s(): %s\n",
631 extensions = dlsym(driver, __DRI_DRIVER_EXTENSIONS);
634 "MESA-LOADER: driver exports no extensions (%s)\n", dlerror());
635 dlclose(driver);
636 driver = NULL;
640 *out_driver_handle = driver;