diff options
author | Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> | 2017-06-13 16:03:59 -0400 |
---|---|---|
committer | Ville Syrjälä <ville.syrjala@linux.intel.com> | 2017-06-15 09:11:08 -0400 |
commit | f6262bda462e81e959b80a96dac799bd9df27f73 (patch) | |
tree | be02541961d4f1c5bf4387d09b521d832c9abc56 | |
parent | 29962acaa07c151a7ddfd3ff56ba5844889681fb (diff) |
drm/i915: Don't enable backlight at setup time.
Maarten and Ville noticed that we are enabling backlight via DP aux very
early in the modeset_init path via the intel_dp_aux_setup_backlight()
function, since commit e7156c833903 ("drm/i915: Add Backlight Control using
DPCD for eDP connectors (v9)"). Looks like all we need to do during
_setup_backlight() is read the current brightness state instead of
modifying it.
v2: Rewrote commit message.
Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Jani Nikula <jani.nikula@intel.com>
Cc: Yetunde Adebisi <yetundex.adebisi@intel.com>
Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Tested-by: Puthikorn Voravootivat <puthik@chromium.org>
Fixes: e7156c833903 ("drm/i915: Add Backlight Control using DPCD for eDP connectors (v9)")
Link: http://patchwork.freedesktop.org/patch/msgid/1497384239-2965-1-git-send-email-dhinakaran.pandiyan@intel.com
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp_aux_backlight.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp_aux_backlight.c b/drivers/gpu/drm/i915/intel_dp_aux_backlight.c index 6cc62980d0da..228ca06d9f0b 100644 --- a/drivers/gpu/drm/i915/intel_dp_aux_backlight.c +++ b/drivers/gpu/drm/i915/intel_dp_aux_backlight.c | |||
@@ -80,10 +80,6 @@ static uint32_t intel_dp_aux_get_backlight(struct intel_connector *connector) | |||
80 | static void | 80 | static void |
81 | intel_dp_aux_set_backlight(const struct drm_connector_state *conn_state, u32 level) | 81 | intel_dp_aux_set_backlight(const struct drm_connector_state *conn_state, u32 level) |
82 | { | 82 | { |
83 | /* | ||
84 | * conn_state->best_encoder is likely NULL when called from | ||
85 | * intel_dp_aux_setup_backlight() | ||
86 | */ | ||
87 | struct intel_connector *connector = to_intel_connector(conn_state->connector); | 83 | struct intel_connector *connector = to_intel_connector(conn_state->connector); |
88 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); | 84 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); |
89 | uint8_t vals[2] = { 0x0 }; | 85 | uint8_t vals[2] = { 0x0 }; |
@@ -106,10 +102,6 @@ static void intel_dp_aux_enable_backlight(const struct intel_crtc_state *crtc_st | |||
106 | const struct drm_connector_state *conn_state) | 102 | const struct drm_connector_state *conn_state) |
107 | { | 103 | { |
108 | struct intel_connector *connector = to_intel_connector(conn_state->connector); | 104 | struct intel_connector *connector = to_intel_connector(conn_state->connector); |
109 | /* | ||
110 | * conn_state->best_encoder (and crtc_state) are NULL when called from | ||
111 | * intel_dp_aux_setup_backlight() | ||
112 | */ | ||
113 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); | 105 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); |
114 | uint8_t dpcd_buf = 0; | 106 | uint8_t dpcd_buf = 0; |
115 | uint8_t edp_backlight_mode = 0; | 107 | uint8_t edp_backlight_mode = 0; |
@@ -156,8 +148,6 @@ static int intel_dp_aux_setup_backlight(struct intel_connector *connector, | |||
156 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); | 148 | struct intel_dp *intel_dp = enc_to_intel_dp(&connector->encoder->base); |
157 | struct intel_panel *panel = &connector->panel; | 149 | struct intel_panel *panel = &connector->panel; |
158 | 150 | ||
159 | intel_dp_aux_enable_backlight(NULL, connector->base.state); | ||
160 | |||
161 | if (intel_dp->edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_BYTE_COUNT) | 151 | if (intel_dp->edp_dpcd[2] & DP_EDP_BACKLIGHT_BRIGHTNESS_BYTE_COUNT) |
162 | panel->backlight.max = 0xFFFF; | 152 | panel->backlight.max = 0xFFFF; |
163 | else | 153 | else |