[PATCH v7 0/4] Introduce drm scaling filter property

Jani Nikula jani.nikula at linux.intel.com
Wed Oct 21 09:44:03 UTC 2020


On Tue, 20 Oct 2020, Pankaj Bharadiya <pankaj.laxminarayan.bharadiya at intel.com> wrote:
> Kodi patches are reviewed and accepted for merge now.
>
> Here is the userspace patch series link:
> https://github.com/xbmc/xbmc/pull/18567
>
> Background on Integer scaling:
>
> Integer scaling (IS) is a nearest-neighbor upscaling technique that
> simply scales up the existing pixels by an integer (i.e., whole
> number) multiplier. Nearest-neighbor (NN) interpolation works by
> filling in the missing color values in the upscaled image with that of
> the coordinate-mapped nearest source pixel value.
>
> Both IS and NN preserve the clarity of the original image. In
> contrast, traditional upscaling algorithms, such as bilinear or
> bicubic interpolation, result in blurry upscaled images because they
> employ interpolation techniques that smooth out the transition from
> one pixel to another.  Therefore, integer scaling is particularly
> useful for pixel art games that rely on sharp, blocky images to
> deliver their distinctive look.
>
> Many gaming communities have been asking for integer-mode scaling
> support, some links and background:
>
> https://software.intel.com/en-us/articles/integer-scaling-support-on-intel-graphics
> http://tanalin.com/en/articles/lossless-scaling/
> https://community.amd.com/thread/209107
> https://www.nvidia.com/en-us/geforce/forums/game-ready-drivers/13/1002/feature-request-nonblurry-upscaling-at-integer-rat/

Thanks for the patches and review, pushed to dinq with Daniel's IRC ack
to merge via drm-intel.

BR,
Jani.


>
> changes since v6:
> * Move property doc to existing "Standard CRTC Properties" and
>   "Plane Composition Properties" doc comments (Simon)
> * Drop 0002 patch
>
> Pankaj Bharadiya (4):
>   drm: Introduce plane and CRTC scaling filter properties
>   drm/i915: Introduce scaling filter related registers and bit fields
>   drm/i915/display: Add Nearest-neighbor based integer scaling support
>   drm/i915: Enable scaling filter for plane and CRTC
>
>  drivers/gpu/drm/drm_atomic_uapi.c             |   8 ++
>  drivers/gpu/drm/drm_blend.c                   |  13 ++
>  drivers/gpu/drm/drm_crtc.c                    |  40 ++++++
>  drivers/gpu/drm/drm_crtc_internal.h           |   3 +
>  drivers/gpu/drm/drm_plane.c                   |  73 +++++++++++
>  .../gpu/drm/i915/display/intel_atomic_plane.c |   1 +
>  drivers/gpu/drm/i915/display/intel_display.c  | 117 +++++++++++++++++-
>  drivers/gpu/drm/i915/display/intel_display.h  |   4 +
>  .../drm/i915/display/intel_display_types.h    |   2 +
>  drivers/gpu/drm/i915/display/intel_sprite.c   |  15 ++-
>  drivers/gpu/drm/i915/i915_reg.h               |  22 ++++
>  include/drm/drm_crtc.h                        |  16 +++
>  include/drm/drm_plane.h                       |  21 ++++
>  13 files changed, 331 insertions(+), 4 deletions(-)

-- 
Jani Nikula, Intel Open Source Graphics Center


More information about the dri-devel mailing list