diff options
author | 2014-01-24 06:11:02 +0000 | |
---|---|---|
committer | 2014-01-24 06:11:02 +0000 | |
commit | 4ab1d15e86197489a7dd716338ead431e595632b (patch) | |
tree | 304bfd9059d47d556cc5953bdce61890a40cf662 | |
parent | fix the matching for filter rules of 'prefixlen = XX' (diff) | |
download | wireguard-openbsd-4ab1d15e86197489a7dd716338ead431e595632b.tar.xz wireguard-openbsd-4ab1d15e86197489a7dd716338ead431e595632b.zip |
drm/i915: Only apply DPMS to the encoder if enabled
From Chris Wilson
aee8722c71db885fd3a617a9866f63b7165d93e0 in ubuntu 3.8
c9976dcf55c8aaa7037427b239f15e5acfc01a3a in mainline linux
-rw-r--r-- | sys/dev/pci/drm/i915/intel_display.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/sys/dev/pci/drm/i915/intel_display.c b/sys/dev/pci/drm/i915/intel_display.c index 7b014a9f474..019ce41cb5f 100644 --- a/sys/dev/pci/drm/i915/intel_display.c +++ b/sys/dev/pci/drm/i915/intel_display.c @@ -1,4 +1,4 @@ -/* $OpenBSD: intel_display.c,v 1.25 2014/01/24 04:05:06 jsg Exp $ */ +/* $OpenBSD: intel_display.c,v 1.26 2014/01/24 06:11:02 jsg Exp $ */ /* * Copyright © 2006-2007 Intel Corporation * @@ -4008,8 +4008,6 @@ static void intel_connector_check_state(struct intel_connector *connector) * consider. */ void intel_connector_dpms(struct drm_connector *connector, int mode) { - struct intel_encoder *encoder = intel_attached_encoder(connector); - /* All the simple cases only support two dpms states. */ if (mode != DRM_MODE_DPMS_ON) mode = DRM_MODE_DPMS_OFF; @@ -4020,10 +4018,8 @@ void intel_connector_dpms(struct drm_connector *connector, int mode) connector->dpms = mode; /* Only need to change hw state when actually enabled */ - if (encoder->base.crtc) - intel_encoder_dpms(encoder, mode); - else - WARN_ON(encoder->connectors_active != false); + if (connector->encoder) + intel_encoder_dpms(to_intel_encoder(connector->encoder), mode); intel_modeset_check_state(connector->dev); } |