linux_dsm_epyc7002/drivers/gpu/drm/i915/display
Imre Deak 898e4e57ad drm/i915/icl: Disable DIP on MST ports with the transcoder clock still on
According to BSpec the Data Island Packet should be disabled after
disabling the transcoder, but before the transcoder clock select is set
to none. On an ICL RVP, daisy-chained MST config not following this
leads to a hang with the following MCE when disabling the output:

[  870.948739] mce: [Hardware Error]: CPU 0: Machine Check Exception: 5 Bank 6: ba00000011000402
[  871.019212] mce: [Hardware Error]: RIP !INEXACT! 10:<ffffffff81aca652> {poll_idle+0x92/0xb0}
[  871.019212] mce: [Hardware Error]: TSC 135a261fe61
[  871.019212] mce: [Hardware Error]: PROCESSOR 0:706e5 TIME 1591739604 SOCKET 0 APIC 0 microcode 20
[  871.019212] mce: [Hardware Error]: Run the above through 'mcelog --ascii'
[  871.019212] mce: [Hardware Error]: Machine check: Processor context corrupt
[  871.019212] Kernel panic - not syncing: Fatal machine check
[  871.019212] Kernel Offset: disabled

Bspec: 4287

Fixes: fa37a21327 ("drm/i915: Stop sending DP SDPs on ddi disable")
Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
Cc: Uma Shankar <uma.shankar@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Reviewed-by: Uma Shankar <uma.shankar@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200609220616.6015-1-imre.deak@intel.com
(cherry picked from commit c980216dd2)
Signed-off-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
2020-06-16 11:34:24 +03:00
..
dvo_ch7xxx.c
dvo_ch7017.c
dvo_ivch.c
dvo_ns2501.c
dvo_sil164.c
dvo_tfp410.c
icl_dsi.c drm/i915: Have pfit calculations return an error code 2020-04-24 17:37:22 +03:00
intel_acpi.c drm/i915/acpi: Move the code to populate ACPI device ID into intel_acpi 2020-01-24 12:58:39 +02:00
intel_acpi.h drm/i915/acpi: Move the code to populate ACPI device ID into intel_acpi 2020-01-24 12:58:39 +02:00
intel_atomic_plane.c drm/i915/display/atomic_plane: Prefer drm_WARN_ON over WARN_ON 2020-04-21 09:49:30 +03:00
intel_atomic_plane.h drm/i915: Fix crtc nv12 etc. plane bitmasks for DPMS off 2020-03-20 15:12:11 +02:00
intel_atomic.c drm/i915/atomic: conversion to drm_device based logging macros. 2020-02-11 15:11:50 +02:00
intel_atomic.h drm/i915: Introduce better global state handling 2020-01-31 17:00:44 +02:00
intel_audio.c drm/i915: Streamline the artihmetic 2020-05-04 18:44:53 +03:00
intel_audio.h
intel_bios.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_bios.h drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_bw.c drm/i915: Restrict qgv points which don't have enough bandwidth. 2020-05-14 19:08:30 +03:00
intel_bw.h drm/i915: Restrict qgv points which don't have enough bandwidth. 2020-05-14 19:08:30 +03:00
intel_cdclk.c drm/i915: Lock gmbus/aux mutexes while changing cdclk 2020-03-09 22:28:33 +02:00
intel_cdclk.h drm/i915: Read rawclk_freq earlier 2020-02-19 14:09:18 +00:00
intel_color.c drm/i915/color: Extract icl_read_luts() 2020-03-18 14:38:35 +02:00
intel_color.h
intel_combo_phy.c drm/i915/combo_phy: convert to struct drm_device logging macros. 2020-02-11 15:23:33 +02:00
intel_combo_phy.h
intel_connector.c drm/i915: Add connector dbgfs for all connectors 2020-04-17 13:12:10 +05:30
intel_connector.h
intel_crt.c drm/i915: Pass encoder all the way to intel_ddi_transcoder_func_reg_val_get() 2020-04-20 21:21:10 +03:00
intel_crt.h
intel_csr.c drm/i915/dmc: Use firmware v2.06 for TGL 2020-03-03 11:28:12 +02:00
intel_csr.h drm/i915: move intel_csr.[ch] under display/ 2020-02-14 08:48:12 +02:00
intel_ddi.c drm/i915/icl: Disable DIP on MST ports with the transcoder clock still on 2020-06-16 11:34:24 +03:00
intel_ddi.h drm/i915: Pass encoder all the way to intel_ddi_transcoder_func_reg_val_get() 2020-04-20 21:21:10 +03:00
intel_de.h drm/i915: add display engine uncore helpers 2020-01-23 11:07:00 +02:00
intel_display_debugfs.c Merge tag 'drm-intel-next-2020-04-30' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2020-05-14 11:33:10 +10:00
intel_display_debugfs.h drm/i915: have *_debugfs_init() functions return void. 2020-03-18 16:27:22 +01:00
intel_display_power.c drm/i915/icl: Fix timeout handling during TypeC AUX power well enabling 2020-04-23 14:26:13 +03:00
intel_display_power.h drm/i915/tc/tgl: Implement TC cold sequences 2020-04-17 15:01:34 -07:00
intel_display_types.h Merge tag 'drm-intel-next-2020-05-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2020-05-20 13:36:45 +10:00
intel_display.c Merge tag 'drm-intel-next-2020-05-15' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2020-05-20 13:36:45 +10:00
intel_display.h drm/i915: Fix skl+ non-scaled pfit modes 2020-04-24 17:16:46 +03:00
intel_dp_aux_backlight.c drm/i915/dpcd_bl: Unbreak enable_dpcd_backlight modparam 2020-04-20 11:18:26 +03:00
intel_dp_aux_backlight.h
intel_dp_link_training.c drm/i915/dp: Made intel_dp_adjust_train() non-static 2020-04-08 14:40:48 +02:00
intel_dp_link_training.h drm/i915/dp: Made intel_dp_adjust_train() non-static 2020-04-08 14:40:48 +02:00
intel_dp_mst.c drm/i915/icl: Disable DIP on MST ports with the transcoder clock still on 2020-06-16 11:34:24 +03:00
intel_dp_mst.h
intel_dp.c drm/i915/display: Only query DP state of a DDI encoder 2020-06-09 14:47:05 +03:00
intel_dp.h drm/i915/dp: Add compute routine for DP PSR VSC SDP 2020-05-14 13:54:15 +03:00
intel_dpio_phy.c drm/i915/dpio_phy: convert to drm_device based logging macros. 2020-02-11 15:28:52 +02:00
intel_dpio_phy.h
intel_dpll_mgr.c drm/i915/display/dpll_mgr: Prefer drm_WARN_ON over WARN_ON 2020-04-21 10:53:53 +03:00
intel_dpll_mgr.h drm/i915: Fix documentation for intel_dpll_get_freq() 2020-03-09 12:37:23 +02:00
intel_dsb.c drm/i915: drop a bunch of superfluous inlines 2020-04-21 09:31:37 +03:00
intel_dsb.h
intel_dsi_dcs_backlight.c drm/i915/display: Make WARN* drm specific where drm_device ptr is available 2020-02-04 11:00:04 +02:00
intel_dsi_dcs_backlight.h
intel_dsi_vbt.c drm/i915: drop a bunch of superfluous inlines 2020-04-21 09:31:37 +03:00
intel_dsi.c drm/i915/dsi: use struct drm_device based logging 2020-03-25 19:45:49 +02:00
intel_dsi.h
intel_dvo_dev.h
intel_dvo.c drm/i915: Pass atomic state to encoder hooks 2020-04-03 19:49:57 +03:00
intel_dvo.h
intel_fbc.c drm/i915/display: Warn if the FBC is still writing to stolen on removal 2020-05-04 17:11:51 +01:00
intel_fbc.h
intel_fbdev.c Merge drm/drm-next into drm-intel-next-queued 2020-04-16 14:35:16 +03:00
intel_fbdev.h
intel_fifo_underrun.c drm/i915/fifo_underrun: convert to drm_device based logging. 2020-03-11 12:20:43 +02:00
intel_fifo_underrun.h
intel_frontbuffer.c drm/i915/display/frontbuffer: Prefer drm_WARN_ON over WARN_ON 2020-04-21 10:54:22 +03:00
intel_frontbuffer.h
intel_global_state.c drm/i915: Fix global state use-after-frees with a refcount 2020-06-02 16:35:24 +03:00
intel_global_state.h drm/i915: Fix global state use-after-frees with a refcount 2020-06-02 16:35:24 +03:00
intel_gmbus.c drm/i915: drop a bunch of superfluous inlines 2020-04-21 09:31:37 +03:00
intel_gmbus.h
intel_hdcp.c drm/i915: drop a bunch of superfluous inlines 2020-04-21 09:31:37 +03:00
intel_hdcp.h drm/i915: Pass atomic state to encoder hooks 2020-04-03 19:49:57 +03:00
intel_hdmi.c drm/i915: Have pfit calculations return an error code 2020-04-24 17:37:22 +03:00
intel_hdmi.h drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_hotplug.c drm/i915: Add a retry counter for hotplug detect retries 2020-04-06 17:53:51 +03:00
intel_hotplug.h drm/i915: Add a retry counter for hotplug detect retries 2020-04-06 17:53:51 +03:00
intel_lpe_audio.c drm/i915/lpe_audio: convert to drm_device based logging macros. 2020-03-11 12:20:43 +02:00
intel_lpe_audio.h
intel_lspcon.c drm/i915: Fix enabled infoframe states of lspcon 2020-05-14 13:54:08 +03:00
intel_lspcon.h
intel_lvds.c drm/i915: Have pfit calculations return an error code 2020-04-24 17:37:22 +03:00
intel_lvds.h
intel_opregion.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_opregion.h
intel_overlay.c drm/i915/display/overlay: Prefer drm_WARN_ON over WARN_ON 2020-04-21 10:54:41 +03:00
intel_overlay.h
intel_panel.c drm/i915: avoid unused scale_user_to_hw() warning 2020-05-19 17:53:58 +03:00
intel_panel.h drm/i915: Have pfit calculations return an error code 2020-04-24 17:37:22 +03:00
intel_pipe_crc.c drm/i915/crc: move pipe_crc from drm_i915_private to intel_crtc 2020-03-02 12:58:26 +02:00
intel_pipe_crc.h drm/i915/crc: move pipe_crc from drm_i915_private to intel_crtc 2020-03-02 12:58:26 +02:00
intel_psr.c drm/i915/psr: Use new DP VSC SDP compute routine on PSR 2020-05-14 13:54:17 +03:00
intel_psr.h drm/i915/psr: Use new DP VSC SDP compute routine on PSR 2020-05-14 13:54:17 +03:00
intel_quirks.c drm/i915: Add invert-brightness quirk for Thundersoft TST178 tablet 2020-03-04 16:54:36 +01:00
intel_quirks.h
intel_sdvo_regs.h
intel_sdvo.c drm/i915: Add a retry counter for hotplug detect retries 2020-04-06 17:53:51 +03:00
intel_sdvo.h drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_sprite.c drm/i915: Add YUV444 packed format support for skl+ 2020-04-16 11:53:47 +03:00
intel_sprite.h
intel_tc.c drm/i915: Use stashed away hpd isr bits in intel_digital_port_connected() 2020-05-11 16:32:12 +03:00
intel_tc.h drm/i915: Turn intel_digital_port_connected() in a vfunc 2020-05-11 16:25:15 +03:00
intel_tv.c drm/i915: Pass atomic state to encoder hooks 2020-04-03 19:49:57 +03:00
intel_tv.h
intel_vbt_defs.h drm/i915: Replace zero-length array with flexible-array 2020-05-09 12:59:23 +01:00
intel_vdsc.c drm/i915: significantly reduce the use of <drm/i915_drm.h> 2020-02-27 08:35:09 +02:00
intel_vdsc.h
intel_vga.c drm/i915/vga: conversion to drm_device based logging macros. 2020-02-04 11:13:20 +02:00
intel_vga.h
vlv_dsi_pll.c drm/i915/vlv_dsi_pll: conversion to struct drm_device logging macros. 2020-02-04 11:13:15 +02:00
vlv_dsi.c drm/i915: Have pfit calculations return an error code 2020-04-24 17:37:22 +03:00