mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-03-05 01:41:03 -05:00
Revert "backend/drm: fetch EDID manufacturer from udev_hwdb"
This reverts commit e646d882cf.
This commit has added a dependency on udev_hwdb. This API isn't
available on all platforms (e.g. FreeBSD), and further deepens
our udev dependency. A better solution is being worked on in [1].
[1]: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/3638
This commit is contained in:
parent
4152db92ef
commit
d75b4d8e86
3 changed files with 74 additions and 56 deletions
|
|
@ -1,7 +1,6 @@
|
|||
#include <assert.h>
|
||||
#include <errno.h>
|
||||
#include <drm_fourcc.h>
|
||||
#include <libudev.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
|
@ -58,7 +57,6 @@ static void backend_destroy(struct wlr_backend *backend) {
|
|||
|
||||
finish_drm_resources(drm);
|
||||
|
||||
udev_hwdb_unref(drm->hwdb);
|
||||
free(drm->name);
|
||||
wlr_session_close_file(drm->session, drm->dev);
|
||||
wl_event_source_remove(drm->drm_event);
|
||||
|
|
@ -176,23 +174,6 @@ static void handle_parent_destroy(struct wl_listener *listener, void *data) {
|
|||
backend_destroy(&drm->backend);
|
||||
}
|
||||
|
||||
static struct udev_hwdb *create_udev_hwdb(void) {
|
||||
struct udev *udev = udev_new();
|
||||
if (!udev) {
|
||||
wlr_log(WLR_ERROR, "udev_new failed");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct udev_hwdb *hwdb = udev_hwdb_new(udev);
|
||||
udev_unref(udev);
|
||||
if (!hwdb) {
|
||||
wlr_log(WLR_ERROR, "udev_hwdb_new failed");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return hwdb;
|
||||
}
|
||||
|
||||
struct wlr_backend *wlr_drm_backend_create(struct wl_display *display,
|
||||
struct wlr_session *session, struct wlr_device *dev,
|
||||
struct wlr_backend *parent) {
|
||||
|
|
@ -247,12 +228,6 @@ struct wlr_backend *wlr_drm_backend_create(struct wl_display *display,
|
|||
drm->session_active.notify = handle_session_active;
|
||||
wl_signal_add(&session->events.active, &drm->session_active);
|
||||
|
||||
drm->hwdb = create_udev_hwdb();
|
||||
if (!drm->hwdb) {
|
||||
wlr_log(WLR_INFO, "Failed to load udev_hwdb, "
|
||||
"falling back to PnP IDs instead of manufacturer names");
|
||||
}
|
||||
|
||||
if (!check_drm_features(drm)) {
|
||||
goto error_event;
|
||||
}
|
||||
|
|
@ -304,7 +279,6 @@ error_mgpu_renderer:
|
|||
error_resources:
|
||||
finish_drm_resources(drm);
|
||||
error_event:
|
||||
udev_hwdb_unref(drm->hwdb);
|
||||
wl_list_remove(&drm->session_active.link);
|
||||
wl_event_source_remove(drm->drm_event);
|
||||
error_fd:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue