OpenCloudOS-Kernel/drivers/gpu/drm/i915
Chris Wilson 8e9ecb3e1e drm/i915/display: Handle lost primary_port across suspend
icl-dsi is dying on suspend/resume at

	RIP: 0010:icl_update_active_dpll+0x2c/0xa0 [i915]

which appears due to the loss of the time primary_port across suspend.
Protect against the potential NULL dereference by assuming
ICL_PORT_DPLL_DEFAULT unless the port is actively specified otherwise.

Fixes: 24a7bfe0c2 ("drm/i915: Keep the TypeC port mode fixed when the port is active")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190702140950.7069-1-chris@chris-wilson.co.uk
2019-07-03 10:09:58 +01:00
..
display drm/i915/display: Handle lost primary_port across suspend 2019-07-03 10:09:58 +01:00
gem drm/i915: add header search path to subdir Makefiles 2019-06-27 10:25:48 +03:00
gt drm/i915: synchronize_irq() against the actual irq 2019-07-03 10:07:13 +01:00
gvt drm/i915/gtt: Use a common type for page directories 2019-06-17 16:30:54 +03:00
oa drm/i915: Move OA files to separate folder 2019-06-26 23:23:59 +01:00
selftests drm/i915/selftests: Hold ref on request across waits 2019-06-26 00:00:29 +01:00
.gitignore drm/i915: add Makefile magic for testing headers are self-contained 2019-04-04 19:49:42 +03:00
Kconfig drm/i915: add force_probe module parameter to replace alpha_support 2019-05-31 16:20:30 +03:00
Kconfig.debug drm/i915: Enable refcount debugging for default debug levels 2019-06-14 12:16:08 +01:00
Kconfig.profile drm/i915: Add a label for config DRM_I915_SPIN_REQUEST 2019-06-12 11:18:55 +01:00
Makefile drm/i915: Move the TypeC port handling code to a separate file 2019-07-01 14:48:46 +03:00
Makefile.header-test drm/i915: make intel_uc_fw.h self-contained 2019-06-27 10:50:54 +03:00
i915_active.c drm/i915: Report if i915_active is still busy upon waiting 2019-07-02 12:03:28 +01:00
i915_active.h drm/i915: Provide an i915_active.acquire callback 2019-06-21 19:47:55 +01:00
i915_active_types.h drm/i915: Provide an i915_active.acquire callback 2019-06-21 19:47:55 +01:00
i915_cmd_parser.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
i915_debugfs.c drm/i915: synchronize_irq() against the actual irq 2019-07-03 10:07:13 +01:00
i915_debugfs.h drm/i915: extract i915_debugfs.h from i915_drv.h 2019-05-03 10:06:40 +03:00
i915_drv.c drm/i915: Initialize drm_driver vblank funcs at compile time 2019-06-26 19:23:28 +03:00
i915_drv.h Revert "drm/i915: Introduce private PAT management" 2019-07-02 19:36:47 +01:00
i915_fixed.h drm/i915: make i915_fixed.h self-contained 2019-06-27 10:50:24 +03:00
i915_gem.c drm/i915: Lift intel_engines_resume() to callers 2019-06-26 18:01:01 +01:00
i915_gem.h drm/i915: Load balancing across a virtual engine 2019-05-22 08:40:38 +01:00
i915_gem_batch_pool.c drm/i915: Throw away the active object retirement complexity 2019-06-21 19:47:51 +01:00
i915_gem_batch_pool.h drm/i915: Split GEM object type definition to its own header 2019-05-28 12:45:29 +01:00
i915_gem_evict.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_gem_fence_reg.c drm/i915: Use intel_uncore_rmw in intel_gt_init_swizzling 2019-06-21 13:48:24 +01:00
i915_gem_fence_reg.h drm/i915: Convert i915_gem_init_swizzling to intel_gt 2019-06-21 13:48:22 +01:00
i915_gem_gtt.c drm/i915/gtt: Don't check PPGTT presence on PPGTT-only platforms 2019-07-02 19:36:49 +01:00
i915_gem_gtt.h Revert "drm/i915: Introduce private PAT management" 2019-07-02 19:36:47 +01:00
i915_gem_render_state.c drm/i915: Save trip via top-level i915 in a few more places 2019-06-21 13:48:48 +01:00
i915_gem_render_state.h
i915_globals.c drm/i915: Move more GEM objects under gem/ 2019-05-28 12:45:29 +01:00
i915_globals.h drm/i915: make i915_globals.h self-contained 2019-06-27 10:50:32 +03:00
i915_gpu_error.c drm/i915: Prevent dereference of engine before NULL check in error capture 2019-06-21 15:38:54 +01:00
i915_gpu_error.h drm/i915: Invert the GEM wakeref hierarchy 2019-04-24 22:26:49 +01:00
i915_ioc32.c
i915_irq.c drm/i915: synchronize_irq() against the actual irq 2019-07-03 10:07:13 +01:00
i915_irq.h drm/i915: synchronize_irq() against the actual irq 2019-07-03 10:07:13 +01:00
i915_memcpy.c
i915_mm.c
i915_params.c drm/i915: Check backlight type while doing eDP backlight initializaiton 2019-06-26 17:48:12 +03:00
i915_params.h drm/i915: Check backlight type while doing eDP backlight initializaiton 2019-06-26 17:48:12 +03:00
i915_pci.c drm/i915/ehl: Add missing VECS engine 2019-06-25 11:50:20 -07:00
i915_perf.c drm/i915: Move OA files to separate folder 2019-06-26 23:23:59 +01:00
i915_pmu.c drm/i915: update with_intel_runtime_pm to use the rpm structure 2019-06-14 15:58:33 +01:00
i915_pmu.h
i915_priolist_types.h drm/i915: Downgrade NEWCLIENT to non-preemptive 2019-05-20 18:28:22 +03:00
i915_pvinfo.h drm/i915: make i915_pvinfo.h self-contained 2019-06-27 10:50:35 +03:00
i915_query.c Revert "drm/i915: Expand subslice mask" 2019-05-29 17:18:18 +03:00
i915_query.h
i915_reg.h drm/i915/ehl: Add third combo PHY offset 2019-07-01 08:28:15 -07:00
i915_request.c drm/i915: Rename i915_timeline to intel_timeline and move under gt 2019-06-21 13:48:53 +01:00
i915_request.h drm/i915: Rename i915_timeline to intel_timeline and move under gt 2019-06-21 13:48:53 +01:00
i915_scatterlist.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_scatterlist.h drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00
i915_scheduler.c drm/i915/execlists: Minimalistic timeslicing 2019-06-20 16:52:36 +01:00
i915_scheduler.h drm/i915: Only reschedule the submission tasklet if preemption is possible 2019-05-07 17:40:20 +01:00
i915_scheduler_types.h drm/i915/execlists: Minimalistic timeslicing 2019-06-20 16:52:36 +01:00
i915_selftest.h
i915_suspend.c drm/i915: move modesetting core code under display/ 2019-06-17 11:48:32 +03:00
i915_sw_fence.c drm/i915: Allow contexts to share a single timeline across all engines 2019-03-22 13:12:38 +00:00
i915_sw_fence.h drm/i915: Allow contexts to share a single timeline across all engines 2019-03-22 13:12:38 +00:00
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c drm/i915: update with_intel_runtime_pm to use the rpm structure 2019-06-14 15:58:33 +01:00
i915_trace.h drm/i915: Fix various tracepoints for gen2 2019-06-26 19:23:28 +03:00
i915_trace_points.c
i915_user_extensions.c drm/i915: Introduce the i915_user_extension_method 2019-03-22 13:12:30 +00:00
i915_user_extensions.h drm/i915: Introduce the i915_user_extension_method 2019-03-22 13:12:30 +00:00
i915_utils.h drm/i915/execlists: Preempt-to-busy 2019-06-20 16:52:36 +01:00
i915_vgpu.c drm/i915/gt: Fixup kerneldoc parameters 2019-06-21 16:04:09 +01:00
i915_vgpu.h drm/i915: make i915_vgpu.h self-contained 2019-06-27 10:50:38 +03:00
i915_vma.c drm/i915: Provide an i915_active.acquire callback 2019-06-21 19:47:55 +01:00
i915_vma.h drm/i915: Move fence register tracking from i915->mm to ggtt 2019-06-13 09:37:39 +01:00
intel_csr.c drm/i915/dmc: protect against loading wrong firmware 2019-06-17 12:32:34 -07:00
intel_csr.h drm/i915/csr: move CSR version macros to intel_csr.h 2019-05-03 10:06:25 +03:00
intel_device_info.c drm/i915: rework reading pipe disable fuses 2019-06-28 10:07:26 -07:00
intel_device_info.h drm/i915: move modesetting core code under display/ 2019-06-17 11:48:32 +03:00
intel_drv.h drm/i915: Keep the TypeC port mode fixed when the port is active 2019-07-01 15:02:34 +03:00
intel_guc.c drm/i915: Make GuC GGTT reservation work on ggtt 2019-06-11 14:40:15 +01:00
intel_guc.h drm/i915/guc: Avoid reclaim locks during reset 2019-07-01 16:21:43 +01:00
intel_guc_ads.c drm/i915/guc: Avoid reclaim locks during reset 2019-07-01 16:21:43 +01:00
intel_guc_ads.h drm/i915/guc: Reset GuC ADS during sanitize 2019-05-28 10:07:05 +01:00
intel_guc_ct.c drm/i915/guc: reorder enable/disable communication steps 2019-06-21 19:47:33 +01:00
intel_guc_ct.h drm/i915: make intel_guc_ct.h self-contained 2019-06-27 10:50:40 +03:00
intel_guc_fw.c drm/i915/guc: Add debug capture of GuC exception 2019-06-25 20:17:22 +01:00
intel_guc_fw.h
intel_guc_fwif.h drm/i915: make intel_guc_fwif.h self-contained 2019-06-27 10:50:42 +03:00
intel_guc_log.c drm/i915: synchronize_irq() against the actual irq 2019-07-03 10:07:13 +01:00
intel_guc_log.h
intel_guc_reg.h drm/i915: make intel_guc_reg.h self-contained 2019-06-27 10:50:45 +03:00
intel_guc_submission.c drm/i915/execlists: Preempt-to-busy 2019-06-20 16:52:36 +01:00
intel_guc_submission.h drm/i915: Move GraphicsTechnology files under gt/ 2019-04-24 21:01:46 +01:00
intel_gvt.c
intel_gvt.h drm/i915: make intel_gvt.h self-contained 2019-06-27 10:50:48 +03:00
intel_huc.c drm/i915: update with_intel_runtime_pm to use the rpm structure 2019-06-14 15:58:33 +01:00
intel_huc.h drm/i915/huc: New HuC status register for Gen11 2019-05-28 10:07:13 +01:00
intel_huc_fw.c drm/i915/huc: Define HuC firmware version for Icelake 2019-05-28 10:07:23 +01:00
intel_huc_fw.h
intel_pm.c drm/i915: Use intel state as much as possible in wm code 2019-07-01 10:32:57 +02:00
intel_pm.h drm/i915: Convert most of atomic commit to take more intel state 2019-07-01 10:32:14 +02:00
intel_renderstate.h
intel_renderstate_gen6.c
intel_renderstate_gen7.c
intel_renderstate_gen8.c
intel_renderstate_gen9.c
intel_runtime_pm.c drm/i915: Fix memleak in runtime wakeref tracking 2019-07-02 16:00:20 +01:00
intel_runtime_pm.h drm/i915: move modesetting core code under display/ 2019-06-17 11:48:32 +03:00
intel_sideband.c drm/i915: Make sandybridge_pcode_read() deal with the second data register 2019-05-27 20:51:48 +03:00
intel_sideband.h drm/i915: Make sandybridge_pcode_read() deal with the second data register 2019-05-27 20:51:48 +03:00
intel_uc.c drm/i915/guc: handle GuC messages received with CTB disabled 2019-06-21 19:47:34 +01:00
intel_uc.h drm/i915/guc: Fix runtime suspend 2019-05-03 08:38:37 +01:00
intel_uc_fw.c drm/i915: Move GEM object domain management from struct_mutex to local 2019-05-28 12:45:29 +01:00
intel_uc_fw.h drm/i915: make intel_uc_fw.h self-contained 2019-06-27 10:50:54 +03:00
intel_uncore.c drm/i915/gvt: decouple check_vgpu() from uncore_init() 2019-06-20 16:34:57 +01:00
intel_uncore.h drm/i915: dynamically allocate forcewake domains 2019-06-20 16:34:56 +01:00
intel_wakeref.c drm/i915: Local debug BUG_ON for intel_wakeref 2019-06-21 19:48:00 +01:00
intel_wakeref.h drm/i915: Add a wakeref getter for iff the wakeref is already active 2019-06-26 18:01:01 +01:00
intel_wopcm.c drm/i915/gt: Fixup kerneldoc parameters 2019-06-21 16:04:09 +01:00
intel_wopcm.h drm/i915: Stop using I915_READ/WRITE in intel_wopcm_init_hw 2019-06-21 13:48:32 +01:00