mirror of
https://github.com/hyprwm/wlroots-hyprland.git
synced 2024-11-22 04:45:58 +01:00
backend/drm: add wlr_drm_backend_get_parent()
Allows compositors to figure out whether a DRM backend is secondary on a multi-GPU setup.
This commit is contained in:
parent
3531007b75
commit
fc7a0b93dd
2 changed files with 10 additions and 0 deletions
|
@ -96,6 +96,11 @@ bool wlr_backend_is_drm(struct wlr_backend *b) {
|
||||||
return b->impl == &backend_impl;
|
return b->impl == &backend_impl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
struct wlr_backend *wlr_drm_backend_get_parent(struct wlr_backend *backend) {
|
||||||
|
struct wlr_drm_backend *drm = get_drm_backend_from_backend(backend);
|
||||||
|
return drm->parent ? &drm->parent->backend : NULL;
|
||||||
|
}
|
||||||
|
|
||||||
static void handle_session_active(struct wl_listener *listener, void *data) {
|
static void handle_session_active(struct wl_listener *listener, void *data) {
|
||||||
struct wlr_drm_backend *drm =
|
struct wlr_drm_backend *drm =
|
||||||
wl_container_of(listener, drm, session_active);
|
wl_container_of(listener, drm, session_active);
|
||||||
|
|
|
@ -43,6 +43,11 @@ struct wlr_backend *wlr_drm_backend_create(struct wl_display *display,
|
||||||
bool wlr_backend_is_drm(struct wlr_backend *backend);
|
bool wlr_backend_is_drm(struct wlr_backend *backend);
|
||||||
bool wlr_output_is_drm(struct wlr_output *output);
|
bool wlr_output_is_drm(struct wlr_output *output);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the parent DRM backend, if any.
|
||||||
|
*/
|
||||||
|
struct wlr_backend *wlr_drm_backend_get_parent(struct wlr_backend *backend);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the KMS connector object ID.
|
* Get the KMS connector object ID.
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue