Home
last modified time | relevance | path

Searched refs:gt (Results 1 – 25 of 145) sorted by relevance

123456

/Linux-v5.4/drivers/gpu/drm/i915/gt/
Dintel_gt_irq.c39 gen11_gt_engine_identity(struct intel_gt *gt, in gen11_gt_engine_identity() argument
42 void __iomem * const regs = gt->uncore->regs; in gen11_gt_engine_identity()
46 lockdep_assert_held(&gt->irq_lock); in gen11_gt_engine_identity()
73 gen11_other_irq_handler(struct intel_gt *gt, const u8 instance, in gen11_other_irq_handler() argument
77 return guc_irq_handler(&gt->uc.guc, iir); in gen11_other_irq_handler()
80 return gen11_rps_irq_handler(gt, iir); in gen11_other_irq_handler()
87 gen11_engine_irq_handler(struct intel_gt *gt, const u8 class, in gen11_engine_irq_handler() argument
93 engine = gt->engine_class[class][instance]; in gen11_engine_irq_handler()
105 gen11_gt_identity_handler(struct intel_gt *gt, const u32 identity) in gen11_gt_identity_handler() argument
115 return gen11_engine_irq_handler(gt, class, instance, intr); in gen11_gt_identity_handler()
[all …]
Dselftest_reset.c12 struct intel_gt *gt = arg; in igt_global_reset() local
19 igt_global_reset_lock(gt); in igt_global_reset()
20 wakeref = intel_runtime_pm_get(&gt->i915->runtime_pm); in igt_global_reset()
22 reset_count = i915_reset_count(&gt->i915->gpu_error); in igt_global_reset()
24 intel_gt_reset(gt, ALL_ENGINES, NULL); in igt_global_reset()
26 if (i915_reset_count(&gt->i915->gpu_error) == reset_count) { in igt_global_reset()
31 intel_runtime_pm_put(&gt->i915->runtime_pm, wakeref); in igt_global_reset()
32 igt_global_reset_unlock(gt); in igt_global_reset()
34 if (intel_gt_is_wedged(gt)) in igt_global_reset()
42 struct intel_gt *gt = arg; in igt_wedged_reset() local
[all …]
Dintel_reset.c145 static int i915_do_reset(struct intel_gt *gt, in i915_do_reset() argument
149 struct pci_dev *pdev = gt->i915->drm.pdev; in i915_do_reset()
174 static int g33_do_reset(struct intel_gt *gt, in g33_do_reset() argument
178 struct pci_dev *pdev = gt->i915->drm.pdev; in g33_do_reset()
184 static int g4x_do_reset(struct intel_gt *gt, in g4x_do_reset() argument
188 struct pci_dev *pdev = gt->i915->drm.pdev; in g4x_do_reset()
189 struct intel_uncore *uncore = gt->uncore; in g4x_do_reset()
221 static int ironlake_do_reset(struct intel_gt *gt, in ironlake_do_reset() argument
225 struct intel_uncore *uncore = gt->uncore; in ironlake_do_reset()
257 static int gen6_hw_domain_reset(struct intel_gt *gt, u32 hw_domain_mask) in gen6_hw_domain_reset() argument
[all …]
Dintel_gt_pm_irq.c13 static void write_pm_imr(struct intel_gt *gt) in write_pm_imr() argument
15 struct drm_i915_private *i915 = gt->i915; in write_pm_imr()
16 struct intel_uncore *uncore = gt->uncore; in write_pm_imr()
17 u32 mask = gt->pm_imr; in write_pm_imr()
32 static void gen6_gt_pm_update_irq(struct intel_gt *gt, in gen6_gt_pm_update_irq() argument
40 lockdep_assert_held(&gt->irq_lock); in gen6_gt_pm_update_irq()
42 new_val = gt->pm_imr; in gen6_gt_pm_update_irq()
46 if (new_val != gt->pm_imr) { in gen6_gt_pm_update_irq()
47 gt->pm_imr = new_val; in gen6_gt_pm_update_irq()
48 write_pm_imr(gt); in gen6_gt_pm_update_irq()
[all …]
Dintel_gt_pm.c17 blocking_notifier_call_chain(&i915->gt.pm_notifications, state, i915); in pm_notify()
22 struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); in __gt_unpark() local
23 struct drm_i915_private *i915 = gt->i915; in __gt_unpark()
38 gt->awake = intel_display_power_get(i915, POWER_DOMAIN_GT_IRQ); in __gt_unpark()
39 GEM_BUG_ON(!gt->awake); in __gt_unpark()
52 intel_gt_queue_hangcheck(gt); in __gt_unpark()
62 container_of(wf, typeof(*i915), gt.wakeref); in __gt_park()
63 intel_wakeref_t wakeref = fetch_and_zero(&i915->gt.awake); in __gt_park()
93 void intel_gt_pm_init_early(struct intel_gt *gt) in intel_gt_pm_init_early() argument
95 intel_wakeref_init(&gt->wakeref, &gt->i915->runtime_pm, &wf_ops); in intel_gt_pm_init_early()
[all …]
Dselftest_hangcheck.c45 struct intel_gt *gt; member
53 static int hang_init(struct hang *h, struct intel_gt *gt) in hang_init() argument
59 h->gt = gt; in hang_init()
61 h->ctx = kernel_context(gt->i915); in hang_init()
67 h->hws = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_init()
73 h->obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_init()
88 i915_coherent_map_type(gt->i915)); in hang_init()
133 struct intel_gt *gt = h->gt; in hang_create_request() local
134 struct i915_address_space *vm = h->ctx->vm ?: &engine->gt->ggtt->vm; in hang_create_request()
143 obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_create_request()
[all …]
Dintel_gt.c11 void intel_gt_init_early(struct intel_gt *gt, struct drm_i915_private *i915) in intel_gt_init_early() argument
13 gt->i915 = i915; in intel_gt_init_early()
14 gt->uncore = &i915->uncore; in intel_gt_init_early()
16 spin_lock_init(&gt->irq_lock); in intel_gt_init_early()
18 INIT_LIST_HEAD(&gt->closed_vma); in intel_gt_init_early()
19 spin_lock_init(&gt->closed_lock); in intel_gt_init_early()
21 intel_gt_init_hangcheck(gt); in intel_gt_init_early()
22 intel_gt_init_reset(gt); in intel_gt_init_early()
23 intel_gt_pm_init_early(gt); in intel_gt_init_early()
24 intel_uc_init_early(&gt->uc); in intel_gt_init_early()
[all …]
Dintel_gt_pm.h20 static inline bool intel_gt_pm_is_awake(const struct intel_gt *gt) in intel_gt_pm_is_awake() argument
22 return intel_wakeref_is_active(&gt->wakeref); in intel_gt_pm_is_awake()
25 static inline void intel_gt_pm_get(struct intel_gt *gt) in intel_gt_pm_get() argument
27 intel_wakeref_get(&gt->wakeref); in intel_gt_pm_get()
30 static inline bool intel_gt_pm_get_if_awake(struct intel_gt *gt) in intel_gt_pm_get_if_awake() argument
32 return intel_wakeref_get_if_active(&gt->wakeref); in intel_gt_pm_get_if_awake()
35 static inline void intel_gt_pm_put(struct intel_gt *gt) in intel_gt_pm_put() argument
37 intel_wakeref_put(&gt->wakeref); in intel_gt_pm_put()
40 static inline int intel_gt_pm_wait_for_idle(struct intel_gt *gt) in intel_gt_pm_wait_for_idle() argument
42 return intel_wakeref_wait_for_idle(&gt->wakeref); in intel_gt_pm_wait_for_idle()
[all …]
Dintel_gt_irq.h22 void gen11_gt_irq_reset(struct intel_gt *gt);
23 void gen11_gt_irq_postinstall(struct intel_gt *gt);
24 void gen11_gt_irq_handler(struct intel_gt *gt, const u32 master_ctl);
26 bool gen11_gt_reset_one_iir(struct intel_gt *gt,
30 void gen5_gt_irq_handler(struct intel_gt *gt, u32 gt_iir);
32 void gen5_gt_irq_postinstall(struct intel_gt *gt);
33 void gen5_gt_irq_reset(struct intel_gt *gt);
34 void gen5_gt_disable_irq(struct intel_gt *gt, u32 mask);
35 void gen5_gt_enable_irq(struct intel_gt *gt, u32 mask);
37 void gen6_gt_irq_handler(struct intel_gt *gt, u32 gt_iir);
[all …]
Dintel_gt.h30 void intel_gt_init_early(struct intel_gt *gt, struct drm_i915_private *i915);
33 void intel_gt_driver_late_release(struct intel_gt *gt);
35 void intel_gt_check_and_clear_faults(struct intel_gt *gt);
36 void intel_gt_clear_error_registers(struct intel_gt *gt,
39 void intel_gt_flush_ggtt_writes(struct intel_gt *gt);
40 void intel_gt_chipset_flush(struct intel_gt *gt);
42 void intel_gt_init_hangcheck(struct intel_gt *gt);
44 int intel_gt_init_scratch(struct intel_gt *gt, unsigned int size);
45 void intel_gt_fini_scratch(struct intel_gt *gt);
47 static inline u32 intel_gt_scratch_offset(const struct intel_gt *gt, in intel_gt_scratch_offset() argument
[all …]
Dintel_reset.h23 void intel_gt_init_reset(struct intel_gt *gt);
24 void intel_gt_fini_reset(struct intel_gt *gt);
27 void intel_gt_handle_error(struct intel_gt *gt,
33 void intel_gt_reset(struct intel_gt *gt,
41 int __must_check intel_gt_reset_trylock(struct intel_gt *gt, int *srcu);
42 void intel_gt_reset_unlock(struct intel_gt *gt, int tag);
44 void intel_gt_set_wedged(struct intel_gt *gt);
45 bool intel_gt_unset_wedged(struct intel_gt *gt);
46 int intel_gt_terminally_wedged(struct intel_gt *gt);
48 int __intel_gt_reset(struct intel_gt *gt, intel_engine_mask_t engine_mask);
[all …]
Dselftest_context.c145 struct intel_gt *gt = arg; in live_context_size() local
156 mutex_lock(&gt->i915->drm.struct_mutex); in live_context_size()
158 fixme = kernel_context(gt->i915); in live_context_size()
164 for_each_engine(engine, gt->i915, id) { in live_context_size()
203 mutex_unlock(&gt->i915->drm.struct_mutex); in live_context_size()
295 struct intel_gt *gt = arg; in live_active_context() local
302 file = mock_file(gt->i915); in live_active_context()
306 mutex_lock(&gt->i915->drm.struct_mutex); in live_active_context()
308 fixme = live_context(gt->i915, file); in live_active_context()
314 for_each_engine(engine, gt->i915, id) { in live_active_context()
[all …]
Dintel_hangcheck.c122 intel_gt_handle_error(engine->gt, engine->mask, 0, in engine_stuck()
223 static void hangcheck_declare_hang(struct intel_gt *gt, in hangcheck_declare_hang() argument
239 for_each_engine_masked(engine, gt->i915, hung, tmp) in hangcheck_declare_hang()
244 return intel_gt_handle_error(gt, hung, I915_ERROR_CAPTURE, "%s", msg); in hangcheck_declare_hang()
257 struct intel_gt *gt = in hangcheck_elapsed() local
258 container_of(work, typeof(*gt), hangcheck.work.work); in hangcheck_elapsed()
267 if (!READ_ONCE(gt->awake)) in hangcheck_elapsed()
270 if (intel_gt_is_wedged(gt)) in hangcheck_elapsed()
273 wakeref = intel_runtime_pm_get_if_in_use(&gt->i915->runtime_pm); in hangcheck_elapsed()
281 intel_uncore_arm_unclaimed_mmio_detection(gt->uncore); in hangcheck_elapsed()
[all …]
Dintel_timeline.c19 struct intel_gt *gt; member
34 static struct i915_vma *__hwsp_alloc(struct intel_gt *gt) in __hwsp_alloc() argument
36 struct drm_i915_private *i915 = gt->i915; in __hwsp_alloc()
46 vma = i915_vma_instance(obj, &gt->ggtt->vm, NULL); in __hwsp_alloc()
56 struct intel_gt_timelines *gt = &timeline->gt->timelines; in hwsp_alloc() local
61 spin_lock_irq(&gt->hwsp_lock); in hwsp_alloc()
64 hwsp = list_first_entry_or_null(&gt->hwsp_free_list, in hwsp_alloc()
69 spin_unlock_irq(&gt->hwsp_lock); in hwsp_alloc()
75 vma = __hwsp_alloc(timeline->gt); in hwsp_alloc()
82 hwsp->gt = timeline->gt; in hwsp_alloc()
[all …]
Dselftest_engine_pm.c13 struct intel_gt *gt = arg; in live_engine_pm() local
22 if (intel_gt_pm_wait_for_idle(gt)) { in live_engine_pm()
27 GEM_BUG_ON(intel_gt_pm_is_awake(gt)); in live_engine_pm()
28 for_each_engine(engine, gt->i915, id) { in live_engine_pm()
66 if (intel_gt_pm_wait_for_idle(gt)) { in live_engine_pm()
76 int live_engine_pm_selftests(struct intel_gt *gt) in live_engine_pm_selftests() argument
82 return intel_gt_live_subtests(tests, gt); in live_engine_pm_selftests()
Dintel_gt_pm_irq.h14 void gen6_gt_pm_unmask_irq(struct intel_gt *gt, u32 mask);
15 void gen6_gt_pm_mask_irq(struct intel_gt *gt, u32 mask);
17 void gen6_gt_pm_enable_irq(struct intel_gt *gt, u32 enable_mask);
18 void gen6_gt_pm_disable_irq(struct intel_gt *gt, u32 disable_mask);
20 void gen6_gt_pm_reset_iir(struct intel_gt *gt, u32 reset_mask);
Dintel_mocs.c282 static bool get_mocs_settings(struct intel_gt *gt, in get_mocs_settings() argument
285 struct drm_i915_private *i915 = gt->i915; in get_mocs_settings()
369 struct intel_gt *gt = engine->gt; in intel_mocs_init_engine() local
370 struct intel_uncore *uncore = gt->uncore; in intel_mocs_init_engine()
376 if (HAS_GLOBAL_MOCS_REGISTERS(gt->i915)) in intel_mocs_init_engine()
382 if (!get_mocs_settings(gt, &table)) in intel_mocs_init_engine()
403 static void intel_mocs_init_global(struct intel_gt *gt) in intel_mocs_init_global() argument
405 struct intel_uncore *uncore = gt->uncore; in intel_mocs_init_global()
409 GEM_BUG_ON(!HAS_GLOBAL_MOCS_REGISTERS(gt->i915)); in intel_mocs_init_global()
411 if (!get_mocs_settings(gt, &table)) in intel_mocs_init_global()
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/selftests/
Digt_reset.c14 void igt_global_reset_lock(struct intel_gt *gt) in igt_global_reset_lock() argument
19 pr_debug("%s: current gpu_error=%08lx\n", __func__, gt->reset.flags); in igt_global_reset_lock()
21 while (test_and_set_bit(I915_RESET_BACKOFF, &gt->reset.flags)) in igt_global_reset_lock()
22 wait_event(gt->reset.queue, in igt_global_reset_lock()
23 !test_bit(I915_RESET_BACKOFF, &gt->reset.flags)); in igt_global_reset_lock()
25 for_each_engine(engine, gt->i915, id) { in igt_global_reset_lock()
27 &gt->reset.flags)) in igt_global_reset_lock()
28 wait_on_bit(&gt->reset.flags, I915_RESET_ENGINE + id, in igt_global_reset_lock()
33 void igt_global_reset_unlock(struct intel_gt *gt) in igt_global_reset_unlock() argument
38 for_each_engine(engine, gt->i915, id) in igt_global_reset_unlock()
[all …]
Digt_spinner.c12 int igt_spinner_init(struct igt_spinner *spin, struct intel_gt *gt) in igt_spinner_init() argument
18 GEM_BUG_ON(INTEL_GEN(gt->i915) < 8); in igt_spinner_init()
21 spin->gt = gt; in igt_spinner_init()
23 spin->hws = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in igt_spinner_init()
29 spin->obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in igt_spinner_init()
43 mode = i915_coherent_map_type(gt->i915); in igt_spinner_init()
101 GEM_BUG_ON(spin->gt != ce->vm->gt); in igt_spinner_create_request()
147 intel_gt_chipset_flush(engine->gt); in igt_spinner_create_request()
181 intel_gt_chipset_flush(spin->gt); in igt_spinner_end()
/Linux-v5.4/drivers/gpu/drm/gma500/
Dgtt.c194 static int psb_gtt_attach_pages(struct gtt_range *gt) in psb_gtt_attach_pages() argument
198 WARN_ON(gt->pages); in psb_gtt_attach_pages()
200 pages = drm_gem_get_pages(&gt->gem); in psb_gtt_attach_pages()
204 gt->npage = gt->gem.size / PAGE_SIZE; in psb_gtt_attach_pages()
205 gt->pages = pages; in psb_gtt_attach_pages()
219 static void psb_gtt_detach_pages(struct gtt_range *gt) in psb_gtt_detach_pages() argument
221 drm_gem_put_pages(&gt->gem, gt->pages, true, false); in psb_gtt_detach_pages()
222 gt->pages = NULL; in psb_gtt_detach_pages()
235 int psb_gtt_pin(struct gtt_range *gt) in psb_gtt_pin() argument
238 struct drm_device *dev = gt->gem.dev; in psb_gtt_pin()
[all …]
/Linux-v5.4/drivers/media/radio/
Dradio-gemtek.c150 static void gemtek_bu2614_transmit(struct gemtek *gt) in gemtek_bu2614_transmit() argument
152 struct radio_isa_card *isa = &gt->isa; in gemtek_bu2614_transmit()
155 mute = gt->muted ? GEMTEK_MT : 0x00; in gemtek_bu2614_transmit()
160 for (i = 0, q = gt->bu2614data; i < 32; i++, q >>= 1) { in gemtek_bu2614_transmit()
182 struct gemtek *gt = kzalloc(sizeof(*gt), GFP_KERNEL); in gemtek_alloc() local
184 if (gt) in gemtek_alloc()
185 gt->muted = true; in gemtek_alloc()
186 return gt ? &gt->isa : NULL; in gemtek_alloc()
194 struct gemtek *gt = container_of(isa, struct gemtek, isa); in gemtek_s_frequency() local
196 if (hardmute && gt->muted) in gemtek_s_frequency()
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/
DMakefile74 obj-y += gt/
75 gt-y += \
76 gt/intel_breadcrumbs.o \
77 gt/intel_context.o \
78 gt/intel_engine_cs.o \
79 gt/intel_engine_pool.o \
80 gt/intel_engine_pm.o \
81 gt/intel_engine_user.o \
82 gt/intel_gt.o \
83 gt/intel_gt_irq.o \
[all …]
Di915_pci.c388 .gt = 1,
393 .gt = 2,
404 .gt = 1,
409 .gt = 2,
437 .gt = 1,
442 .gt = 2,
453 .gt = 1,
458 .gt = 2,
464 .gt = 2,
509 .gt = 1,
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/gem/
Di915_gem_pm.c54 intel_wakeref_lock(&i915->gt.wakeref); in idle_work_handler()
55 park = (!intel_wakeref_is_active(&i915->gt.wakeref) && in idle_work_handler()
57 intel_wakeref_unlock(&i915->gt.wakeref); in idle_work_handler()
107 static bool switch_to_kernel_context_sync(struct intel_gt *gt) in switch_to_kernel_context_sync() argument
109 bool result = !intel_gt_is_wedged(gt); in switch_to_kernel_context_sync()
112 if (i915_gem_wait_for_idle(gt->i915, in switch_to_kernel_context_sync()
118 dev_err(gt->i915->drm.dev, in switch_to_kernel_context_sync()
127 intel_gt_set_wedged(gt); in switch_to_kernel_context_sync()
130 } while (i915_retire_requests(gt->i915) && result); in switch_to_kernel_context_sync()
132 if (intel_gt_pm_wait_for_idle(gt)) in switch_to_kernel_context_sync()
[all …]
/Linux-v5.4/drivers/gpu/drm/i915/gt/uc/
Dintel_huc.c31 struct intel_gt *gt = huc_to_gt(huc); in intel_huc_rsa_data_create() local
32 struct intel_guc *guc = &gt->uc.guc; in intel_huc_rsa_data_create()
38 err = i915_inject_load_error(gt->i915, -ENXIO); in intel_huc_rsa_data_create()
128 struct intel_gt *gt = huc_to_gt(huc); in intel_huc_auth() local
129 struct intel_guc *guc = &gt->uc.guc; in intel_huc_auth()
137 ret = i915_inject_load_error(gt->i915, -ENXIO); in intel_huc_auth()
149 ret = __intel_wait_for_register(gt->uncore, in intel_huc_auth()
163 i915_probe_error(gt->i915, "HuC: Authentication failed %d\n", ret); in intel_huc_auth()
181 struct intel_gt *gt = huc_to_gt(huc); in intel_huc_check_status() local
188 with_intel_runtime_pm(&gt->i915->runtime_pm, wakeref) in intel_huc_check_status()
[all …]

123456