Properties are uapi like anything else, with all the usual rules
regarding review, testcases, open source userspace ... Furthermore
driver-private kms properties are highly discouraged, over the past
few years we've realized we need to make a serious effort at better
standardizing this stuff.

Again this probably needs multiple pieces to solve this properly:

- Instead of expecting userspace to compute this (and duplicating
  modeset code), the kernel driver should compute when it's possible
  to enable this better up/downscale mode (assuming I understood
  Liviu correctly on what this does) automatically.

- If this is needed for validation then you want a debugfs file to
  force this one way or the other, or alternatively  use
  ->atomic_print_state to dump such hidden driver-private state.
  Depends upon how you do your validation ofc.

Fixes: 42b6f118f6d1 ("drm/komeda: Add image enhancement support")
Cc: Lowry Li (Arm Technology China) <lowry...@arm.com>
Cc: James Qian Wang (Arm Technology China) <james.qian.w...@arm.com>
Cc: Liviu Dudau <liviu.du...@arm.com>
Cc: Mali DP Maintainers <mal...@foss.arm.com>
Cc: Brian Starkey <brian.star...@arm.com>
Signed-off-by: Daniel Vetter <daniel.vet...@intel.com>
---
 .../gpu/drm/arm/display/komeda/komeda_kms.h   |  2 --
 .../gpu/drm/arm/display/komeda/komeda_plane.c | 19 ++-----------------
 2 files changed, 2 insertions(+), 19 deletions(-)

diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_kms.h 
b/drivers/gpu/drm/arm/display/komeda/komeda_kms.h
index c545cb963d40..fb2adc233760 100644
--- a/drivers/gpu/drm/arm/display/komeda/komeda_kms.h
+++ b/drivers/gpu/drm/arm/display/komeda/komeda_kms.h
@@ -34,8 +34,6 @@ struct komeda_plane {
         */
        struct komeda_layer *layer;
 
-       /** @prop_img_enhancement: for on/off image enhancement */
-       struct drm_property *prop_img_enhancement;
        /** @prop_layer_split: for on/off layer_split */
        struct drm_property *prop_layer_split;
 };
diff --git a/drivers/gpu/drm/arm/display/komeda/komeda_plane.c 
b/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
index 04b122f28fb6..23db38650a46 100644
--- a/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
+++ b/drivers/gpu/drm/arm/display/komeda/komeda_plane.c
@@ -197,9 +197,7 @@ komeda_plane_atomic_get_property(struct drm_plane *plane,
        struct komeda_plane *kplane = to_kplane(plane);
        struct komeda_plane_state *st = to_kplane_st(state);
 
-       if (property == kplane->prop_img_enhancement)
-               *val = st->img_enhancement;
-       else if (property == kplane->prop_layer_split)
+       if (property == kplane->prop_layer_split)
                *val = st->layer_split;
        else
                return -EINVAL;
@@ -216,9 +214,7 @@ komeda_plane_atomic_set_property(struct drm_plane *plane,
        struct komeda_plane *kplane = to_kplane(plane);
        struct komeda_plane_state *st = to_kplane_st(state);
 
-       if (property == kplane->prop_img_enhancement)
-               st->img_enhancement = !!val;
-       else if (property == kplane->prop_layer_split)
+       if (property == kplane->prop_layer_split)
                st->layer_split = !!val;
        else
                return -EINVAL;
@@ -258,17 +254,6 @@ komeda_plane_create_layer_properties(struct komeda_plane 
*kplane,
        struct drm_plane *plane = &kplane->base;
        struct drm_property *prop = NULL;
 
-       /* property: layer image_enhancement */
-       if (layer->base.supported_outputs & KOMEDA_PIPELINE_SCALERS) {
-               prop = drm_property_create_bool(drm, DRM_MODE_PROP_ATOMIC,
-                                               "img_enhancement");
-               if (!prop)
-                       return -ENOMEM;
-
-               drm_object_attach_property(&plane->base, prop, 0);
-               kplane->prop_img_enhancement = prop;
-       }
-
        /* property: layer split */
        if (layer->right) {
                prop = drm_property_create_bool(drm, DRM_MODE_PROP_ATOMIC,
-- 
2.20.1

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to