summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime Ripard <mripard@kernel.org>2026-09-08 16:46:59 +0200
committerMaxime Ripard <mripard@kernel.org>2026-09-15 11:46:57 +0200
commit4699bb3b1dbd8ccd25cd678acb4ca12da7bd45dd (patch)
tree17d4037610b4ef43e63be39f0b0983a4fcbb1a90
parent325b30dfd9b56fd7dd57fad0071d95b453f10027 (diff)
downloadlinux-next-4699bb3b1dbd8ccd25cd678acb4ca12da7bd45dd.tar.gz
linux-next-4699bb3b1dbd8ccd25cd678acb4ca12da7bd45dd.zip
drm/atmel-hlcdc: Drop spurious csc_init call from reset
The lcdc_csc_init callback was introduced in commit aa71584b323a ("drm: atmel-hlcdc: add driver ops to differentiate HLCDC and XLCDC IP") and called only once, at init time, from atmel_hlcdc_plane_init_properties(). commit 81af99cbd9e4 ("drm/atmel-hlcdc: destroy properly the plane state in the reset callback") then reworked the reset hook to use atmel_hlcdc_plane_atomic_destroy_state() instead of duplicating the code. However, it also introduced a new call to lcdc_csc_init in the reset path that wasn't there before and wasn't mentioned in the commit log. Since CSC coefficients are hardware constants that only need to be written once at init time. This also prevents the conversion to atomic_create_state, which must not have any hardware side-effect. Fixes: 81af99cbd9e4 ("drm/atmel-hlcdc: destroy properly the plane state in the reset callback") Acked-by: Thomas Zimmermann <tzimmermann@suse.de> Link: https://patch.msgid.link/20260908-drm-no-more-plane-reset-v4-28-a31b3fcfc989@kernel.org Signed-off-by: Maxime Ripard <mripard@kernel.org>
-rw-r--r--drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c
index f17a832351e9..70a1cef24388 100644
--- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c
+++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_plane.c
@@ -1186,8 +1186,6 @@ static void atmel_hlcdc_plane_atomic_destroy_state(struct drm_plane *p,
static void atmel_hlcdc_plane_reset(struct drm_plane *p)
{
struct atmel_hlcdc_plane_state *state;
- struct atmel_hlcdc_dc *dc = p->dev->dev_private;
- struct atmel_hlcdc_plane *plane = drm_plane_to_atmel_hlcdc_plane(p);
if (p->state) {
atmel_hlcdc_plane_atomic_destroy_state(p, p->state);
@@ -1204,9 +1202,6 @@ static void atmel_hlcdc_plane_reset(struct drm_plane *p)
}
__drm_atomic_helper_plane_reset(p, &state->base);
}
-
- if (plane->layer.desc->layout.csc)
- dc->desc->ops->lcdc_csc_init(plane, plane->layer.desc);
}
static const struct drm_plane_funcs layer_plane_funcs = {