[PATCH 00/10] Introduce drm sharpness property
Garg, Nemesa
nemesa.garg at intel.com
Mon Jul 28 11:42:58 UTC 2025
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.garg at intel.com>
> Sent: Thursday, July 24, 2025 7:16 PM
> To: intel-gfx at lists.freedesktop.org; dri-devel at lists.freedesktop.org; intel-
> xe at lists.freedesktop.org
> Cc: Garg, Nemesa <nemesa.garg at 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
More information about the Intel-gfx
mailing list