mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-10-31 22:25:21 -04:00
backend/drm: add libliftoff interface
This commit is contained in:
parent
b4e9487312
commit
9d43e7e4d6
11 changed files with 415 additions and 3 deletions
|
|
@ -30,11 +30,16 @@ struct wlr_drm_plane {
|
|||
struct wlr_drm_format_set formats;
|
||||
|
||||
union wlr_drm_plane_props props;
|
||||
|
||||
uint32_t initial_crtc_id;
|
||||
struct liftoff_plane *liftoff;
|
||||
struct liftoff_layer *liftoff_layer;
|
||||
};
|
||||
|
||||
struct wlr_drm_crtc {
|
||||
uint32_t id;
|
||||
struct wlr_drm_lease *lease;
|
||||
struct liftoff_output *liftoff;
|
||||
|
||||
// Atomic modesetting only
|
||||
uint32_t mode_id;
|
||||
|
|
@ -60,6 +65,7 @@ struct wlr_drm_backend {
|
|||
int fd;
|
||||
char *name;
|
||||
struct wlr_device *dev;
|
||||
struct liftoff_device *liftoff;
|
||||
|
||||
size_t num_crtcs;
|
||||
struct wlr_drm_crtc *crtcs;
|
||||
|
|
|
|||
|
|
@ -13,6 +13,8 @@ struct wlr_drm_connector_state;
|
|||
|
||||
// Used to provide atomic or legacy DRM functions
|
||||
struct wlr_drm_interface {
|
||||
bool (*init)(struct wlr_drm_backend *drm);
|
||||
void (*finish)(struct wlr_drm_backend *drm);
|
||||
// Commit all pending changes on a CRTC.
|
||||
bool (*crtc_commit)(struct wlr_drm_connector *conn,
|
||||
const struct wlr_drm_connector_state *state, uint32_t flags,
|
||||
|
|
@ -21,8 +23,15 @@ struct wlr_drm_interface {
|
|||
|
||||
extern const struct wlr_drm_interface atomic_iface;
|
||||
extern const struct wlr_drm_interface legacy_iface;
|
||||
extern const struct wlr_drm_interface liftoff_iface;
|
||||
|
||||
bool drm_legacy_crtc_set_gamma(struct wlr_drm_backend *drm,
|
||||
struct wlr_drm_crtc *crtc, size_t size, uint16_t *lut);
|
||||
|
||||
bool create_mode_blob(struct wlr_drm_backend *drm,
|
||||
struct wlr_drm_connector *conn,
|
||||
const struct wlr_drm_connector_state *state, uint32_t *blob_id);
|
||||
bool create_gamma_lut_blob(struct wlr_drm_backend *drm,
|
||||
size_t size, const uint16_t *lut, uint32_t *blob_id);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue