aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_display.c
diff options
context:
space:
mode:
authorJesse Barnes <jbarnes@virtuousgeek.org>2013-10-31 12:55:49 -0400
committerDaniel Vetter <daniel.vetter@ffwll.ch>2013-11-06 11:56:28 -0500
commit752aa88a1e784c22d514db3b440e49427b58259e (patch)
tree755926ad23793496c41b601a9cbb42950a57416e /drivers/gpu/drm/i915/intel_display.c
parent91a60f20712179e56b7a6c3d332a5f6f9a54aa11 (diff)
drm/i915: make backlight functions take a connector
On VLV/BYT, backlight controls a per-pipe, so when adjusting the backlight we need to pass the correct info. So make the externally visible backlight functions take a connector argument, which can be used internally to figure out the pipe backlight to adjust. v2: make connector pipe lookup check for NULL crtc (Jani) fixup connector check in ASLE code (Jani) v3: make sure we take the mode config lock around lookups (Daniel) v4: fix double unlock in panel_get_brightness (Daniel) v5: push ASLE work into a work queue (Daniel) v6: separate ASLE work to a prep patch, rebase (Jani) Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_display.c')
-rw-r--r--drivers/gpu/drm/i915/intel_display.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index e31a740e1663..73f036bddb6f 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -9874,6 +9874,18 @@ static void intel_crtc_init(struct drm_device *dev, int pipe)
9874 drm_crtc_helper_add(&intel_crtc->base, &intel_helper_funcs); 9874 drm_crtc_helper_add(&intel_crtc->base, &intel_helper_funcs);
9875} 9875}
9876 9876
9877enum pipe intel_get_pipe_from_connector(struct intel_connector *connector)
9878{
9879 struct drm_encoder *encoder = connector->base.encoder;
9880
9881 WARN_ON(!mutex_is_locked(&connector->base.dev->mode_config.mutex));
9882
9883 if (!encoder)
9884 return INVALID_PIPE;
9885
9886 return to_intel_crtc(encoder->crtc)->pipe;
9887}
9888
9877int intel_get_pipe_from_crtc_id(struct drm_device *dev, void *data, 9889int intel_get_pipe_from_crtc_id(struct drm_device *dev, void *data,
9878 struct drm_file *file) 9890 struct drm_file *file)
9879{ 9891{