drm/armada: move plane address and pitch calculation to atomic_check
Move the plane address and pitch calculations to atomic_check rather than the update function, so we don't have to probe the interlace setting for the CRTC while updating the plane. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
This commit is contained in:
@@ -6,6 +6,9 @@ struct armada_plane_state {
|
||||
u32 src_hw;
|
||||
u32 dst_yx;
|
||||
u32 dst_hw;
|
||||
u32 addrs[2][3];
|
||||
u16 pitches[3];
|
||||
bool interlace;
|
||||
};
|
||||
|
||||
#define to_armada_plane_state(st) \
|
||||
@@ -13,6 +16,8 @@ struct armada_plane_state {
|
||||
#define armada_src_hw(state) to_armada_plane_state(state)->src_hw
|
||||
#define armada_dst_yx(state) to_armada_plane_state(state)->dst_yx
|
||||
#define armada_dst_hw(state) to_armada_plane_state(state)->dst_hw
|
||||
#define armada_addr(state, f, p) to_armada_plane_state(state)->addrs[f][p]
|
||||
#define armada_pitch(state, n) to_armada_plane_state(state)->pitches[n]
|
||||
|
||||
void armada_drm_plane_calc(struct drm_plane_state *state, u32 addrs[2][3],
|
||||
u16 pitches[3], bool interlaced);
|
||||
|
Reference in New Issue
Block a user