/linux-master/drivers/gpu/drm/xe/ |
H A D | xe_gt_ccs_mode.h | 14 void xe_gt_apply_ccs_mode(struct xe_gt *gt); 15 int xe_gt_ccs_mode_sysfs_init(struct xe_gt *gt); 17 static inline bool xe_gt_ccs_mode_enabled(const struct xe_gt *gt) argument 20 return hweight32(CCS_MASK(gt)) > 1;
|
H A D | xe_gt_sriov_pf.c | 23 static int pf_alloc_metadata(struct xe_gt *gt) argument 25 unsigned int num_vfs = xe_gt_sriov_pf_get_totalvfs(gt); 27 gt->sriov.pf.vfs = drmm_kcalloc(>_to_xe(gt)->drm, 1 + num_vfs, 28 sizeof(*gt->sriov.pf.vfs), GFP_KERNEL); 29 if (!gt->sriov.pf.vfs) 37 * @gt: the &xe_gt to initialize 43 int xe_gt_sriov_pf_init_early(struct xe_gt *gt) argument 47 err = pf_alloc_metadata(gt);
|
H A D | xe_gt_sriov_pf.h | 12 int xe_gt_sriov_pf_init_early(struct xe_gt *gt); 14 static inline int xe_gt_sriov_pf_init_early(struct xe_gt *gt) argument
|
H A D | xe_gt_sriov_pf_helpers.h | 14 * @gt: the PF &xe_gt to assert on 17 * Assert that > belongs to the Physical Function (PF) device and provided &vfid 23 #define xe_gt_sriov_pf_assert_vfid(gt, vfid) xe_sriov_pf_assert_vfid(gt_to_xe(gt), (vfid)) 25 static inline int xe_gt_sriov_pf_get_totalvfs(struct xe_gt *gt) argument 27 return xe_sriov_pf_get_totalvfs(gt_to_xe(gt)); 30 static inline struct mutex *xe_gt_sriov_pf_master_mutex(struct xe_gt *gt) argument 32 return xe_sriov_pf_master_mutex(gt_to_xe(gt));
|
H A D | xe_gt_sriov_pf_policy.c | 37 static int pf_send_policy_klvs(struct xe_gt *gt, const u32 *klvs, u32 num_dwords) argument 40 struct xe_tile *tile = gt_to_tile(gt); 42 struct xe_guc *guc = >->uc.guc; 67 static int pf_push_policy_klvs(struct xe_gt *gt, u32 num_klvs, argument 72 xe_gt_assert(gt, num_klvs == xe_guc_klv_count(klvs, num_dwords)); 74 ret = pf_send_policy_klvs(gt, klvs, num_dwords); 78 struct drm_printer p = xe_gt_info_printer(gt); 80 xe_gt_sriov_notice(gt, "Failed to push %u policy KLV%s (%pe)\n", 89 static int pf_push_policy_u32(struct xe_gt *gt, u16 key, u32 value) argument 96 return pf_push_policy_klvs(gt, 99 pf_update_policy_bool(struct xe_gt *gt, u16 key, bool *policy, bool value) argument 119 pf_update_policy_u32(struct xe_gt *gt, u16 key, u32 *policy, u32 value) argument 138 pf_provision_sched_if_idle(struct xe_gt *gt, bool enable) argument 148 pf_reprovision_sched_if_idle(struct xe_gt *gt) argument 156 pf_sanitize_sched_if_idle(struct xe_gt *gt) argument 173 xe_gt_sriov_pf_policy_set_sched_if_idle(struct xe_gt *gt, bool enable) argument 192 xe_gt_sriov_pf_policy_get_sched_if_idle(struct xe_gt *gt) argument 205 pf_provision_reset_engine(struct xe_gt *gt, bool enable) argument 214 pf_reprovision_reset_engine(struct xe_gt *gt) argument 222 pf_sanitize_reset_engine(struct xe_gt *gt) argument 239 xe_gt_sriov_pf_policy_set_reset_engine(struct xe_gt *gt, bool enable) argument 258 xe_gt_sriov_pf_policy_get_reset_engine(struct xe_gt *gt) argument 271 pf_provision_sample_period(struct xe_gt *gt, u32 value) argument 280 pf_reprovision_sample_period(struct xe_gt *gt) argument 288 pf_sanitize_sample_period(struct xe_gt *gt) argument 305 xe_gt_sriov_pf_policy_set_sample_period(struct xe_gt *gt, u32 value) argument 324 xe_gt_sriov_pf_policy_get_sample_period(struct xe_gt *gt) argument 337 pf_sanitize_guc_policies(struct xe_gt *gt) argument 352 xe_gt_sriov_pf_policy_sanitize(struct xe_gt *gt) argument 368 xe_gt_sriov_pf_policy_reprovision(struct xe_gt *gt, bool reset) argument 409 xe_gt_sriov_pf_policy_print(struct xe_gt *gt, struct drm_printer *p) argument [all...] |
H A D | xe_gt_sriov_pf_config.h | 14 u64 xe_gt_sriov_pf_config_get_ggtt(struct xe_gt *gt, unsigned int vfid); 15 int xe_gt_sriov_pf_config_set_ggtt(struct xe_gt *gt, unsigned int vfid, u64 size); 16 int xe_gt_sriov_pf_config_set_fair_ggtt(struct xe_gt *gt, 18 int xe_gt_sriov_pf_config_bulk_set_ggtt(struct xe_gt *gt, 21 u32 xe_gt_sriov_pf_config_get_ctxs(struct xe_gt *gt, unsigned int vfid); 22 int xe_gt_sriov_pf_config_set_ctxs(struct xe_gt *gt, unsigned int vfid, u32 num_ctxs); 23 int xe_gt_sriov_pf_config_set_fair_ctxs(struct xe_gt *gt, unsigned int vfid, unsigned int num_vfs); 24 int xe_gt_sriov_pf_config_bulk_set_ctxs(struct xe_gt *gt, unsigned int vfid, unsigned int num_vfs, 27 u32 xe_gt_sriov_pf_config_get_dbs(struct xe_gt *gt, unsigned int vfid); 28 int xe_gt_sriov_pf_config_set_dbs(struct xe_gt *gt, unsigne [all...] |
H A D | xe_gt_sriov_pf_policy.h | 14 int xe_gt_sriov_pf_policy_set_sched_if_idle(struct xe_gt *gt, bool enable); 15 bool xe_gt_sriov_pf_policy_get_sched_if_idle(struct xe_gt *gt); 16 int xe_gt_sriov_pf_policy_set_reset_engine(struct xe_gt *gt, bool enable); 17 bool xe_gt_sriov_pf_policy_get_reset_engine(struct xe_gt *gt); 18 int xe_gt_sriov_pf_policy_set_sample_period(struct xe_gt *gt, u32 value); 19 u32 xe_gt_sriov_pf_policy_get_sample_period(struct xe_gt *gt); 21 void xe_gt_sriov_pf_policy_sanitize(struct xe_gt *gt); 22 int xe_gt_sriov_pf_policy_reprovision(struct xe_gt *gt, bool reset); 23 int xe_gt_sriov_pf_policy_print(struct xe_gt *gt, struct drm_printer *p);
|
H A D | xe_gt.c | 62 struct xe_gt *gt; local 64 gt = drmm_kzalloc(&tile_to_xe(tile)->drm, sizeof(*gt), GFP_KERNEL); 65 if (!gt) 68 gt->tile = tile; 69 gt->ordered_wq = alloc_ordered_workqueue("gt-ordered-wq", 0); 71 return gt; 74 void xe_gt_sanitize(struct xe_gt *gt) argument 80 gt 91 xe_gt_remove(struct xe_gt *gt) argument 98 struct xe_gt *gt = arg; local 109 emit_nop_job(struct xe_gt *gt, struct xe_exec_queue *q) argument 150 emit_wa_job(struct xe_gt *gt, struct xe_exec_queue *q) argument 227 xe_gt_record_default_lrcs(struct xe_gt *gt) argument 311 xe_gt_init_early(struct xe_gt *gt) argument 342 dump_pat_on_error(struct xe_gt *gt) argument 353 gt_fw_domain_init(struct xe_gt *gt) argument 413 all_fw_domain_init(struct xe_gt *gt) argument 498 xe_gt_init_hwconfig(struct xe_gt *gt) argument 527 xe_gt_init(struct xe_gt *gt) argument 570 do_gt_reset(struct xe_gt *gt) argument 587 do_gt_restart(struct xe_gt *gt) argument 632 gt_reset(struct xe_gt *gt) argument 695 struct xe_gt *gt = container_of(w, typeof(*gt), reset.worker); local 700 xe_gt_reset_async(struct xe_gt *gt) argument 712 xe_gt_suspend_prepare(struct xe_gt *gt) argument 721 xe_gt_suspend(struct xe_gt *gt) argument 749 xe_gt_resume(struct xe_gt *gt) argument 775 xe_gt_hw_engine(struct xe_gt *gt, enum xe_engine_class class, u16 instance, bool logical) argument 791 xe_gt_any_hw_engine_by_reset_domain(struct xe_gt *gt, enum xe_engine_class class) argument [all...] |
H A D | xe_gt.h | 19 #define CCS_MASK(gt) (((gt)->info.engine_mask & XE_HW_ENGINE_CCS_MASK) >> XE_HW_ENGINE_CCS0) 36 int xe_gt_init_hwconfig(struct xe_gt *gt); 37 int xe_gt_init_early(struct xe_gt *gt); 38 int xe_gt_init(struct xe_gt *gt); 39 int xe_gt_record_default_lrcs(struct xe_gt *gt); 40 void xe_gt_suspend_prepare(struct xe_gt *gt); 41 int xe_gt_suspend(struct xe_gt *gt); 42 int xe_gt_resume(struct xe_gt *gt); 43 void xe_gt_reset_async(struct xe_gt *gt); 61 xe_gt_is_media_type(struct xe_gt *gt) argument 66 xe_gt_is_usm_hwe(struct xe_gt *gt, struct xe_hw_engine *hwe) argument [all...] |
H A D | xe_gt_topology.h | 14 * @gt: GT structure 16 #define for_each_dss(dss, gt) \ 18 (gt)->fuse_topo.g_dss_mask, \ 19 (gt)->fuse_topo.c_dss_mask, \ 24 void xe_gt_topology_init(struct xe_gt *gt); 26 void xe_gt_topology_dump(struct xe_gt *gt, struct drm_printer *p); 34 xe_gt_topology_has_dss_in_quadrant(struct xe_gt *gt, int quad);
|
H A D | xe_mocs.h | 14 void xe_mocs_init_early(struct xe_gt *gt); 15 void xe_mocs_init(struct xe_gt *gt);
|
H A D | xe_gt_sysfs.h | 11 int xe_gt_sysfs_init(struct xe_gt *gt); 16 return container_of(kobj, struct kobj_gt, base)->gt;
|
/linux-master/drivers/gpu/drm/i915/gt/ |
H A D | intel_gt_pm.h | 14 static inline bool intel_gt_pm_is_awake(const struct intel_gt *gt) argument 16 return intel_wakeref_is_active(>->wakeref); 19 static inline void intel_gt_pm_get_untracked(struct intel_gt *gt) argument 21 intel_wakeref_get(>->wakeref); 24 static inline intel_wakeref_t intel_gt_pm_get(struct intel_gt *gt) argument 26 intel_gt_pm_get_untracked(gt); 27 return intel_wakeref_track(>->wakeref); 30 static inline void __intel_gt_pm_get(struct intel_gt *gt) argument 32 __intel_wakeref_get(>->wakeref); 35 static inline intel_wakeref_t intel_gt_pm_get_if_awake(struct intel_gt *gt) argument 43 intel_gt_pm_might_get(struct intel_gt *gt) argument 48 intel_gt_pm_put_untracked(struct intel_gt *gt) argument 53 intel_gt_pm_put(struct intel_gt *gt, intel_wakeref_t handle) argument 59 intel_gt_pm_put_async_untracked(struct intel_gt *gt) argument 64 intel_gt_pm_might_put(struct intel_gt *gt) argument 69 intel_gt_pm_put_async(struct intel_gt *gt, intel_wakeref_t handle) argument 89 intel_gt_pm_wait_for_idle(struct intel_gt *gt) argument 108 is_mock_gt(const struct intel_gt *gt) argument [all...] |
H A D | intel_gt_pm.c | 28 static void user_forcewake(struct intel_gt *gt, bool suspend) argument 30 int count = atomic_read(>->user_wakeref); 37 wakeref = intel_gt_pm_get(gt); 39 GEM_BUG_ON(count > atomic_read(>->wakeref.count)); 40 atomic_sub(count, >->wakeref.count); 42 atomic_add(count, >->wakeref.count); 44 intel_gt_pm_put(gt, wakeref); 47 static void runtime_begin(struct intel_gt *gt) argument 50 write_seqcount_begin(>->stats.lock); 51 gt 57 runtime_end(struct intel_gt *gt) argument 71 struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); local 103 struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); local 133 intel_gt_pm_init_early(struct intel_gt *gt) argument 146 intel_gt_pm_init(struct intel_gt *gt) argument 157 reset_engines(struct intel_gt *gt) argument 165 gt_sanitize(struct intel_gt *gt, bool force) argument 216 intel_gt_pm_fini(struct intel_gt *gt) argument 221 intel_gt_resume_early(struct intel_gt *gt) argument 236 intel_gt_resume(struct intel_gt *gt) argument 309 wait_for_suspend(struct intel_gt *gt) argument 326 intel_gt_suspend_prepare(struct intel_gt *gt) argument 342 intel_gt_suspend_late(struct intel_gt *gt) argument 380 intel_gt_runtime_suspend(struct intel_gt *gt) argument 388 intel_gt_runtime_resume(struct intel_gt *gt) argument 404 __intel_gt_get_awake_time(const struct intel_gt *gt) argument 415 intel_gt_get_awake_time(const struct intel_gt *gt) argument [all...] |
H A D | intel_gt_clock_utils.h | 13 void intel_gt_init_clock_frequency(struct intel_gt *gt); 16 void intel_gt_check_clock_frequency(const struct intel_gt *gt); 18 static inline void intel_gt_check_clock_frequency(const struct intel_gt *gt) {} argument 21 u64 intel_gt_clock_interval_to_ns(const struct intel_gt *gt, u64 count); 22 u64 intel_gt_pm_interval_to_ns(const struct intel_gt *gt, u64 count); 24 u64 intel_gt_ns_to_clock_interval(const struct intel_gt *gt, u64 ns); 25 u64 intel_gt_ns_to_pm_interval(const struct intel_gt *gt, u64 ns);
|
H A D | intel_tlb.h | 14 void intel_gt_invalidate_tlb_full(struct intel_gt *gt, u32 seqno); 16 void intel_gt_init_tlb(struct intel_gt *gt); 17 void intel_gt_fini_tlb(struct intel_gt *gt); 19 static inline u32 intel_gt_tlb_seqno(const struct intel_gt *gt) argument 21 return seqprop_sequence(>->tlb.seqno); 24 static inline u32 intel_gt_next_invalidate_tlb_full(const struct intel_gt *gt) argument 26 return intel_gt_tlb_seqno(gt) | 1;
|
H A D | intel_gt_pm_irq.h | 13 void gen6_gt_pm_unmask_irq(struct intel_gt *gt, u32 mask); 14 void gen6_gt_pm_mask_irq(struct intel_gt *gt, u32 mask); 16 void gen6_gt_pm_enable_irq(struct intel_gt *gt, u32 enable_mask); 17 void gen6_gt_pm_disable_irq(struct intel_gt *gt, u32 disable_mask); 19 void gen6_gt_pm_reset_iir(struct intel_gt *gt, u32 reset_mask);
|
H A D | intel_reset.h | 21 void intel_gt_init_reset(struct intel_gt *gt); 22 void intel_gt_fini_reset(struct intel_gt *gt); 25 void intel_gt_handle_error(struct intel_gt *gt, 31 void intel_gt_reset(struct intel_gt *gt, 41 int __must_check intel_gt_reset_trylock(struct intel_gt *gt, int *srcu); 42 int __must_check intel_gt_reset_lock_interruptible(struct intel_gt *gt, int *srcu); 43 void intel_gt_reset_unlock(struct intel_gt *gt, int tag); 45 void intel_gt_set_wedged(struct intel_gt *gt); 46 bool intel_gt_unset_wedged(struct intel_gt *gt); 47 int intel_gt_terminally_wedged(struct intel_gt *gt); 64 struct intel_gt *gt; member in struct:intel_wedge_me [all...] |
H A D | intel_mocs.h | 37 void intel_mocs_init(struct intel_gt *gt); 39 void intel_set_mocs_index(struct intel_gt *gt);
|
H A D | intel_gt_pm_irq.c | 13 static void write_pm_imr(struct intel_gt *gt) argument 15 struct drm_i915_private *i915 = gt->i915; 16 struct intel_uncore *uncore = gt->uncore; 17 u32 mask = gt->pm_imr; 32 static void gen6_gt_pm_update_irq(struct intel_gt *gt, argument 40 lockdep_assert_held(gt->irq_lock); 42 new_val = gt->pm_imr; 46 if (new_val != gt->pm_imr) { 47 gt->pm_imr = new_val; 48 write_pm_imr(gt); 52 gen6_gt_pm_unmask_irq(struct intel_gt *gt, u32 mask) argument 57 gen6_gt_pm_mask_irq(struct intel_gt *gt, u32 mask) argument 62 gen6_gt_pm_reset_iir(struct intel_gt *gt, u32 reset_mask) argument 74 write_pm_ier(struct intel_gt *gt) argument 93 gen6_gt_pm_enable_irq(struct intel_gt *gt, u32 enable_mask) argument 102 gen6_gt_pm_disable_irq(struct intel_gt *gt, u32 disable_mask) argument [all...] |
/linux-master/drivers/gpu/drm/i915/selftests/ |
H A D | igt_reset.c | 9 #include "gt/intel_engine.h" 10 #include "gt/intel_gt.h" 14 void igt_global_reset_lock(struct intel_gt *gt) argument 19 pr_debug("%s: current gpu_error=%08lx\n", __func__, gt->reset.flags); 21 while (test_and_set_bit(I915_RESET_BACKOFF, >->reset.flags)) 22 wait_event(gt->reset.queue, 23 !test_bit(I915_RESET_BACKOFF, >->reset.flags)); 25 for_each_engine(engine, gt, id) { 27 >->reset.flags)) 28 wait_on_bit(> 33 igt_global_reset_unlock(struct intel_gt *gt) argument 45 igt_force_reset(struct intel_gt *gt) argument [all...] |
H A D | igt_flush_test.c | 7 #include "gt/intel_gt.h" 8 #include "gt/intel_gt_requests.h" 17 struct intel_gt *gt; local 21 for_each_gt(gt, i915, i) { 22 if (intel_gt_is_wedged(gt)) 27 if (intel_gt_wait_for_idle(gt, HZ * 3) == -ETIME) { 35 intel_gt_set_wedged(gt);
|
H A D | igt_reset.h | 14 void igt_global_reset_lock(struct intel_gt *gt); 15 void igt_global_reset_unlock(struct intel_gt *gt); 16 bool igt_force_reset(struct intel_gt *gt);
|
/linux-master/drivers/gpu/drm/xe/compat-i915-headers/ |
H A D | intel_gt_types.h | 9 #define intel_gt_support_legacy_fencing(gt) 0
|
/linux-master/drivers/gpu/drm/i915/pxp/ |
H A D | intel_pxp_irq.c | 7 #include "gt/intel_gt_irq.h" 8 #include "gt/intel_gt_regs.h" 9 #include "gt/intel_gt_types.h" 27 struct intel_gt *gt; local 32 gt = pxp->ctrl_gt; 34 lockdep_assert_held(gt->irq_lock); 54 static inline void __pxp_set_interrupts(struct intel_gt *gt, u32 interrupts) argument 56 struct intel_uncore *uncore = gt->uncore; 63 static inline void pxp_irq_reset(struct intel_gt *gt) argument 65 spin_lock_irq(gt 72 struct intel_gt *gt = pxp->ctrl_gt; local 87 struct intel_gt *gt = pxp->ctrl_gt; local [all...] |