Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Arun R Murthy <arun.r.murthy@intel.com>
To: dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
	 intel-xe@lists.freedesktop.org
Cc: dmitry.baryshkov@linaro.org, suraj.kandpal@intel.com,
	 uma.shankar@intel.com,
	 "Imported from f20241218-dpst-v7-0-81bfe7d08c2d"@intel.com,
	 20240705091333.328322-1-mohammed.thasleem@intel.com,
	 Arun R Murthy <arun.r.murthy@intel.com>
Subject: [PATCH v7 00/14] Display Global Histogram
Date: Fri, 10 Jan 2025 01:15:28 +0530	[thread overview]
Message-ID: <20250110-dpst-v7-0-605cb0271162@intel.com> (raw)

EDITME: Imported from f20241218-dpst-v7-0-81bfe7d08c2d@intel.com
        Please review before sending.

Display histogram is a hardware functionality where a statistics for 'n'
number of frames is generated to form a histogram data. This is notified
to the user via histogram event. Compositor will then upon sensing the
histogram event will read the histogram data from KMD via crtc property.
User can use this histogram and apply various equilization techniques to
enhance the image or use this histogram for shaders.

Display ImageEnhancemenT is a hardware that interpolates the LUT value
to generate the enhanced output image. 1DLUT value is to be provided by
the user via crtc property.

One such library Global Histogram Enhancement(GHE) will take the histogram
as input and apply the algorithm to enhance the density and then
return the enhanced LUT factor. This library can be located @
https://github.com/intel/ghe

The corresponding mutter changes to enable/disable histogram, read the
histogram data, communicate with the library and write the enhanced data
back to the KMD is also pushed for review at https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3873
and https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3873/diffs?commit_id=270808ca7c8be48513553d95b4a47541f5d40206
The IGT changes for validating the histogram event and reading the
histogram is also pushed for review at https://patchwork.freedesktop.org/series/135789/

NOTE: i915 driver changes for histogram and IET LUT is not fully tested
and the series is pushed to get the inital feel of the histogram/IET LUT
usage as well as to get started with the review.

Test-with: 20240705091333.328322-1-mohammed.thasleem@intel.com

Arun R Murthy (10):
  drm/crtc: Add histogram properties
  drm/crtc: Expose API to create drm crtc property for histogram
  drm/i915/histogram: Define registers for histogram
  drm/i915/histogram: Add support for histogram
  drm/xe: Add histogram support to Xe builds
  drm/i915/histogram: histogram interrupt handling
  drm/i915/display: handle drm-crtc histogram property updates
  drm/i915/histogram: histogram delay counter doesnt reset
  drm/i915/histogram: Histogram changes for Display 20+
  drm/i915/histogram: Enable pipe dithering

 drivers/gpu/drm/drm_atomic_state_helper.c     |   6 +
 drivers/gpu/drm/drm_atomic_uapi.c             |  17 +
 drivers/gpu/drm/drm_crtc.c                    |  30 ++
 drivers/gpu/drm/i915/Makefile                 |   1 +
 drivers/gpu/drm/i915/display/intel_atomic.c   |   1 +
 drivers/gpu/drm/i915/display/intel_crtc.c     |   7 +
 drivers/gpu/drm/i915/display/intel_display.c  |  17 +
 .../gpu/drm/i915/display/intel_display_irq.c  |   6 +-
 .../drm/i915/display/intel_display_types.h    |   4 +
 .../gpu/drm/i915/display/intel_histogram.c    | 380 ++++++++++++++++++
 .../gpu/drm/i915/display/intel_histogram.h    |  40 ++
 .../drm/i915/display/intel_histogram_regs.h   |  75 ++++
 drivers/gpu/drm/i915/i915_reg.h               |   5 +-
 drivers/gpu/drm/xe/Makefile                   |   1 +
 include/drm/drm_crtc.h                        |  49 +++
 include/uapi/drm/drm_mode.h                   |  11 +
 16 files changed, 647 insertions(+), 3 deletions(-)
 create mode 100644 drivers/gpu/drm/i915/display/intel_histogram.c
 create mode 100644 drivers/gpu/drm/i915/display/intel_histogram.h
 create mode 100644 drivers/gpu/drm/i915/display/intel_histogram_regs.h

--
2.25.1

---
Arun R Murthy (4):
      drm: Define histogram structures exposed to user
      drm: Define ImageEnhancemenT LUT structures exposed to user
      drm/crtc: Expose API to create drm crtc property for histogram
      drm/crtc: Expose API to create drm crtc property for IET LUT

 drivers/gpu/drm/drm_atomic_state_helper.c |  23 +++++++
 drivers/gpu/drm/drm_atomic_uapi.c         |  28 ++++++++
 drivers/gpu/drm/drm_crtc.c                |  97 +++++++++++++++++++++++++++
 include/drm/drm_crtc.h                    |  77 ++++++++++++++++++++++
 include/uapi/drm/drm_mode.h               | 105 ++++++++++++++++++++++++++++++
 5 files changed, 330 insertions(+)
---
base-commit: 78526dfb8799485890dae3877fea308e9501879c
change-id: 20241218-dpst-c8ecf18062bb

Best regards,
--
Arun R Murthy <arun.r.murthy@intel.com>

---
Arun R Murthy (14):
      drm: Define histogram structures exposed to user
      drm: Define ImageEnhancemenT LUT structures exposed to user
      drm/crtc: Expose API to create drm crtc property for histogram
      drm/crtc: Expose API to create drm crtc property for IET LUT
      drm/i915/histogram: Define registers for histogram
      drm/i915/histogram: Add support for histogram
      drm/xe: Add histogram support to Xe builds
      drm/i915/histogram: histogram interrupt handling
      drm/i915/histogram: Hook i915 histogram with drm histogram
      drm/i915/iet: Add support to writing the IET LUT data
      drm/i915/crtc: Hook i915 IET LUT with the drm IET properties
      drm/i915/histogram: histogram delay counter doesnt reset
      drm/i915/histogram: Histogram changes for Display 20+
      drm/i915/histogram: Enable pipe dithering

 drivers/gpu/drm/drm_atomic_state_helper.c          |  23 ++
 drivers/gpu/drm/drm_atomic_uapi.c                  |  28 ++
 drivers/gpu/drm/drm_crtc.c                         | 127 +++++++
 drivers/gpu/drm/i915/Makefile                      |   1 +
 drivers/gpu/drm/i915/display/intel_crtc.c          |  10 +
 drivers/gpu/drm/i915/display/intel_display.c       |  14 +
 drivers/gpu/drm/i915/display/intel_display_irq.c   |   6 +-
 drivers/gpu/drm/i915/display/intel_display_types.h |   2 +
 drivers/gpu/drm/i915/display/intel_histogram.c     | 396 +++++++++++++++++++++
 drivers/gpu/drm/i915/display/intel_histogram.h     |  55 +++
 .../gpu/drm/i915/display/intel_histogram_regs.h    |  75 ++++
 drivers/gpu/drm/i915/i915_reg.h                    |   5 +-
 drivers/gpu/drm/xe/Makefile                        |   1 +
 include/drm/drm_crtc.h                             |  80 +++++
 include/uapi/drm/drm_mode.h                        | 109 ++++++
 15 files changed, 929 insertions(+), 3 deletions(-)
---
base-commit: 78526dfb8799485890dae3877fea308e9501879c
change-id: 20241218-dpst-c8ecf18062bb

Best regards,
-- 
Arun R Murthy <arun.r.murthy@intel.com>


             reply	other threads:[~2025-01-09 20:00 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-09 19:45 Arun R Murthy [this message]
2025-01-09 19:45 ` [PATCH v7 01/14] drm: Define histogram structures exposed to user Arun R Murthy
2025-01-15 19:44   ` Dmitry Baryshkov
2025-01-16  7:08     ` Murthy, Arun R
2025-01-16  7:42       ` Dmitry Baryshkov
2025-01-16 12:33         ` Murthy, Arun R
2025-01-16 13:12           ` Dmitry Baryshkov
2025-01-16 13:33             ` Murthy, Arun R
2025-01-16 13:39               ` Dmitry Baryshkov
2025-01-17  5:50                 ` Murthy, Arun R
2025-01-21  6:37                   ` Murthy, Arun R
2025-01-09 19:45 ` [PATCH v7 02/14] drm: Define ImageEnhancemenT LUT " Arun R Murthy
2025-01-15 19:55   ` Dmitry Baryshkov
2025-01-16  7:08     ` Murthy, Arun R
2025-01-16  7:26       ` Dmitry Baryshkov
2025-01-16 12:33         ` Murthy, Arun R
2025-01-16 13:12           ` Dmitry Baryshkov
2025-01-16 13:33             ` Murthy, Arun R
2025-01-09 19:45 ` [PATCH v7 03/14] drm/crtc: Expose API to create drm crtc property for histogram Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 04/14] drm/crtc: Expose API to create drm crtc property for IET LUT Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 05/14] drm/i915/histogram: Define registers for histogram Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 06/14] drm/i915/histogram: Add support " Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 07/14] drm/xe: Add histogram support to Xe builds Arun R Murthy
2025-01-16  1:37   ` Dmitry Baryshkov
2025-01-16  7:08     ` Murthy, Arun R
2025-01-16  7:14       ` Dmitry Baryshkov
2025-01-09 19:45 ` [PATCH v7 08/14] drm/i915/histogram: histogram interrupt handling Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 09/14] drm/i915/histogram: Hook i915 histogram with drm histogram Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 10/14] drm/i915/iet: Add support to writing the IET LUT data Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 11/14] drm/i915/crtc: Hook i915 IET LUT with the drm IET properties Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 12/14] drm/i915/histogram: histogram delay counter doesnt reset Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 13/14] drm/i915/histogram: Histogram changes for Display 20+ Arun R Murthy
2025-01-09 19:45 ` [PATCH v7 14/14] drm/i915/histogram: Enable pipe dithering Arun R Murthy
2025-01-10  5:58   ` Kandpal, Suraj
2025-01-09 22:33 ` ✗ CI.Patch_applied: failure for Display Global Histogram (rev8) Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250110-dpst-v7-0-605cb0271162@intel.com \
    --to=arun.r.murthy@intel.com \
    --cc="Imported from f20241218-dpst-v7-0-81bfe7d08c2d"@intel.com \
    --cc=20240705091333.328322-1-mohammed.thasleem@intel.com \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=suraj.kandpal@intel.com \
    --cc=uma.shankar@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox