diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/backend/drm/drm.h | 2 | ||||
-rw-r--r-- | include/backend/drm/properties.h | 3 | ||||
-rw-r--r-- | include/wlr/render/drm_format_set.h | 3 |
3 files changed, 7 insertions, 1 deletions
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h index 6481f085..ba08449a 100644 --- a/include/backend/drm/drm.h +++ b/include/backend/drm/drm.h @@ -11,6 +11,7 @@ #include <wayland-util.h> #include <wlr/backend/drm.h> #include <wlr/backend/session.h> +#include <wlr/render/drm_format_set.h> #include <wlr/render/egl.h> #include <xf86drmMode.h> #include "iface.h" @@ -27,6 +28,7 @@ struct wlr_drm_plane { struct wlr_drm_surface mgpu_surf; uint32_t drm_format; // ARGB8888 or XRGB8888 + struct wlr_drm_format_set formats; // Only used by cursor float matrix[9]; diff --git a/include/backend/drm/properties.h b/include/backend/drm/properties.h index b4d43bdd..28f0dbe4 100644 --- a/include/backend/drm/properties.h +++ b/include/backend/drm/properties.h @@ -44,6 +44,7 @@ union wlr_drm_plane_props { struct { uint32_t type; uint32_t rotation; // Not guaranteed to exist + uint32_t in_formats; // Not guaranteed to exist // atomic-modesetting only @@ -58,7 +59,7 @@ union wlr_drm_plane_props { uint32_t fb_id; uint32_t crtc_id; }; - uint32_t props[12]; + uint32_t props[13]; }; bool get_drm_connector_props(int fd, uint32_t id, diff --git a/include/wlr/render/drm_format_set.h b/include/wlr/render/drm_format_set.h index 588914ae..15d4eea3 100644 --- a/include/wlr/render/drm_format_set.h +++ b/include/wlr/render/drm_format_set.h @@ -21,6 +21,9 @@ void wlr_drm_format_set_finish(struct wlr_drm_format_set *set); const struct wlr_drm_format *wlr_drm_format_set_get( const struct wlr_drm_format_set *set, uint32_t format); +bool wlr_drm_format_set_has(const struct wlr_drm_format_set *set, + uint32_t format, uint64_t modifier); + bool wlr_drm_format_set_add(struct wlr_drm_format_set *set, uint32_t format, uint64_t modifier); |