summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsg <jsg@openbsd.org>2014-01-24 06:11:02 +0000
committerjsg <jsg@openbsd.org>2014-01-24 06:11:02 +0000
commit4ab1d15e86197489a7dd716338ead431e595632b (patch)
tree304bfd9059d47d556cc5953bdce61890a40cf662
parentfix the matching for filter rules of 'prefixlen = XX' (diff)
downloadwireguard-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.c10
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);
}