/kernel/linux/linux-6.6/drivers/gpu/drm/i915/gvt/ |
H A D | scheduler.c | 412 static void release_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) in release_shadow_wa_ctx() argument 414 if (!wa_ctx->indirect_ctx.obj) in release_shadow_wa_ctx() 417 i915_gem_object_lock(wa_ctx->indirect_ctx.obj, NULL); in release_shadow_wa_ctx() 418 i915_gem_object_unpin_map(wa_ctx->indirect_ctx.obj); in release_shadow_wa_ctx() 419 i915_gem_object_unlock(wa_ctx->indirect_ctx.obj); in release_shadow_wa_ctx() 420 i915_gem_object_put(wa_ctx->indirect_ctx.obj); in release_shadow_wa_ctx() 422 wa_ctx->indirect_ctx.obj = NULL; in release_shadow_wa_ctx() 423 wa_ctx->indirect_ctx.shadow_va = NULL; in release_shadow_wa_ctx() 480 * shadow it as well, include ringbuffer,wa_ctx and ctx. 506 workload->wa_ctx in intel_gvt_scan_and_shadow_workload() 590 update_wa_ctx_2_shadow_ctx(struct intel_shadow_wa_ctx *wa_ctx) update_wa_ctx_2_shadow_ctx() argument 606 prepare_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) prepare_shadow_wa_ctx() argument [all...] |
H A D | cmd_parser.c | 2873 static int scan_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) in scan_wa_ctx() argument 2879 struct intel_vgpu_workload *workload = container_of(wa_ctx, in scan_wa_ctx() 2881 wa_ctx); in scan_wa_ctx() 2884 if (WARN_ON(!IS_ALIGNED(wa_ctx->indirect_ctx.guest_gma, in scan_wa_ctx() 2888 ring_tail = wa_ctx->indirect_ctx.size + 3 * sizeof(u32); in scan_wa_ctx() 2889 ring_size = round_up(wa_ctx->indirect_ctx.size + CACHELINE_BYTES, in scan_wa_ctx() 2891 gma_head = wa_ctx->indirect_ctx.guest_gma; in scan_wa_ctx() 2892 gma_tail = wa_ctx->indirect_ctx.guest_gma + ring_tail; in scan_wa_ctx() 2898 s.ring_start = wa_ctx->indirect_ctx.guest_gma; in scan_wa_ctx() 2902 s.rb_va = wa_ctx in scan_wa_ctx() 2994 shadow_indirect_ctx(struct intel_shadow_wa_ctx *wa_ctx) shadow_indirect_ctx() argument 3048 combine_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) combine_wa_ctx() argument 3067 intel_gvt_scan_and_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) intel_gvt_scan_and_shadow_wa_ctx() argument [all...] |
H A D | cmd_parser.h | 52 int intel_gvt_scan_and_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx);
|
H A D | scheduler.h | 119 struct intel_shadow_wa_ctx wa_ctx; member
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gvt/ |
H A D | scheduler.c | 394 static void release_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) in release_shadow_wa_ctx() argument 396 if (!wa_ctx->indirect_ctx.obj) in release_shadow_wa_ctx() 399 i915_gem_object_unpin_map(wa_ctx->indirect_ctx.obj); in release_shadow_wa_ctx() 400 i915_gem_object_put(wa_ctx->indirect_ctx.obj); in release_shadow_wa_ctx() 402 wa_ctx->indirect_ctx.obj = NULL; in release_shadow_wa_ctx() 403 wa_ctx->indirect_ctx.shadow_va = NULL; in release_shadow_wa_ctx() 460 * shadow it as well, include ringbuffer,wa_ctx and ctx. 486 workload->wa_ctx.indirect_ctx.size) { in intel_gvt_scan_and_shadow_workload() 487 ret = intel_gvt_scan_and_shadow_wa_ctx(&workload->wa_ctx); in intel_gvt_scan_and_shadow_workload() 496 release_shadow_wa_ctx(&workload->wa_ctx); in intel_gvt_scan_and_shadow_workload() 559 update_wa_ctx_2_shadow_ctx(struct intel_shadow_wa_ctx *wa_ctx) update_wa_ctx_2_shadow_ctx() argument 575 prepare_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) prepare_shadow_wa_ctx() argument [all...] |
H A D | cmd_parser.c | 2836 static int scan_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) in scan_wa_ctx() argument 2842 struct intel_vgpu_workload *workload = container_of(wa_ctx, in scan_wa_ctx() 2844 wa_ctx); in scan_wa_ctx() 2847 if (WARN_ON(!IS_ALIGNED(wa_ctx->indirect_ctx.guest_gma, in scan_wa_ctx() 2851 ring_tail = wa_ctx->indirect_ctx.size + 3 * sizeof(u32); in scan_wa_ctx() 2852 ring_size = round_up(wa_ctx->indirect_ctx.size + CACHELINE_BYTES, in scan_wa_ctx() 2854 gma_head = wa_ctx->indirect_ctx.guest_gma; in scan_wa_ctx() 2855 gma_tail = wa_ctx->indirect_ctx.guest_gma + ring_tail; in scan_wa_ctx() 2856 gma_bottom = wa_ctx->indirect_ctx.guest_gma + ring_size; in scan_wa_ctx() 2862 s.ring_start = wa_ctx in scan_wa_ctx() 2958 shadow_indirect_ctx(struct intel_shadow_wa_ctx *wa_ctx) shadow_indirect_ctx() argument 3012 combine_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) combine_wa_ctx() argument 3031 intel_gvt_scan_and_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx) intel_gvt_scan_and_shadow_wa_ctx() argument [all...] |
H A D | cmd_parser.h | 51 int intel_gvt_scan_and_shadow_wa_ctx(struct intel_shadow_wa_ctx *wa_ctx);
|
H A D | scheduler.h | 114 struct intel_shadow_wa_ctx wa_ctx; member
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/gt/ |
H A D | selftest_ring_submission.c | 223 engine->wa_ctx.vma = bb; in __live_ctx_switch_wa() 238 intel_context_put(engine->wa_ctx.vma->private); in __live_ctx_switch_wa() 239 i915_vma_unpin_and_release(&engine->wa_ctx.vma, I915_VMA_RELEASE_MAP); in __live_ctx_switch_wa() 272 saved_wa = fetch_and_zero(&engine->wa_ctx.vma); in live_ctx_switch_wa() 280 engine->wa_ctx.vma = saved_wa; in live_ctx_switch_wa()
|
H A D | intel_ring_submission.c | 866 engine->wa_ctx.vma->node.start, 0, in clear_residuals() 888 if (engine->wa_ctx.vma && ce != engine->kernel_context) { in switch_context() 889 if (engine->wa_ctx.vma->private != ce && in switch_context() 895 residuals = &engine->wa_ctx.vma->private; in switch_context() 1032 if (engine->wa_ctx.vma) { in ring_release() 1033 intel_context_put(engine->wa_ctx.vma->private); in ring_release() 1034 i915_vma_unpin_and_release(&engine->wa_ctx.vma, 0); in ring_release() 1228 engine->wa_ctx.vma = vma; in gen7_ctx_switch_bb_init()
|
H A D | intel_lrc.c | 3485 GEM_BUG_ON(engine->wa_ctx.indirect_ctx.size); in __execlists_update_reg_state() 3738 * and at this point we don't have multiple wa_ctx batch buffers. 3928 engine->wa_ctx.vma = vma; in lrc_setup_wa_ctx() 3938 i915_vma_unpin_and_release(&engine->wa_ctx.vma, 0); in lrc_destroy_wa_ctx() 3941 memset(&engine->wa_ctx, 0, sizeof(engine->wa_ctx)); in lrc_destroy_wa_ctx() 3948 struct i915_ctx_workarounds *wa_ctx = &engine->wa_ctx; in intel_init_workaround_bb() local 3949 struct i915_wa_ctx_bb *wa_bb[2] = { &wa_ctx->indirect_ctx, in intel_init_workaround_bb() 3950 &wa_ctx in intel_init_workaround_bb() 5243 const struct i915_ctx_workarounds * const wa_ctx = &engine->wa_ctx; init_wa_bb_reg_state() local [all...] |
H A D | intel_engine_types.h | 405 struct i915_ctx_workarounds wa_ctx; member
|
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/gt/ |
H A D | selftest_ring_submission.c | 223 engine->wa_ctx.vma = bb; in __live_ctx_switch_wa() 238 intel_context_put(engine->wa_ctx.vma->private); in __live_ctx_switch_wa() 239 i915_vma_unpin_and_release(&engine->wa_ctx.vma, I915_VMA_RELEASE_MAP); in __live_ctx_switch_wa() 272 saved_wa = fetch_and_zero(&engine->wa_ctx.vma); in live_ctx_switch_wa() 280 engine->wa_ctx.vma = saved_wa; in live_ctx_switch_wa()
|
H A D | intel_lrc.c | 875 const struct i915_ctx_workarounds * const wa_ctx = &engine->wa_ctx; in init_wa_bb_regs() local 877 if (wa_ctx->per_ctx.size) { in init_wa_bb_regs() 878 const u32 ggtt_offset = i915_ggtt_offset(wa_ctx->vma); in init_wa_bb_regs() 882 (ggtt_offset + wa_ctx->per_ctx.offset) | 0x01; in init_wa_bb_regs() 885 if (wa_ctx->indirect_ctx.size) { in init_wa_bb_regs() 887 i915_ggtt_offset(wa_ctx->vma) + in init_wa_bb_regs() 888 wa_ctx->indirect_ctx.offset, in init_wa_bb_regs() 889 wa_ctx->indirect_ctx.size); in init_wa_bb_regs() 1506 GEM_BUG_ON(engine->wa_ctx in lrc_update_regs() 1777 struct i915_ctx_workarounds *wa_ctx = &engine->wa_ctx; lrc_init_wa_ctx() local [all...] |
H A D | intel_ring_submission.c | 900 i915_vma_offset(engine->wa_ctx.vma), 0, in clear_residuals() 922 if (engine->wa_ctx.vma && ce != engine->kernel_context) { in switch_context() 923 if (engine->wa_ctx.vma->private != ce && in switch_context() 929 residuals = &engine->wa_ctx.vma->private; in switch_context() 1062 if (engine->wa_ctx.vma) { in ring_release() 1063 intel_context_put(engine->wa_ctx.vma->private); in ring_release() 1064 i915_vma_unpin_and_release(&engine->wa_ctx.vma, 0); in ring_release() 1267 engine->wa_ctx.vma = vma; in gen7_ctx_switch_bb_init()
|
H A D | intel_engine_types.h | 481 struct i915_ctx_workarounds wa_ctx; member
|
/kernel/linux/linux-5.10/drivers/gpu/drm/i915/ |
H A D | i915_gpu_error.c | 1427 engine->wa_ctx.vma, in intel_engine_coredump_add_vma()
|
/kernel/linux/linux-6.6/drivers/gpu/drm/i915/ |
H A D | i915_gpu_error.c | 1622 add_vma_coredump(ee, engine->gt, engine->wa_ctx.vma, in intel_engine_coredump_add_vma()
|