Home
last modified time | relevance | path

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

123456789

/Linux-v5.10/drivers/gpu/drm/i915/gt/
Dintel_gt_pm.c24 static void user_forcewake(struct intel_gt *gt, bool suspend) in user_forcewake() argument
26 int count = atomic_read(&gt->user_wakeref); in user_forcewake()
32 intel_gt_pm_get(gt); in user_forcewake()
34 GEM_BUG_ON(count > atomic_read(&gt->wakeref.count)); in user_forcewake()
35 atomic_sub(count, &gt->wakeref.count); in user_forcewake()
37 atomic_add(count, &gt->wakeref.count); in user_forcewake()
39 intel_gt_pm_put(gt); in user_forcewake()
44 struct intel_gt *gt = container_of(wf, typeof(*gt), wakeref); in __gt_unpark() local
45 struct drm_i915_private *i915 = gt->i915; in __gt_unpark()
47 GT_TRACE(gt, "\n"); in __gt_unpark()
[all …]
Dintel_gt.c22 void intel_gt_init_early(struct intel_gt *gt, struct drm_i915_private *i915) in intel_gt_init_early() argument
24 gt->i915 = i915; in intel_gt_init_early()
25 gt->uncore = &i915->uncore; in intel_gt_init_early()
27 spin_lock_init(&gt->irq_lock); in intel_gt_init_early()
29 INIT_LIST_HEAD(&gt->closed_vma); in intel_gt_init_early()
30 spin_lock_init(&gt->closed_lock); in intel_gt_init_early()
32 intel_gt_init_buffer_pool(gt); in intel_gt_init_early()
33 intel_gt_init_reset(gt); in intel_gt_init_early()
34 intel_gt_init_requests(gt); in intel_gt_init_early()
35 intel_gt_init_timelines(gt); in intel_gt_init_early()
[all …]
Dintel_gt_irq.c66 gen11_gt_engine_identity(struct intel_gt *gt, in gen11_gt_engine_identity() argument
69 void __iomem * const regs = gt->uncore->regs; in gen11_gt_engine_identity()
73 lockdep_assert_held(&gt->irq_lock); in gen11_gt_engine_identity()
100 gen11_other_irq_handler(struct intel_gt *gt, const u8 instance, in gen11_other_irq_handler() argument
104 return guc_irq_handler(&gt->uc.guc, iir); in gen11_other_irq_handler()
107 return gen11_rps_irq_handler(&gt->rps, iir); in gen11_other_irq_handler()
114 gen11_engine_irq_handler(struct intel_gt *gt, const u8 class, in gen11_engine_irq_handler() argument
120 engine = gt->engine_class[class][instance]; in gen11_engine_irq_handler()
132 gen11_gt_identity_handler(struct intel_gt *gt, const u32 identity) in gen11_gt_identity_handler() argument
142 return gen11_engine_irq_handler(gt, class, instance, intr); in gen11_gt_identity_handler()
[all …]
Dintel_reset.c178 static int i915_do_reset(struct intel_gt *gt, in i915_do_reset() argument
182 struct pci_dev *pdev = gt->i915->drm.pdev; in i915_do_reset()
207 static int g33_do_reset(struct intel_gt *gt, in g33_do_reset() argument
211 struct pci_dev *pdev = gt->i915->drm.pdev; in g33_do_reset()
217 static int g4x_do_reset(struct intel_gt *gt, in g4x_do_reset() argument
221 struct pci_dev *pdev = gt->i915->drm.pdev; in g4x_do_reset()
222 struct intel_uncore *uncore = gt->uncore; in g4x_do_reset()
233 drm_dbg(&gt->i915->drm, "Wait for media reset failed\n"); in g4x_do_reset()
241 drm_dbg(&gt->i915->drm, "Wait for render reset failed\n"); in g4x_do_reset()
254 static int ilk_do_reset(struct intel_gt *gt, intel_engine_mask_t engine_mask, in ilk_do_reset() argument
[all …]
Dintel_gt_pm.h15 static inline bool intel_gt_pm_is_awake(const struct intel_gt *gt) in intel_gt_pm_is_awake() argument
17 return intel_wakeref_is_active(&gt->wakeref); in intel_gt_pm_is_awake()
20 static inline void intel_gt_pm_get(struct intel_gt *gt) in intel_gt_pm_get() argument
22 intel_wakeref_get(&gt->wakeref); in intel_gt_pm_get()
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()
[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 …]
Dselftest_reset.c17 __igt_reset_stolen(struct intel_gt *gt, in __igt_reset_stolen() argument
21 struct i915_ggtt *ggtt = &gt->i915->ggtt; in __igt_reset_stolen()
22 const struct resource *dsm = &gt->i915->dsm; in __igt_reset_stolen()
50 igt_global_reset_lock(gt); in __igt_reset_stolen()
51 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in __igt_reset_stolen()
53 err = igt_spinner_init(&spin, gt); in __igt_reset_stolen()
57 for_each_engine(engine, gt, id) { in __igt_reset_stolen()
95 if (!__drm_mm_interval_first(&gt->i915->mm.stolen, in __igt_reset_stolen()
111 intel_gt_reset(gt, mask, NULL); in __igt_reset_stolen()
113 for_each_engine(engine, gt, id) { in __igt_reset_stolen()
[all …]
Dintel_gt_clock_utils.c14 static u32 read_clock_frequency(const struct intel_gt *gt) in read_clock_frequency() argument
16 if (INTEL_GEN(gt->i915) >= 11) { in read_clock_frequency()
19 config = intel_uncore_read(gt->uncore, RPM_CONFIG0); in read_clock_frequency()
30 } else if (INTEL_GEN(gt->i915) >= 9) { in read_clock_frequency()
31 if (IS_GEN9_LP(gt->i915)) in read_clock_frequency()
40 void intel_gt_init_clock_frequency(struct intel_gt *gt) in intel_gt_init_clock_frequency() argument
46 gt->clock_frequency = read_clock_frequency(gt); in intel_gt_init_clock_frequency()
47 GT_TRACE(gt, in intel_gt_init_clock_frequency()
49 gt->clock_frequency / 1000); in intel_gt_init_clock_frequency()
53 void intel_gt_check_clock_frequency(const struct intel_gt *gt) in intel_gt_check_clock_frequency() argument
[all …]
Dintel_gt.h16 #define GT_TRACE(gt, fmt, ...) do { \ argument
17 const struct intel_gt *gt__ __maybe_unused = (gt); \
37 void intel_gt_init_early(struct intel_gt *gt, struct drm_i915_private *i915);
38 void intel_gt_init_hw_early(struct intel_gt *gt, struct i915_ggtt *ggtt);
39 int intel_gt_init_mmio(struct intel_gt *gt);
40 int __must_check intel_gt_init_hw(struct intel_gt *gt);
41 int intel_gt_init(struct intel_gt *gt);
42 void intel_gt_driver_register(struct intel_gt *gt);
44 void intel_gt_driver_unregister(struct intel_gt *gt);
45 void intel_gt_driver_remove(struct intel_gt *gt);
[all …]
Dintel_reset.h22 void intel_gt_init_reset(struct intel_gt *gt);
23 void intel_gt_fini_reset(struct intel_gt *gt);
26 void intel_gt_handle_error(struct intel_gt *gt,
32 void intel_gt_reset(struct intel_gt *gt,
40 int __must_check intel_gt_reset_trylock(struct intel_gt *gt, int *srcu);
41 void intel_gt_reset_unlock(struct intel_gt *gt, int tag);
43 void intel_gt_set_wedged(struct intel_gt *gt);
44 bool intel_gt_unset_wedged(struct intel_gt *gt);
45 int intel_gt_terminally_wedged(struct intel_gt *gt);
52 void intel_gt_set_wedged_on_init(struct intel_gt *gt);
[all …]
Dselftest_hangcheck.c48 struct intel_gt *gt; member
56 static int hang_init(struct hang *h, struct intel_gt *gt) in hang_init() argument
62 h->gt = gt; in hang_init()
64 h->ctx = kernel_context(gt->i915); in hang_init()
70 h->hws = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_init()
76 h->obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_init()
91 i915_coherent_map_type(gt->i915)); in hang_init()
136 struct intel_gt *gt = h->gt; in hang_create_request() local
146 obj = i915_gem_object_create_internal(gt->i915, PAGE_SIZE); in hang_create_request()
152 vaddr = i915_gem_object_pin_map(obj, i915_coherent_map_type(gt->i915)); in hang_create_request()
[all …]
Dselftest_gt_pm.c69 struct intel_gt *gt = arg; in live_gt_clocks() local
74 if (!RUNTIME_INFO(gt->i915)->cs_timestamp_frequency_hz) { /* unknown */ in live_gt_clocks()
79 if (INTEL_GEN(gt->i915) < 4) /* Any CS_TIMESTAMP? */ in live_gt_clocks()
82 if (IS_GEN(gt->i915, 5)) in live_gt_clocks()
91 if (IS_GEN(gt->i915, 4)) in live_gt_clocks()
101 intel_gt_pm_get(gt); in live_gt_clocks()
102 intel_uncore_forcewake_get(gt->uncore, FORCEWAKE_ALL); in live_gt_clocks()
104 for_each_engine(engine, gt, id) { in live_gt_clocks()
137 intel_uncore_forcewake_put(gt->uncore, FORCEWAKE_ALL); in live_gt_clocks()
138 intel_gt_pm_put(gt); in live_gt_clocks()
[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_requests.c34 static bool flush_submission(struct intel_gt *gt, long timeout) in flush_submission() argument
43 if (!intel_gt_pm_is_awake(gt)) in flush_submission()
46 for_each_engine(engine, gt, id) { in flush_submission()
133 long intel_gt_retire_requests_timeout(struct intel_gt *gt, long timeout) in intel_gt_retire_requests_timeout() argument
135 struct intel_gt_timelines *timelines = &gt->timelines; in intel_gt_retire_requests_timeout()
145 flush_submission(gt, timeout); /* kick the ksoftirqd tasklets */ in intel_gt_retire_requests_timeout()
200 if (flush_submission(gt, timeout)) /* Wait, there's more! */ in intel_gt_retire_requests_timeout()
206 int intel_gt_wait_for_idle(struct intel_gt *gt, long timeout) in intel_gt_wait_for_idle() argument
209 if (!intel_gt_pm_is_awake(gt)) in intel_gt_wait_for_idle()
212 while ((timeout = intel_gt_retire_requests_timeout(gt, timeout)) > 0) { in intel_gt_wait_for_idle()
[all …]
Dselftest_rps.c214 struct intel_gt *gt = arg; in live_rps_clock_interval() local
215 struct intel_rps *rps = &gt->rps; in live_rps_clock_interval()
225 if (igt_spinner_init(&spin, gt)) in live_rps_clock_interval()
228 intel_gt_pm_wait_for_idle(gt); in live_rps_clock_interval()
232 intel_gt_pm_get(gt); in live_rps_clock_interval()
233 intel_rps_disable(&gt->rps); in live_rps_clock_interval()
235 intel_gt_check_clock_frequency(gt); in live_rps_clock_interval()
237 for_each_engine(engine, gt, id) { in live_rps_clock_interval()
263 intel_gt_set_wedged(engine->gt); in live_rps_clock_interval()
268 intel_uncore_forcewake_get(gt->uncore, FORCEWAKE_ALL); in live_rps_clock_interval()
[all …]
Dselftest_engine_pm.c16 struct intel_gt *gt = arg; in live_engine_busy_stats() local
26 if (igt_spinner_init(&spin, gt)) in live_engine_busy_stats()
29 GEM_BUG_ON(intel_gt_pm_is_awake(gt)); in live_engine_busy_stats()
30 for_each_engine(engine, gt, id) { in live_engine_busy_stats()
41 if (intel_gt_pm_wait_for_idle(gt)) { in live_engine_busy_stats()
75 intel_gt_set_wedged(engine->gt); in live_engine_busy_stats()
99 if (igt_flush_test(gt->i915)) in live_engine_busy_stats()
106 if (igt_flush_test(gt->i915)) in live_engine_busy_stats()
113 struct intel_gt *gt = arg; in live_engine_pm() local
122 if (intel_gt_pm_wait_for_idle(gt)) { in live_engine_pm()
[all …]
Dintel_sseu_debugfs.c19 static void cherryview_sseu_device_status(struct intel_gt *gt, in cherryview_sseu_device_status() argument
23 struct intel_uncore *uncore = gt->uncore; in cherryview_sseu_device_status()
53 static void gen10_sseu_device_status(struct intel_gt *gt, in gen10_sseu_device_status() argument
57 struct intel_uncore *uncore = gt->uncore; in gen10_sseu_device_status()
58 const struct intel_gt_info *info = &gt->info; in gen10_sseu_device_status()
113 static void gen9_sseu_device_status(struct intel_gt *gt, in gen9_sseu_device_status() argument
117 struct intel_uncore *uncore = gt->uncore; in gen9_sseu_device_status()
118 const struct intel_gt_info *info = &gt->info; in gen9_sseu_device_status()
146 if (IS_GEN9_BC(gt->i915)) in gen9_sseu_device_status()
155 if (IS_GEN9_LP(gt->i915)) { in gen9_sseu_device_status()
[all …]
Dselftest_rc6.c33 struct intel_gt *gt = arg; in live_rc6_manual() local
34 struct intel_rc6 *rc6 = &gt->rc6; in live_rc6_manual()
50 if (IS_VALLEYVIEW(gt->i915) || IS_CHERRYVIEW(gt->i915)) in live_rc6_manual()
53 wakeref = intel_runtime_pm_get(gt->uncore->rpm); in live_rc6_manual()
94 intel_uncore_read_fw(gt->uncore, GEN6_RC_STATE), in live_rc6_manual()
95 intel_uncore_read_fw(gt->uncore, GEN6_RC_CONTROL), in live_rc6_manual()
113 intel_runtime_pm_put(gt->uncore->rpm, wakeref); in live_rc6_manual()
151 randomised_engines(struct intel_gt *gt, in randomised_engines() argument
160 for_each_engine(engine, gt, id) in randomised_engines()
170 for_each_engine(engine, gt, id) in randomised_engines()
[all …]
/Linux-v5.10/drivers/gpu/drm/i915/
DMakefile77 gt-y += \
78 gt/debugfs_engines.o \
79 gt/debugfs_gt.o \
80 gt/debugfs_gt_pm.o \
81 gt/gen2_engine_cs.o \
82 gt/gen6_engine_cs.o \
83 gt/gen6_ppgtt.o \
84 gt/gen7_renderclear.o \
85 gt/gen8_ppgtt.o \
86 gt/intel_breadcrumbs.o \
[all …]
Di915_gpu_error.c432 const struct sseu_dev_info *sseu = &ee->engine->gt->info.sseu; in error_print_instdone()
683 struct intel_gt_coredump *gt) in err_print_gt_info() argument
687 intel_gt_info_print(&gt->info, &p); in err_print_gt_info()
688 intel_sseu_print_topology(&gt->info.sseu, &p); in err_print_gt_info()
692 struct intel_gt_coredump *gt) in err_print_gt() argument
697 err_printf(m, "GT awake: %s\n", yesno(gt->awake)); in err_print_gt()
698 err_printf(m, "EIR: 0x%08x\n", gt->eir); in err_print_gt()
699 err_printf(m, "IER: 0x%08x\n", gt->ier); in err_print_gt()
700 for (i = 0; i < gt->ngtier; i++) in err_print_gt()
701 err_printf(m, "GTIER[%d]: 0x%08x\n", i, gt->gtier[i]); in err_print_gt()
[all …]
/Linux-v5.10/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, 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, id) in igt_global_reset_unlock()
[all …]
/Linux-v5.10/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.10/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.10/drivers/gpu/drm/i915/gt/uc/
Dintel_guc.c37 struct intel_gt *gt = guc_to_gt(guc); in intel_guc_notify() local
45 intel_uncore_write(gt->uncore, guc->notify_reg, GUC_SEND_TRIGGER); in intel_guc_notify()
59 struct intel_gt *gt = guc_to_gt(guc); in intel_guc_init_send_regs() local
63 if (INTEL_GEN(gt->i915) >= 11) { in intel_guc_init_send_regs()
74 fw_domains |= intel_uncore_forcewake_for_reg(gt->uncore, in intel_guc_init_send_regs()
83 struct intel_gt *gt = guc_to_gt(guc); in gen9_reset_guc_interrupts() local
85 assert_rpm_wakelock_held(&gt->i915->runtime_pm); in gen9_reset_guc_interrupts()
87 spin_lock_irq(&gt->irq_lock); in gen9_reset_guc_interrupts()
88 gen6_gt_pm_reset_iir(gt, gt->pm_guc_events); in gen9_reset_guc_interrupts()
89 spin_unlock_irq(&gt->irq_lock); in gen9_reset_guc_interrupts()
[all …]
/Linux-v5.10/drivers/gpu/drm/i915/gvt/
Daperture_gm.c44 struct intel_gt *gt = gvt->gt; in alloc_gm() local
64 mutex_lock(&gt->ggtt->vm.mutex); in alloc_gm()
65 mmio_hw_access_pre(gt); in alloc_gm()
66 ret = i915_gem_gtt_insert(&gt->ggtt->vm, node, in alloc_gm()
70 mmio_hw_access_post(gt); in alloc_gm()
71 mutex_unlock(&gt->ggtt->vm.mutex); in alloc_gm()
82 struct intel_gt *gt = gvt->gt; in alloc_vgpu_gm() local
101 mutex_lock(&gt->ggtt->vm.mutex); in alloc_vgpu_gm()
103 mutex_unlock(&gt->ggtt->vm.mutex); in alloc_vgpu_gm()
110 struct intel_gt *gt = gvt->gt; in free_vgpu_gm() local
[all …]

123456789