All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/colorop: Mark interpolation properties as immutable and atomic
@ 2026-03-27  0:39 Alex Hung
  2026-03-30 12:33 ` Melissa Wen
  0 siblings, 1 reply; 5+ messages in thread
From: Alex Hung @ 2026-03-27  0:39 UTC (permalink / raw)
  To: maarten.lankhorst, mripard, tzimmermann, airlied, simona, contact,
	harry.wentland, mwen, sebastian.wick, alex.hung, daniels,
	chaitanya.kumar.borah, dri-devel

LUT1D_INTERPOLATION and LUT3D_INTERPOLATION are read-only properties but
were missing DRM_MODE_PROP_IMMUTABLE and DRM_MODE_PROP_ATOMIC flags.

Add the correct flags and remove the now-unreachable set_property
handlers in drm_atomic_colorop_set_property().

Link: https://lore.kernel.org/amd-gfx/dbb27ec4-cdc6-4ead-9daf-664d97e86cd0@intel.com/
Fixes: 7fa3ee8c0a79 ("drm/colorop: Define LUT_1D interpolation")
Fixes: db971856bbe0 ("drm/colorop: Add 3D LUT support to color pipeline")
Suggested-by: Melissa Wen <mwen@igalia.com>
Suggested-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com>
Signed-off-by: Alex Hung <alex.hung@amd.com>
---
 drivers/gpu/drm/drm_atomic_uapi.c | 4 ----
 drivers/gpu/drm/drm_colorop.c     | 6 ++++--
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
index 713fa9e81732..e831894d5a51 100644
--- a/drivers/gpu/drm/drm_atomic_uapi.c
+++ b/drivers/gpu/drm/drm_atomic_uapi.c
@@ -758,8 +758,6 @@ static int drm_atomic_colorop_set_property(struct drm_colorop *colorop,
 			state->bypass = val;
 			*replaced = true;
 		}
-	} else if (property == colorop->lut1d_interpolation_property) {
-		colorop->lut1d_interpolation = val;
 	} else if (property == colorop->curve_1d_type_property) {
 		if (state->curve_1d_type != val) {
 			state->curve_1d_type = val;
@@ -770,8 +768,6 @@ static int drm_atomic_colorop_set_property(struct drm_colorop *colorop,
 			state->multiplier = val;
 			*replaced = true;
 		}
-	} else if (property == colorop->lut3d_interpolation_property) {
-		colorop->lut3d_interpolation = val;
 	} else if (property == colorop->data_property) {
 		return drm_atomic_color_set_data_property(colorop, state,
 							  property, val,
diff --git a/drivers/gpu/drm/drm_colorop.c b/drivers/gpu/drm/drm_colorop.c
index 398cc81ae588..34998f393f2e 100644
--- a/drivers/gpu/drm/drm_colorop.c
+++ b/drivers/gpu/drm/drm_colorop.c
@@ -317,7 +317,8 @@ int drm_plane_colorop_curve_1d_lut_init(struct drm_device *dev, struct drm_color
 	colorop->size = lut_size;
 
 	/* interpolation */
-	prop = drm_property_create_enum(dev, 0, "LUT1D_INTERPOLATION",
+	prop = drm_property_create_enum(dev, DRM_MODE_PROP_ATOMIC | DRM_MODE_PROP_IMMUTABLE,
+					"LUT1D_INTERPOLATION",
 					drm_colorop_lut1d_interpolation_list,
 					ARRAY_SIZE(drm_colorop_lut1d_interpolation_list));
 	if (!prop)
@@ -413,7 +414,8 @@ int drm_plane_colorop_3dlut_init(struct drm_device *dev, struct drm_colorop *col
 	colorop->size = lut_size;
 
 	/* interpolation */
-	prop = drm_property_create_enum(dev, 0, "LUT3D_INTERPOLATION",
+	prop = drm_property_create_enum(dev, DRM_MODE_PROP_ATOMIC | DRM_MODE_PROP_IMMUTABLE,
+					"LUT3D_INTERPOLATION",
 					drm_colorop_lut3d_interpolation_list,
 					ARRAY_SIZE(drm_colorop_lut3d_interpolation_list));
 	if (!prop)
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2026-04-02 11:00 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-27  0:39 [PATCH] drm/colorop: Mark interpolation properties as immutable and atomic Alex Hung
2026-03-30 12:33 ` Melissa Wen
2026-03-31 12:19   ` Pekka Paalanen
2026-04-02  0:53     ` Alex Hung
2026-04-02 11:00       ` Pekka Paalanen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.