diff options
author | Jesse Barnes <jbarnes@virtuousgeek.org> | 2011-07-07 14:11:01 -0400 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2011-07-07 16:38:47 -0400 |
commit | 885a50147f00a8a80108904bf58a18af357717f3 (patch) | |
tree | 02c2bbe6483c50f5f8e5614b71dc5faad7bafdb2 /drivers/gpu | |
parent | 899526d9a73fda47516cf11ccb3467ad6702f568 (diff) |
drm/i915/dp: remove DPMS mode tracking from DP
We currently use this when a hot plug event is received, only checking
the link status and re-training if we had previously configured a link.
However if we want to preserve the DP configuration across both hot plug
and DPMS events (which we do for userspace apps that don't respond to
hot plug uevents), we need to unconditionally check the link and try to
bring it up on hot plug.
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/intel_dp.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c index 70075d9900da..5f97c1751ff0 100644 --- a/drivers/gpu/drm/i915/intel_dp.c +++ b/drivers/gpu/drm/i915/intel_dp.c | |||
@@ -50,7 +50,6 @@ struct intel_dp { | |||
50 | bool has_audio; | 50 | bool has_audio; |
51 | int force_audio; | 51 | int force_audio; |
52 | uint32_t color_range; | 52 | uint32_t color_range; |
53 | int dpms_mode; | ||
54 | uint8_t link_bw; | 53 | uint8_t link_bw; |
55 | uint8_t lane_count; | 54 | uint8_t lane_count; |
56 | uint8_t dpcd[4]; | 55 | uint8_t dpcd[4]; |
@@ -1010,7 +1009,6 @@ intel_dp_dpms(struct drm_encoder *encoder, int mode) | |||
1010 | if (is_edp(intel_dp)) | 1009 | if (is_edp(intel_dp)) |
1011 | ironlake_edp_backlight_on(dev); | 1010 | ironlake_edp_backlight_on(dev); |
1012 | } | 1011 | } |
1013 | intel_dp->dpms_mode = mode; | ||
1014 | } | 1012 | } |
1015 | 1013 | ||
1016 | /* | 1014 | /* |
@@ -1813,8 +1811,7 @@ intel_dp_hot_plug(struct intel_encoder *intel_encoder) | |||
1813 | { | 1811 | { |
1814 | struct intel_dp *intel_dp = container_of(intel_encoder, struct intel_dp, base); | 1812 | struct intel_dp *intel_dp = container_of(intel_encoder, struct intel_dp, base); |
1815 | 1813 | ||
1816 | if (intel_dp->dpms_mode == DRM_MODE_DPMS_ON) | 1814 | intel_dp_check_link_status(intel_dp); |
1817 | intel_dp_check_link_status(intel_dp); | ||
1818 | } | 1815 | } |
1819 | 1816 | ||
1820 | /* Return which DP Port should be selected for Transcoder DP control */ | 1817 | /* Return which DP Port should be selected for Transcoder DP control */ |
@@ -1882,7 +1879,6 @@ intel_dp_init(struct drm_device *dev, int output_reg) | |||
1882 | return; | 1879 | return; |
1883 | 1880 | ||
1884 | intel_dp->output_reg = output_reg; | 1881 | intel_dp->output_reg = output_reg; |
1885 | intel_dp->dpms_mode = -1; | ||
1886 | 1882 | ||
1887 | intel_connector = kzalloc(sizeof(struct intel_connector), GFP_KERNEL); | 1883 | intel_connector = kzalloc(sizeof(struct intel_connector), GFP_KERNEL); |
1888 | if (!intel_connector) { | 1884 | if (!intel_connector) { |