diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_panel.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_panel.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/gpu/drm/i915/intel_panel.c b/drivers/gpu/drm/i915/intel_panel.c index 4a9f139e7b73..e6cd7b55c018 100644 --- a/drivers/gpu/drm/i915/intel_panel.c +++ b/drivers/gpu/drm/i915/intel_panel.c | |||
@@ -111,7 +111,7 @@ intel_pch_panel_fitting(struct intel_crtc *intel_crtc, | |||
111 | /* Native modes don't need fitting */ | 111 | /* Native modes don't need fitting */ |
112 | if (adjusted_mode->crtc_hdisplay == pipe_config->pipe_src_w && | 112 | if (adjusted_mode->crtc_hdisplay == pipe_config->pipe_src_w && |
113 | adjusted_mode->crtc_vdisplay == pipe_config->pipe_src_h && | 113 | adjusted_mode->crtc_vdisplay == pipe_config->pipe_src_h && |
114 | !pipe_config->ycbcr420) | 114 | pipe_config->output_format != INTEL_OUTPUT_FORMAT_YCBCR420) |
115 | goto done; | 115 | goto done; |
116 | 116 | ||
117 | switch (fitting_mode) { | 117 | switch (fitting_mode) { |
@@ -505,7 +505,7 @@ static u32 _vlv_get_backlight(struct drm_i915_private *dev_priv, enum pipe pipe) | |||
505 | static u32 vlv_get_backlight(struct intel_connector *connector) | 505 | static u32 vlv_get_backlight(struct intel_connector *connector) |
506 | { | 506 | { |
507 | struct drm_i915_private *dev_priv = to_i915(connector->base.dev); | 507 | struct drm_i915_private *dev_priv = to_i915(connector->base.dev); |
508 | enum pipe pipe = intel_get_pipe_from_connector(connector); | 508 | enum pipe pipe = intel_connector_get_pipe(connector); |
509 | 509 | ||
510 | return _vlv_get_backlight(dev_priv, pipe); | 510 | return _vlv_get_backlight(dev_priv, pipe); |
511 | } | 511 | } |
@@ -763,7 +763,7 @@ static void pwm_disable_backlight(const struct drm_connector_state *old_conn_sta | |||
763 | struct intel_panel *panel = &connector->panel; | 763 | struct intel_panel *panel = &connector->panel; |
764 | 764 | ||
765 | /* Disable the backlight */ | 765 | /* Disable the backlight */ |
766 | pwm_config(panel->backlight.pwm, 0, CRC_PMIC_PWM_PERIOD_NS); | 766 | intel_panel_actually_set_backlight(old_conn_state, 0); |
767 | usleep_range(2000, 3000); | 767 | usleep_range(2000, 3000); |
768 | pwm_disable(panel->backlight.pwm); | 768 | pwm_disable(panel->backlight.pwm); |
769 | } | 769 | } |
@@ -1814,11 +1814,8 @@ int intel_panel_setup_backlight(struct drm_connector *connector, enum pipe pipe) | |||
1814 | return 0; | 1814 | return 0; |
1815 | } | 1815 | } |
1816 | 1816 | ||
1817 | void intel_panel_destroy_backlight(struct drm_connector *connector) | 1817 | static void intel_panel_destroy_backlight(struct intel_panel *panel) |
1818 | { | 1818 | { |
1819 | struct intel_connector *intel_connector = to_intel_connector(connector); | ||
1820 | struct intel_panel *panel = &intel_connector->panel; | ||
1821 | |||
1822 | /* dispose of the pwm */ | 1819 | /* dispose of the pwm */ |
1823 | if (panel->backlight.pwm) | 1820 | if (panel->backlight.pwm) |
1824 | pwm_put(panel->backlight.pwm); | 1821 | pwm_put(panel->backlight.pwm); |
@@ -1923,6 +1920,8 @@ void intel_panel_fini(struct intel_panel *panel) | |||
1923 | struct intel_connector *intel_connector = | 1920 | struct intel_connector *intel_connector = |
1924 | container_of(panel, struct intel_connector, panel); | 1921 | container_of(panel, struct intel_connector, panel); |
1925 | 1922 | ||
1923 | intel_panel_destroy_backlight(panel); | ||
1924 | |||
1926 | if (panel->fixed_mode) | 1925 | if (panel->fixed_mode) |
1927 | drm_mode_destroy(intel_connector->base.dev, panel->fixed_mode); | 1926 | drm_mode_destroy(intel_connector->base.dev, panel->fixed_mode); |
1928 | 1927 | ||