Hello Harry, Sunpeng We have added a new drm crtc property to expose the sharpness strength which user can use to set the value of sharpness from 0 - 255.
Can you please let us know if this implementation looks good to you? If so, kindly provide an Ack. Got ack from Xaver Hugl. Thanks and Regards, Nemesa > -----Original Message----- > From: Garg, Nemesa <nemesa.g...@intel.com> > Sent: Thursday, July 24, 2025 7:16 PM > To: intel-gfx@lists.freedesktop.org; dri-de...@lists.freedesktop.org; intel- > x...@lists.freedesktop.org > Cc: Garg, Nemesa <nemesa.g...@intel.com> > Subject: [PATCH 00/10] Introduce drm sharpness property > > Many a times images are blurred or upscaled content is also not as > crisp as > original rendered image. Traditional sharpening techniques often apply a > uniform level of enhancement across entire image, which sometimes result in > over-sharpening of some areas and potential loss of natural details. > > Intel has come up with Display Engine based adaptive sharpening filter with > minimal power and performance impact. From LNL onwards, the Display > hardware can use one of the pipe scaler for adaptive sharpness filter. > This can be used for both gaming and non-gaming use cases like photos, > image viewing. It works on a region of pixels depending on the tap size. > > This is an attempt to introduce an adaptive sharpness solution which helps in > improving the image quality. For this new CRTC property is added. > The user can set this property with desired sharpness strength value with 0- > 255. A value of 1 representing minimum sharpening strength and 255 > representing maximum sharpness strength. A strength value of 0 means no > sharpening or sharpening feature disabled. > It works on a region of pixels depending on the tap size. The coefficients are > used to generate an alpha value which is used to blend the sharpened image > to original image. > > Middleware MR link: https://gitlab.gnome.org/GNOME/mutter/- > /merge_requests/3665 > IGT patchwork link: https://patchwork.freedesktop.org/series/130218/ > > Continuing discussions from: > https://patchwork.freedesktop.org/series/129888/ > > Nemesa Garg (10): > drm/drm-crtc: Introduce sharpness strength property > drm/i915/display: Introduce HAS_CASF for sharpness support > drm/i915/display: Add strength and winsize register > drm/i915/display: Add filter lut values > drm/i915/display: Compute the scaler coefficients > drm/i915/display: Add and compute scaler parameter > drm/i915/display: Configure the second scaler > drm/i915/display: Set and get the casf config > drm/i915/display: Enable/disable casf > drm/i915/display: Expose sharpness strength property > > drivers/gpu/drm/drm_atomic_uapi.c | 4 + > drivers/gpu/drm/drm_crtc.c | 35 +++ > drivers/gpu/drm/i915/Makefile | 1 + > drivers/gpu/drm/i915/display/intel_casf.c | 293 ++++++++++++++++++ > drivers/gpu/drm/i915/display/intel_casf.h | 24 ++ > .../gpu/drm/i915/display/intel_casf_regs.h | 33 ++ > drivers/gpu/drm/i915/display/intel_crtc.c | 3 + > .../drm/i915/display/intel_crtc_state_dump.c | 7 + > drivers/gpu/drm/i915/display/intel_display.c | 37 ++- > .../drm/i915/display/intel_display_device.h | 1 + > .../drm/i915/display/intel_display_types.h | 15 + > drivers/gpu/drm/i915/display/skl_scaler.c | 90 +++++- > drivers/gpu/drm/i915/display/skl_scaler.h | 1 + > drivers/gpu/drm/xe/Makefile | 1 + > include/drm/drm_crtc.h | 17 + > 15 files changed, 549 insertions(+), 13 deletions(-) create mode 100644 > drivers/gpu/drm/i915/display/intel_casf.c > create mode 100644 drivers/gpu/drm/i915/display/intel_casf.h > create mode 100644 drivers/gpu/drm/i915/display/intel_casf_regs.h > > -- > 2.25.1