drm/i915: Use luminance range calculated during edid parsing
Instead of using fixed 0 - 512 range use luminance range calculated as a part of edid parsing. As a backup fall back to static 0 - 512. v3: Clean-ups suggested by Jani Nikula v2: Use values calculated during edid parsing Cc: Lyude Paul <lyude@redhat.com> Cc: Mika Kahola <mika.kahola@intel.com> Cc: Jani Nikula <jani.nikula@intel.com> Cc: Manasi Navare <manasi.d.navare@intel.com> Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220719095700.14923-4-jouni.hogander@intel.com
This commit is contained in:
parent
a61bb3422e
commit
3bd86801c8
@ -278,6 +278,8 @@ intel_dp_aux_hdr_setup_backlight(struct intel_connector *connector, enum pipe pi
|
||||
{
|
||||
struct drm_i915_private *i915 = to_i915(connector->base.dev);
|
||||
struct intel_panel *panel = &connector->panel;
|
||||
struct drm_luminance_range_info *luminance_range =
|
||||
&connector->base.display_info.luminance_range;
|
||||
int ret;
|
||||
|
||||
if (panel->backlight.edp.intel.sdr_uses_aux) {
|
||||
@ -293,8 +295,17 @@ intel_dp_aux_hdr_setup_backlight(struct intel_connector *connector, enum pipe pi
|
||||
}
|
||||
}
|
||||
|
||||
panel->backlight.max = 512;
|
||||
panel->backlight.min = 0;
|
||||
if (luminance_range->max_luminance) {
|
||||
panel->backlight.max = luminance_range->max_luminance;
|
||||
panel->backlight.min = luminance_range->min_luminance;
|
||||
} else {
|
||||
panel->backlight.max = 512;
|
||||
panel->backlight.min = 0;
|
||||
}
|
||||
|
||||
drm_dbg_kms(&i915->drm, "Using backlight range %d..%d\n", panel->backlight.min,
|
||||
panel->backlight.max);
|
||||
|
||||
panel->backlight.level = intel_dp_aux_hdr_get_backlight(connector, pipe);
|
||||
panel->backlight.enabled = panel->backlight.level != 0;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user