mirror_ubuntu-kernels/drivers/gpu/drm/i915/gt
Vinay Belgaumkar 00598d5c69 drm/i915: Get PM ref before accessing HW register
Seeing these errors when GT is likely in suspend state-
"RPM wakelock ref not held during HW access"

Ensure GT is awake before trying to access HW registers. Avoid
reading the register if that is not the case.

Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Fixes: 41e5c17ebf ("drm/i915/guc/slpc: Sysfs hooks for SLPC")
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210907232704.12982-1-vinay.belgaumkar@intel.com
(cherry picked from commit f25e3908b9)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2021-09-14 10:57:14 +03:00
..
selftests
shaders
uc drm/i915/guc: drop guc_communication_enabled 2021-09-14 10:56:49 +03:00
debugfs_engines.c
debugfs_engines.h
debugfs_gt_pm.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
debugfs_gt_pm.h
debugfs_gt.c drm/i915/gt: Add some missing blank lines after declaration 2021-03-24 19:30:35 +01:00
debugfs_gt.h
gen2_engine_cs.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
gen2_engine_cs.h
gen6_engine_cs.c drm/i915: Do not share hwsp across contexts any more, v8. 2021-03-24 11:38:56 +01:00
gen6_engine_cs.h
gen6_ppgtt.c drm/i915: drop the __i915_active_call pointer packing 2021-05-05 11:36:23 +01:00
gen6_ppgtt.h drm/i915/gt: Replace unnecessary ',' with '; ' 2021-03-24 19:30:35 +01:00
gen6_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen7_renderclear.c drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7 2021-05-18 08:56:53 -04:00
gen7_renderclear.h
gen7_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen8_engine_cs.c drm/i915/xehp: Extra media engines - Part 1 (engine definitions) 2021-07-24 07:16:50 -07:00
gen8_engine_cs.h
gen8_ppgtt.c drm/i915/gtt: drop the page table optimisation 2021-07-14 08:46:18 -04:00
gen8_ppgtt.h drm/i915/xelpd: First stab at DPT support 2021-05-07 11:13:01 +03:00
gen8_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
gen9_renderstate.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
hsw_clear_kernel.c
intel_breadcrumbs_types.h drm/i915/guc: Direct all breadcrumbs for a class to single breadcrumbs 2021-07-27 17:31:35 -07:00
intel_breadcrumbs.c drm/i915/guc: Implement GuC priority management 2021-07-27 17:32:27 -07:00
intel_breadcrumbs.h drm/i915/guc: Direct all breadcrumbs for a class to single breadcrumbs 2021-07-27 17:31:35 -07:00
intel_context_param.h drm/i915/gem: Set the watchdog timeout directly in intel_context_set_gem (v2) 2021-07-08 19:43:49 +02:00
intel_context_sseu.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
intel_context_types.h drm/i915/guc: Implement GuC priority management 2021-07-27 17:32:27 -07:00
intel_context.c drm/i915: move intel_context slab to direct module init/exit 2021-07-28 16:45:58 +02:00
intel_context.h drm/i915: move intel_context slab to direct module init/exit 2021-07-28 16:45:58 +02:00
intel_engine_cs.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
intel_engine_heartbeat.c drm/i915/guc: Fix for error capture after full GPU reset with GuC 2021-07-27 17:32:02 -07:00
intel_engine_heartbeat.h drm/i915: Reset GPU immediately if submission is disabled 2021-07-27 17:31:45 -07:00
intel_engine_pm.c drm/i915: Reset sched_engine.no_priolist immediately after dequeue 2021-06-18 15:13:20 -07:00
intel_engine_pm.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_engine_stats.h drm/i915/gt: Convert stats.active to plain unsigned int 2021-01-15 21:30:24 +00:00
intel_engine_types.h drm/i915/selftest: Fix workarounds selftest for GuC submission 2021-07-27 17:32:18 -07:00
intel_engine_user.c drm/i915/guc: Implement GuC priority management 2021-07-27 17:32:27 -07:00
intel_engine_user.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_engine.h drm/i915/gt: rename CNL references in intel_engine.h 2021-07-29 10:06:09 -07:00
intel_execlists_submission.c drm/i915/guc: Support request cancellation 2021-07-27 17:32:14 -07:00
intel_execlists_submission.h drm/i915/guc: GuC virtual engines 2021-07-27 17:31:28 -07:00
intel_ggtt_fencing.c drm/i915/gt: Fix -EDEADLK handling regression 2021-07-13 15:56:21 -04:00
intel_ggtt_fencing.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ggtt.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
intel_gpu_commands.h drm/i915/gt: Pipelined page migration 2021-06-17 14:23:05 +01:00
intel_gt_buffer_pool_types.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_gt_buffer_pool.c drm/i915: drop the __i915_active_call pointer packing 2021-05-05 11:36:23 +01:00
intel_gt_buffer_pool.h drm/i915: Defer pin calls in buffer pool until first use by caller. 2021-03-24 17:27:20 +01:00
intel_gt_clock_utils.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
intel_gt_clock_utils.h
intel_gt_irq.c drm/i915/xehp: Extra media engines - Part 2 (interrupts) 2021-07-24 07:17:12 -07:00
intel_gt_irq.h drm/i915/gt: Move CS interrupt handler to the backend 2021-05-25 15:14:40 +02:00
intel_gt_pm_irq.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
intel_gt_pm_irq.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_gt_pm.c drm/i915: Remove i915_globals 2021-07-28 17:19:52 +02:00
intel_gt_pm.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_gt_requests.c drm/i915/guc: Update intel_gt_wait_for_idle to work with GuC 2021-07-22 10:07:23 -07:00
intel_gt_requests.h drm/i915: use linux/stddef.h due to "isystem: trim/fixup stdarg.h and other headers" 2021-09-06 09:31:23 +02:00
intel_gt_types.h drm/i915/xehp: handle new steering options 2021-08-05 07:59:57 -07:00
intel_gt.c drm/i915/dg2: Update steering tables 2021-08-05 08:06:01 -07:00
intel_gt.h drm/i915/guc: Update intel_gt_wait_for_idle to work with GuC 2021-07-22 10:07:23 -07:00
intel_gtt.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
intel_gtt.h drm/i915/gt: Drop i915_address_space::file (v2) 2021-07-08 19:48:35 +02:00
intel_llc_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_llc.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
intel_llc.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_lrc_reg.h drm/i915/guc: Implement GuC context operations for new inteface 2021-07-22 10:07:08 -07:00
intel_lrc.c drm/i915/gt: remove GRAPHICS_VER == 10 2021-07-29 10:06:10 -07:00
intel_lrc.h drm/i915/gt: Exercise lrc_wa_ctx initialisation failure 2021-01-09 16:02:57 +00:00
intel_migrate_types.h drm/i915/gt: Pipelined page migration 2021-06-17 14:23:05 +01:00
intel_migrate.c drm/i915/gt: Potential error pointer dereference in pinned_context() 2021-08-24 17:23:03 +03:00
intel_migrate.h drm/i915/gt: Pipelined clear 2021-06-17 14:23:09 +01:00
intel_mocs.c drm/i915/gt: remove explicit CNL handling from intel_mocs.c 2021-07-29 10:06:06 -07:00
intel_mocs.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ppgtt.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
intel_rc6_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_rc6.c drm/i915/guc/rc: Setup and enable GuCRC feature 2021-08-03 16:05:44 -07:00
intel_rc6.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_region_lmem.c drm/i915/xehp: handle new steering options 2021-08-05 07:59:57 -07:00
intel_region_lmem.h drm/i915: setup the LMEM region 2021-03-24 19:30:36 +01:00
intel_renderstate.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
intel_renderstate.h drm/i915: Break out dma_resv ww locking utilities to separate files 2021-06-17 14:22:59 +01:00
intel_reset_types.h drm/i915/gt: Remove repeated words from comments 2021-03-24 19:30:35 +01:00
intel_reset.c drm/i915/guc: Implement banned contexts for GuC submission 2021-07-27 17:32:12 -07:00
intel_reset.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ring_submission.c drm/i915/guc: Support request cancellation 2021-07-27 17:32:14 -07:00
intel_ring_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_ring.c drm/i915: Update the helper to set correct mapping 2021-04-27 16:21:11 +01:00
intel_ring.h drm/i915/gt: Pipelined page migration 2021-06-17 14:23:05 +01:00
intel_rps_types.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
intel_rps.c drm/i915: Get PM ref before accessing HW register 2021-09-14 10:57:14 +03:00
intel_rps.h drm/i915/guc/slpc: Sysfs hooks for SLPC 2021-08-03 16:05:40 -07:00
intel_sseu_debugfs.c drm/i915/xehpsdv: Add maximum sseu limits 2021-08-03 21:09:42 -07:00
intel_sseu_debugfs.h
intel_sseu.c drm/i915/xehp: handle new steering options 2021-08-05 07:59:57 -07:00
intel_sseu.h drm/i915/xehp: handle new steering options 2021-08-05 07:59:57 -07:00
intel_timeline_types.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_timeline.c drm/i915: Fix syncmap memory leak 2021-08-26 07:31:52 -04:00
intel_timeline.h Merge tag 'drm-intel-gt-next-2021-04-06' of git://anongit.freedesktop.org/drm/drm-intel into drm-next 2021-04-08 12:46:12 +10:00
intel_workarounds_types.h drm/i915/guc: Provide mmio list to be saved/restored on engine reset 2021-07-27 17:31:55 -07:00
intel_workarounds.c drm/i915/dg2: Add SQIDI steering 2021-08-05 08:07:25 -07:00
intel_workarounds.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
ivb_clear_kernel.c
mock_engine.c drm/i915: Move active request tracking to a vfunc 2021-07-27 17:31:39 -07:00
mock_engine.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_context.c drm/i915/guc: Disable engine barriers with GuC during unpin 2021-07-22 10:07:15 -07:00
selftest_engine_cs.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_engine_heartbeat.c drm/i915/selftest: Fix hangcheck self test for GuC submission 2021-07-27 17:32:23 -07:00
selftest_engine_heartbeat.h drm/i915/selftest: Fix hangcheck self test for GuC submission 2021-07-27 17:32:23 -07:00
selftest_engine_pm.c drm/i915/selftest: Extend ctx_timestamp ICL workaround to GEN11 2021-06-25 12:08:35 +01:00
selftest_engine.c drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_engine.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_execlists.c drm/i915/guc: GuC virtual engines 2021-07-27 17:31:28 -07:00
selftest_gt_pm.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_hangcheck.c drm/i915/selftest: Fix use of err in igt_reset_{fail, nop}_engine() 2021-08-24 17:23:10 +03:00
selftest_llc.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_llc.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_lrc.c drm/i915: Move submission tasklet to i915_sched_engine 2021-06-18 15:14:42 -07:00
selftest_migrate.c drm/i915/gt: Setup a default migration context on the GT 2021-06-17 14:23:11 +01:00
selftest_mocs.c drm/i915/selftest: Fix hangcheck self test for GuC submission 2021-07-27 17:32:23 -07:00
selftest_rc6.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_rc6.h drm/i915/gt: SPDX cleanup 2021-03-24 19:30:34 +01:00
selftest_reset.c drm/i915: Move submission tasklet to i915_sched_engine 2021-06-18 15:14:42 -07:00
selftest_ring_submission.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_ring.c
selftest_rps.c drm/i915/gt: replace IS_GEN and friends with GRAPHICS_VER 2021-06-05 15:09:06 -07:00
selftest_rps.h
selftest_slpc.c drm/i915/guc/slpc: Add SLPC selftest 2021-08-03 16:05:42 -07:00
selftest_timeline.c drm/i915: Stop storing the ring size in the ring pointer (v3) 2021-07-08 19:43:35 +02:00
selftest_workarounds.c drm/i915/selftest: Fix hangcheck self test for GuC submission 2021-07-27 17:32:23 -07:00
shmem_utils.c drm/i915/dg1: Fix mapping type for default state object 2021-04-27 16:19:52 +01:00
shmem_utils.h
st_shmem_utils.c
sysfs_engines.c
sysfs_engines.h