]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.4.92/drm-i915-bios-ignore-hdmi-on-port-a.patch
drop drm patch
[thirdparty/kernel/stable-queue.git] / releases / 4.4.92 / drm-i915-bios-ignore-hdmi-on-port-a.patch
1 From 2ba7d7e0437127314864238f8bfcb8369d81075c Mon Sep 17 00:00:00 2001
2 From: Jani Nikula <jani.nikula@intel.com>
3 Date: Thu, 21 Sep 2017 17:19:20 +0300
4 Subject: drm/i915/bios: ignore HDMI on port A
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 From: Jani Nikula <jani.nikula@intel.com>
10
11 commit 2ba7d7e0437127314864238f8bfcb8369d81075c upstream.
12
13 The hardware state readout oopses after several warnings when trying to
14 use HDMI on port A, if such a combination is configured in VBT. Filter
15 the combo out already at the VBT parsing phase.
16
17 v2: also ignore DVI (Ville)
18
19 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=102889
20 Cc: Imre Deak <imre.deak@intel.com>
21 Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
22 Tested-by: Daniel Drake <dan@reactivated.net>
23 Signed-off-by: Jani Nikula <jani.nikula@intel.com>
24 Link: https://patchwork.freedesktop.org/patch/msgid/20170921141920.18172-1-jani.nikula@intel.com
25 (cherry picked from commit d27ffc1d00327c29b3aa97f941b42f0949f9e99f)
26 Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
27 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
28
29 ---
30 drivers/gpu/drm/i915/intel_bios.c | 7 +++++++
31 1 file changed, 7 insertions(+)
32
33 --- a/drivers/gpu/drm/i915/intel_bios.c
34 +++ b/drivers/gpu/drm/i915/intel_bios.c
35 @@ -957,6 +957,13 @@ static void parse_ddi_port(struct drm_i9
36 is_hdmi = is_dvi && (child->common.device_type & DEVICE_TYPE_NOT_HDMI_OUTPUT) == 0;
37 is_edp = is_dp && (child->common.device_type & DEVICE_TYPE_INTERNAL_CONNECTOR);
38
39 + if (port == PORT_A && is_dvi) {
40 + DRM_DEBUG_KMS("VBT claims port A supports DVI%s, ignoring\n",
41 + is_hdmi ? "/HDMI" : "");
42 + is_dvi = false;
43 + is_hdmi = false;
44 + }
45 +
46 info->supports_dvi = is_dvi;
47 info->supports_hdmi = is_hdmi;
48 info->supports_dp = is_dp;