backend/drm: add wlr_drm_backend_monitor

This helper is responsible for listening for new DRM devices and
create new child DRM backends as necessary.
This commit is contained in:
Chris Chamberlain 2021-12-10 21:14:57 +01:00 committed by Simon Ser
parent f6d3efbf4b
commit d8ca494558
6 changed files with 128 additions and 3 deletions

View file

@ -0,0 +1,24 @@
#ifndef BACKEND_DRM_MONITOR_H
#define BACKEND_DRM_MONITOR_H
#include <wlr/backend/drm.h>
/**
* Helper to create new DRM sub-backends on GPU hotplug.
*/
struct wlr_drm_backend_monitor {
struct wlr_backend *multi;
struct wlr_backend *primary_drm;
struct wlr_session *session;
struct wl_listener multi_destroy;
struct wl_listener primary_drm_destroy;
struct wl_listener session_destroy;
struct wl_listener session_add_drm_card;
};
struct wlr_drm_backend_monitor *drm_backend_monitor_create(
struct wlr_backend *multi, struct wlr_backend *primary_drm,
struct wlr_session *session);
#endif