[PATCH 5.4 084/214] gpu/drm: ingenic: Use the planes src_[x,y] to configure DMA length
From: Greg Kroah-Hartman
Date: Tue Sep 01 2020 - 12:27:48 EST
From: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
[ Upstream commit 52e4607dace1eeeb2e012fca291dc4e6cb449bff ]
Instead of obtaining the width/height of the framebuffer from the CRTC
state, obtain it from the current plane state.
v2: No change
Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx>
Link: https://patchwork.freedesktop.org/patch/msgid/20191210144142.33143-3-paul@xxxxxxxxxxxxxxx
# *** extracted tags ***
Acked-by: Sam Ravnborg <sam@xxxxxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
drivers/gpu/drm/ingenic/ingenic-drm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/ingenic/ingenic-drm.c b/drivers/gpu/drm/ingenic/ingenic-drm.c
index 376fca6ca9f47..e746b3a6f7cbc 100644
--- a/drivers/gpu/drm/ingenic/ingenic-drm.c
+++ b/drivers/gpu/drm/ingenic/ingenic-drm.c
@@ -375,8 +375,8 @@ static void ingenic_drm_plane_atomic_update(struct drm_plane *plane,
if (state && state->fb) {
addr = drm_fb_cma_get_gem_addr(state->fb, state, 0);
- width = state->crtc->state->adjusted_mode.hdisplay;
- height = state->crtc->state->adjusted_mode.vdisplay;
+ width = state->src_w >> 16;
+ height = state->src_h >> 16;
cpp = state->fb->format->cpp[plane->index];
priv->dma_hwdesc->addr = addr;
--
2.25.1