Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH] drm/i915: Check EDID before dpcd for possible HDR aux bl support
@ 2022-04-12  5:25 Jouni Högander
  2022-04-12  7:00 ` Jani Nikula
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: Jouni Högander @ 2022-04-12  5:25 UTC (permalink / raw)
  To: intel-gfx; +Cc: Jani Nikula, Filippo Falezza

We have now seen panel (XMG Core 15 e21 laptop) avertizing support
for Intel proprietary eDP backlight control via DPCD registers, but
actually working only with legacy pwm control.

This patch adds panel EDID check for possible HDR static metadata and
does detection from DPCD registers only if this data block exists.

Fixes: 4a8d79901d5b ("drm/i915/dp: Enable Intel's HDR backlight interface (only SDR for now)")
Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/5284
Cc: Lyude Paul <lyude@redhat.com>
Cc: Mika Kahola <mika.kahola@intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Tested-by: Filippo Falezza <filippo.falezza@outlook.it>
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
 .../gpu/drm/i915/display/intel_dp_aux_backlight.c   | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
index 97cf3cac0105..f69e185b58c1 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -108,6 +108,19 @@ intel_dp_aux_supports_hdr_backlight(struct intel_connector *connector)
 	int ret;
 	u8 tcon_cap[4];
 
+	/*
+	 * If we don't have HDR static metadata there is no way to
+	 * runtime detect used range for nits based control. For now
+	 * do not use Intel proprietary eDP backlight control if we
+	 * don't have this data in panel EDID. In case we find panel
+	 * which supports only nits based control, but doesn't provide
+	 * HDR static metadata we need to start maintaining table of
+	 * ranges for such panels.
+	 */
+	if (!(connector->base.hdr_sink_metadata.hdmi_type1.metadata_type &
+	      BIT(HDMI_STATIC_METADATA_TYPE1)))
+		return false;
+
 	intel_dp_wait_source_oui(intel_dp);
 
 	ret = drm_dp_dpcd_read(aux, INTEL_EDP_HDR_TCON_CAP0, tcon_cap, sizeof(tcon_cap));
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2022-04-14 11:22 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-12  5:25 [Intel-gfx] [PATCH] drm/i915: Check EDID before dpcd for possible HDR aux bl support Jouni Högander
2022-04-12  7:00 ` Jani Nikula
2022-04-12  8:02 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2022-04-12  8:02 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2022-04-12  8:02 ` [Intel-gfx] ✗ Fi.CI.DOCS: " Patchwork
2022-04-12  8:28 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2022-04-12 12:43 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for drm/i915: Check EDID before dpcd for possible HDR aux bl support (rev2) Patchwork
2022-04-12 17:50 ` [Intel-gfx] [PATCH] drm/i915: Check EDID before dpcd for possible HDR aux bl support Lyude Paul
2022-04-13  8:31   ` Hogander, Jouni
2022-04-13 21:08     ` Lyude Paul
2022-04-14 11:22       ` Hogander, Jouni

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox