diff options
author | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2015-02-23 03:36:31 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> | 2015-03-03 17:16:23 +0300 |
commit | 4407cc02c9251b0ce6bad3718211353a7dba93ef (patch) | |
tree | 63bf492797632e4d679aae3fd75bf9d66c4f3197 /drivers/gpu/drm/rcar-du/rcar_du_plane.h | |
parent | d5746642f480c134e8e76a3104b987c08f790283 (diff) | |
download | linux-4407cc02c9251b0ce6bad3718211353a7dba93ef.tar.xz |
drm: rcar-du: Switch plane set_property to atomic helpers
Allow setting up plane properties atomically using the plane
set_property atomic helper. The properties are now stored in the plane
state (requiring subclassing it) and applied when updating the planes.
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Diffstat (limited to 'drivers/gpu/drm/rcar-du/rcar_du_plane.h')
-rw-r--r-- | drivers/gpu/drm/rcar-du/rcar_du_plane.h | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/drivers/gpu/drm/rcar-du/rcar_du_plane.h b/drivers/gpu/drm/rcar-du/rcar_du_plane.h index 9b77a638863f..d291e85896ef 100644 --- a/drivers/gpu/drm/rcar-du/rcar_du_plane.h +++ b/drivers/gpu/drm/rcar-du/rcar_du_plane.h @@ -39,9 +39,6 @@ struct rcar_du_plane { bool enabled; int hwindex; /* 0-based, -1 means unused */ - unsigned int alpha; - unsigned int colorkey; - unsigned int zpos; const struct rcar_du_format_info *format; @@ -59,6 +56,20 @@ struct rcar_du_planes { struct drm_property *zpos; }; +struct rcar_du_plane_state { + struct drm_plane_state state; + + unsigned int alpha; + unsigned int colorkey; + unsigned int zpos; +}; + +static inline struct rcar_du_plane_state * +to_rcar_du_plane_state(struct drm_plane_state *state) +{ + return container_of(state, struct rcar_du_plane_state, state); +} + int rcar_du_planes_init(struct rcar_du_group *rgrp); void rcar_du_plane_setup(struct rcar_du_plane *plane); |