Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Suraj Kandpal <suraj.kandpal@intel.com>
To: intel-xe@lists.freedesktop.org, intel-gfx@lists.freedesktop.org
Cc: ankit.k.nautiyal@intel.com, arun.r.murthy@intel.com,
	Suraj Kandpal <suraj.kandpal@intel.com>
Subject: [PATCH 8/8] drm/i915/backlight: Avoid 0 brightness for INTEL AUX HDR backlight
Date: Fri, 13 Feb 2026 14:46:53 +0530	[thread overview]
Message-ID: <20260213091653.2250887-9-suraj.kandpal@intel.com> (raw)
In-Reply-To: <20260213091653.2250887-1-suraj.kandpal@intel.com>

Whenever the minimum brightness is reported as 0 there are chances
we maybe sometimes end up with blank screen. This confuses the user
into thinking the display is acting weird. This occurs in eDP 1.4b
when we use proprietary INTEL AUX HDR DPCD registers to mainupate
brightness via luminance values. Make sure if minimum luminance
range is 0 we program it to 10% of max luminance range.

Signed-off-by: Suraj Kandpal <suraj.kandpal@intel.com>
---
 .../gpu/drm/i915/display/intel_dp_aux_backlight.c   | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

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 8f86b368612e..cf53759c2860 100644
--- a/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
+++ b/drivers/gpu/drm/i915/display/intel_dp_aux_backlight.c
@@ -178,6 +178,7 @@ intel_dp_aux_hdr_get_backlight(struct intel_connector *connector, enum pipe pipe
 	struct intel_dp *intel_dp = enc_to_intel_dp(connector->encoder);
 	u8 tmp;
 	u8 buf[2] = {};
+	u32 level;
 
 	if (drm_dp_dpcd_readb(&intel_dp->aux, INTEL_EDP_HDR_GETSET_CTRL_PARAMS, &tmp) != 1) {
 		drm_err(display->drm,
@@ -205,7 +206,10 @@ intel_dp_aux_hdr_get_backlight(struct intel_connector *connector, enum pipe pipe
 		return 0;
 	}
 
-	return (buf[1] << 8 | buf[0]);
+	level = (buf[1] << 8 | buf[0]);
+	if (!level)
+		return panel->backlight.min;
+	return level;
 }
 
 static void
@@ -427,10 +431,13 @@ intel_dp_aux_hdr_setup_backlight(struct intel_connector *connector, enum pipe pi
 
 	if (luminance_range->max_luminance) {
 		panel->backlight.max = luminance_range->max_luminance;
-		panel->backlight.min = luminance_range->min_luminance;
+		if (luminance_range->min_luminance)
+			panel->backlight.min = luminance_range->min_luminance;
+		else
+			panel->backlight.min = (luminance_range->max_luminance * 10) / 100;
 	} else {
 		panel->backlight.max = 512;
-		panel->backlight.min = 0;
+		panel->backlight.min = 51;
 	}
 
 	intel_dp_aux_write_panel_luminance_override(connector);
-- 
2.34.1


  parent reply	other threads:[~2026-02-13  9:17 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-13  9:16 [PATCH 0/8] Fixes and updates when using AUX backlight using Luminance Suraj Kandpal
2026-02-13  9:16 ` [PATCH 1/8] drm/i915/backlight: Avoid 0 brightness for VESA AUX backlight Suraj Kandpal
2026-02-18  8:35   ` Murthy, Arun R
2026-02-13  9:16 ` [PATCH 2/8] drm/i915/backlight: Use intel_panel variable instead of intel_connector Suraj Kandpal
2026-02-13  9:16 ` [PATCH 3/8] drm/i915/backlight: Take luminance_set into account for VESA backlight Suraj Kandpal
2026-02-13  9:16 ` [PATCH 4/8] drm/i915/backlight: Check luminance_set when disabling PWM via AUX " Suraj Kandpal
2026-02-13  9:16 ` [PATCH 5/8] drm/i915/backlight: Short circuit intel_dp_aux_supports_hdr_backlight Suraj Kandpal
2026-02-13  9:16 ` [PATCH 6/8] drm/i915/backlight: Update debug log during backlight setup Suraj Kandpal
2026-02-13  9:16 ` [PATCH 7/8] drm/i915/backlight: Provide clear description on how backlight level is controlled Suraj Kandpal
2026-02-13  9:16 ` Suraj Kandpal [this message]
2026-02-13  9:45 ` ✗ CI.checkpatch: warning for Fixes and updates when using AUX backlight using Luminance Patchwork
2026-02-13  9:46 ` ✓ CI.KUnit: success " Patchwork
2026-02-13 10:22 ` ✓ Xe.CI.BAT: " Patchwork
2026-02-14  6:28 ` ✗ Xe.CI.FULL: failure " 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=20260213091653.2250887-9-suraj.kandpal@intel.com \
    --to=suraj.kandpal@intel.com \
    --cc=ankit.k.nautiyal@intel.com \
    --cc=arun.r.murthy@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    /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