Skip to content

Commit 51fbbe8

Browse files
hoganderrodrigovivi
authored andcommitted
drm/i915/backlight: Disable pps power hook for aux based backlight
Pps power hook seems to be problematic for backlight controlled via aux channel. Disable it for such cases. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3657 Cc: stable@vger.kernel.org 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/20220822140836.534432-1-jouni.hogander@intel.com (cherry picked from commit 869e3bb) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent 2c4e19f commit 51fbbe8

2 files changed

Lines changed: 8 additions & 5 deletions

File tree

drivers/gpu/drm/i915/display/intel_backlight.c

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
#include "intel_dsi_dcs_backlight.h"
1717
#include "intel_panel.h"
1818
#include "intel_pci_config.h"
19+
#include "intel_pps.h"
1920

2021
/**
2122
* scale - scale values from one range to another
@@ -1771,9 +1772,13 @@ void intel_backlight_init_funcs(struct intel_panel *panel)
17711772
panel->backlight.pwm_funcs = &i9xx_pwm_funcs;
17721773
}
17731774

1774-
if (connector->base.connector_type == DRM_MODE_CONNECTOR_eDP &&
1775-
intel_dp_aux_init_backlight_funcs(connector) == 0)
1776-
return;
1775+
if (connector->base.connector_type == DRM_MODE_CONNECTOR_eDP) {
1776+
if (intel_dp_aux_init_backlight_funcs(connector) == 0)
1777+
return;
1778+
1779+
if (!(dev_priv->quirks & QUIRK_NO_PPS_BACKLIGHT_POWER_HOOK))
1780+
connector->panel.backlight.power = intel_pps_backlight_power;
1781+
}
17771782

17781783
/* We're using a standard PWM backlight interface */
17791784
panel->backlight.funcs = &pwm_bl_funcs;

drivers/gpu/drm/i915/display/intel_dp.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5293,8 +5293,6 @@ static bool intel_edp_init_connector(struct intel_dp *intel_dp,
52935293

52945294
intel_panel_init(intel_connector);
52955295

5296-
if (!(dev_priv->quirks & QUIRK_NO_PPS_BACKLIGHT_POWER_HOOK))
5297-
intel_connector->panel.backlight.power = intel_pps_backlight_power;
52985296
intel_backlight_setup(intel_connector, pipe);
52995297

53005298
intel_edp_add_properties(intel_dp);

0 commit comments

Comments
 (0)