| /linux/drivers/gpu/drm/i915/gt/uc/ |
| H A D | intel_guc_ads.c | 84 static u32 guc_ads_regset_size(struct intel_guc *guc) in guc_ads_regset_size() argument 86 GEM_BUG_ON(!guc->ads_regset_size); in guc_ads_regset_size() 87 return guc->ads_regset_size; in guc_ads_regset_size() 90 static u32 guc_ads_golden_ctxt_size(struct intel_guc *guc) in guc_ads_golden_ctxt_size() argument 92 return PAGE_ALIGN(guc->ads_golden_ctxt_size); in guc_ads_golden_ctxt_size() 95 static u32 guc_ads_waklv_size(struct intel_guc *guc) in guc_ads_waklv_size() argument 97 return PAGE_ALIGN(guc->ads_waklv_size); in guc_ads_waklv_size() 100 static u32 guc_ads_capture_size(struct intel_guc *guc) in guc_ads_capture_size() argument 102 return PAGE_ALIGN(guc->ads_capture_size); in guc_ads_capture_size() 105 static u32 guc_ads_private_data_size(struct intel_guc *guc) in guc_ads_private_data_size() argument [all …]
|
| H A D | intel_guc_rc.c | 13 static bool __guc_rc_supported(struct intel_guc *guc) in __guc_rc_supported() argument 16 return guc->submission_supported && in __guc_rc_supported() 17 GRAPHICS_VER(guc_to_i915(guc)) >= 12; in __guc_rc_supported() 20 static bool __guc_rc_selected(struct intel_guc *guc) in __guc_rc_selected() argument 22 if (!intel_guc_rc_is_supported(guc)) in __guc_rc_selected() 25 return guc->submission_selected; in __guc_rc_selected() 28 void intel_guc_rc_init_early(struct intel_guc *guc) in intel_guc_rc_init_early() argument 30 guc->rc_supported = __guc_rc_supported(guc); in intel_guc_rc_init_early() 31 guc->rc_selected = __guc_rc_selected(guc); in intel_guc_rc_init_early() 34 static int guc_action_control_gucrc(struct intel_guc *guc, bool enable) in guc_action_control_gucrc() argument [all …]
|
| H A D | intel_guc_capture.c | 292 guc_capture_alloc_steered_lists(struct intel_guc *guc, in guc_capture_alloc_steered_lists() argument 295 struct intel_gt *gt = guc_to_gt(guc); in guc_capture_alloc_steered_lists() 307 if (!list || guc->capture->extlists) in guc_capture_alloc_steered_lists() 347 guc_dbg(guc, "capture found %d ext-regs.\n", num_tot_regs); in guc_capture_alloc_steered_lists() 348 guc->capture->extlists = extlists; in guc_capture_alloc_steered_lists() 352 guc_capture_get_device_reglist(struct intel_guc *guc) in guc_capture_get_device_reglist() argument 354 struct drm_i915_private *i915 = guc_to_i915(guc); in guc_capture_get_device_reglist() 368 guc_capture_alloc_steered_lists(guc, lists); in guc_capture_get_device_reglist() 412 guc_capture_list_init(struct intel_guc *guc, u32 owner, u32 type, u32 classid, in guc_capture_list_init() argument 416 const struct __guc_mmio_reg_descr_group *reglists = guc->capture->reglists; in guc_capture_list_init() [all …]
|
| H A D | intel_guc_submission.h | 16 void intel_guc_submission_init_early(struct intel_guc *guc); 17 int intel_guc_submission_init(struct intel_guc *guc); 18 int intel_guc_submission_enable(struct intel_guc *guc); 19 void intel_guc_submission_disable(struct intel_guc *guc); 20 void intel_guc_submission_fini(struct intel_guc *guc); 21 int intel_guc_preempt_work_create(struct intel_guc *guc); 22 void intel_guc_preempt_work_destroy(struct intel_guc *guc); 24 void intel_guc_submission_print_info(struct intel_guc *guc, 26 void intel_guc_submission_print_context_info(struct intel_guc *guc, 36 int intel_guc_wait_for_pending_msg(struct intel_guc *guc, [all …]
|
| H A D | intel_guc_rc.h | 11 void intel_guc_rc_init_early(struct intel_guc *guc); 13 static inline bool intel_guc_rc_is_supported(struct intel_guc *guc) in intel_guc_rc_is_supported() argument 15 return guc->rc_supported; in intel_guc_rc_is_supported() 18 static inline bool intel_guc_rc_is_wanted(struct intel_guc *guc) in intel_guc_rc_is_wanted() argument 20 return guc->submission_selected && intel_guc_rc_is_supported(guc); in intel_guc_rc_is_wanted() 23 static inline bool intel_guc_rc_is_used(struct intel_guc *guc) in intel_guc_rc_is_used() argument 25 return intel_guc_submission_is_used(guc) && intel_guc_rc_is_wanted(guc); in intel_guc_rc_is_used() 28 int intel_guc_rc_enable(struct intel_guc *guc); 29 int intel_guc_rc_disable(struct intel_guc *guc);
|
| H A D | intel_guc_ads.h | 16 int intel_guc_ads_create(struct intel_guc *guc); 17 void intel_guc_ads_destroy(struct intel_guc *guc); 18 void intel_guc_ads_init_late(struct intel_guc *guc); 19 void intel_guc_ads_reset(struct intel_guc *guc); 20 void intel_guc_ads_print_policy_info(struct intel_guc *guc, 23 u32 intel_guc_engine_usage_offset(struct intel_guc *guc);
|
| H A D | intel_guc_capture.h | 26 void intel_guc_capture_process(struct intel_guc *guc); 27 int intel_guc_capture_getlist(struct intel_guc *guc, u32 owner, u32 type, u32 classid, 29 int intel_guc_capture_getlistsize(struct intel_guc *guc, u32 owner, u32 type, u32 classid, 31 int intel_guc_capture_getnullheader(struct intel_guc *guc, void **outptr, size_t *size); 32 void intel_guc_capture_destroy(struct intel_guc *guc); 33 int intel_guc_capture_init(struct intel_guc *guc);
|
| H A D | intel_uc.h | 33 struct intel_guc guc; member 89 uc_state_checkers(guc, guc); 91 uc_state_checkers(guc, guc_submission); 92 uc_state_checkers(guc, guc_slpc); 93 uc_state_checkers(guc, guc_rc); 101 return intel_guc_wait_for_idle(&uc->guc, timeout); in intel_uc_wait_for_idle()
|
| H A D | intel_guc_fw.h | 11 int intel_guc_fw_upload(struct intel_guc *guc);
|
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_guc_submit.c | 50 static int guc_submit_reset_prepare(struct xe_guc *guc); 55 return &q->gt->uc.guc; in exec_queue_to_guc() 77 return atomic_read(&q->guc->state) & EXEC_QUEUE_STATE_REGISTERED; in exec_queue_registered() 82 atomic_or(EXEC_QUEUE_STATE_REGISTERED, &q->guc->state); in set_exec_queue_registered() 87 atomic_and(~EXEC_QUEUE_STATE_REGISTERED, &q->guc->state); in clear_exec_queue_registered() 92 return atomic_read(&q->guc->state) & EXEC_QUEUE_STATE_ENABLED; in exec_queue_enabled() 97 atomic_or(EXEC_QUEUE_STATE_ENABLED, &q->guc->state); in set_exec_queue_enabled() 102 atomic_and(~EXEC_QUEUE_STATE_ENABLED, &q->guc->state); in clear_exec_queue_enabled() 107 return atomic_read(&q->guc->state) & EXEC_QUEUE_STATE_PENDING_ENABLE; in exec_queue_pending_enable() 112 atomic_or(EXEC_QUEUE_STATE_PENDING_ENABLE, &q->guc in set_exec_queue_pending_enable() 229 struct xe_guc *guc = arg; guc_submit_sw_fini() local 247 struct xe_guc *guc = arg; guc_submit_fini() local 273 primelockdep(struct xe_guc * guc) primelockdep() argument 299 xe_guc_submit_init(struct xe_guc * guc,unsigned int num_ids) xe_guc_submit_init() argument 346 guc_init_global_schedule_policy(struct xe_guc * guc) guc_init_global_schedule_policy() argument 377 xe_guc_submit_enable(struct xe_guc * guc) xe_guc_submit_enable() argument 390 xe_guc_submit_disable(struct xe_guc * guc) xe_guc_submit_disable() argument 395 __release_guc_id(struct xe_guc * guc,struct xe_exec_queue * q,u32 xa_count) __release_guc_id() argument 411 alloc_guc_id(struct xe_guc * guc,struct xe_exec_queue * q) alloc_guc_id() argument 447 release_guc_id(struct xe_guc * guc,struct xe_exec_queue * q) release_guc_id() argument 503 init_policies(struct xe_guc * guc,struct xe_exec_queue * q) init_policies() argument 528 set_min_preemption_timeout(struct xe_guc * guc,struct xe_exec_queue * q) set_min_preemption_timeout() argument 541 vf_recovery(struct xe_guc * guc) vf_recovery() argument 548 struct xe_guc *guc = exec_queue_to_guc(q); xe_guc_exec_queue_trigger_cleanup() local 799 xe_guc_exec_queue_group_cgp_sync(struct xe_guc * guc,struct xe_exec_queue * q,const u32 * action,u32 len) xe_guc_exec_queue_group_cgp_sync() argument 839 __register_exec_queue_group(struct xe_guc * guc,struct xe_exec_queue * q,struct guc_ctxt_registration_info * info) __register_exec_queue_group() argument 867 xe_guc_exec_queue_group_add(struct xe_guc * guc,struct xe_exec_queue * q) xe_guc_exec_queue_group_add() argument 890 __register_mlrc_exec_queue(struct xe_guc * guc,struct xe_exec_queue * q,struct guc_ctxt_registration_info * info) __register_mlrc_exec_queue() argument 937 __register_exec_queue(struct xe_guc * guc,struct guc_ctxt_registration_info * info) __register_exec_queue() argument 968 struct xe_guc *guc = exec_queue_to_guc(q); register_exec_queue() local 1035 struct xe_guc *guc = exec_queue_to_guc(q); wq_wait_for_space() local 1062 struct xe_guc *guc = exec_queue_to_guc(q); wq_noop_append() local 1082 struct xe_guc *guc = exec_queue_to_guc(q); wq_item_append() local 1127 struct xe_guc *guc = exec_queue_to_guc(q); submit_exec_queue() local 1193 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_run_job() local 1236 xe_guc_read_stopped(struct xe_guc * guc) xe_guc_read_stopped() argument 1253 disable_scheduling_deregister(struct xe_guc * guc,struct xe_exec_queue * q) disable_scheduling_deregister() argument 1303 xe_guc_submit_wedge(struct xe_guc * guc) xe_guc_submit_wedge() argument 1334 guc_submit_hint_wedged(struct xe_guc * guc) guc_submit_hint_wedged() argument 1409 struct xe_guc *guc = exec_queue_to_guc(q); enable_scheduling() local 1442 struct xe_guc *guc = exec_queue_to_guc(q); disable_scheduling() local 1468 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_timedout_job() local 1661 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_fini() local 1687 struct xe_guc *guc = exec_queue_to_guc(q); __guc_exec_queue_destroy_async() local 1700 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_destroy_async() local 1712 __guc_exec_queue_destroy(struct xe_guc * guc,struct xe_exec_queue * q) __guc_exec_queue_destroy() argument 1727 struct xe_guc *guc = exec_queue_to_guc(q); __guc_exec_queue_process_msg_cleanup() local 1756 struct xe_guc *guc = exec_queue_to_guc(q); __guc_exec_queue_process_msg_set_sched_props() local 1765 struct xe_guc *guc = exec_queue_to_guc(q); __suspend_fence_signal() local 1787 struct xe_guc *guc = exec_queue_to_guc(q); suspend_fence_signal() local 1799 struct xe_guc *guc = exec_queue_to_guc(q); __guc_exec_queue_process_msg_suspend() local 1848 struct xe_guc *guc = exec_queue_to_guc(q); __guc_exec_queue_process_msg_set_multi_queue_priority() local 1916 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_init() local 2173 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_suspend_wait() local 2218 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_resume() local 2266 guc_exec_queue_stop(struct xe_guc * guc,struct xe_exec_queue * q) guc_exec_queue_stop() argument 2318 guc_submit_reset_prepare(struct xe_guc * guc) guc_submit_reset_prepare() argument 2336 xe_guc_submit_reset_prepare(struct xe_guc * guc) xe_guc_submit_reset_prepare() argument 2347 xe_guc_submit_reset_wait(struct xe_guc * guc) xe_guc_submit_reset_wait() argument 2353 xe_guc_submit_stop(struct xe_guc * guc) xe_guc_submit_stop() argument 2379 guc_exec_queue_revert_pending_state_change(struct xe_guc * guc,struct xe_exec_queue * q) guc_exec_queue_revert_pending_state_change() argument 2451 guc_exec_queue_pause(struct xe_guc * guc,struct xe_exec_queue * q) guc_exec_queue_pause() argument 2496 xe_guc_submit_pause(struct xe_guc * guc) xe_guc_submit_pause() argument 2511 xe_guc_submit_pause_vf(struct xe_guc * guc) xe_guc_submit_pause_vf() argument 2561 xe_guc_submit_start(struct xe_guc * guc) xe_guc_submit_start() argument 2584 guc_exec_queue_unpause_prepare(struct xe_guc * guc,struct xe_exec_queue * q) guc_exec_queue_unpause_prepare() argument 2612 xe_guc_submit_unpause_prepare_vf(struct xe_guc * guc) xe_guc_submit_unpause_prepare_vf() argument 2669 guc_exec_queue_unpause(struct xe_guc * guc,struct xe_exec_queue * q) guc_exec_queue_unpause() argument 2688 xe_guc_submit_unpause(struct xe_guc * guc) xe_guc_submit_unpause() argument 2703 xe_guc_submit_unpause_vf(struct xe_guc * guc) xe_guc_submit_unpause_vf() argument 2729 xe_guc_submit_pause_abort(struct xe_guc * guc) xe_guc_submit_pause_abort() argument 2749 g2h_exec_queue_lookup(struct xe_guc * guc,u32 guc_id) g2h_exec_queue_lookup() argument 2771 deregister_exec_queue(struct xe_guc * guc,struct xe_exec_queue * q) deregister_exec_queue() argument 2792 handle_sched_done(struct xe_guc * guc,struct xe_exec_queue * q,u32 runnable_state) handle_sched_done() argument 2836 handle_multi_queue_secondary_sched_done(struct xe_guc * guc,struct xe_exec_queue * q,u32 runnable_state) handle_multi_queue_secondary_sched_done() argument 2846 xe_guc_sched_done_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_sched_done_handler() argument 2875 handle_deregister_done(struct xe_guc * guc,struct xe_exec_queue * q) handle_deregister_done() argument 2883 xe_guc_deregister_done_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_deregister_done_handler() argument 2910 xe_guc_exec_queue_reset_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_exec_queue_reset_handler() argument 2954 xe_guc_error_capture_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_error_capture_handler() argument 2970 xe_guc_exec_queue_memory_cat_error_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_exec_queue_memory_cat_error_handler() argument 3021 xe_guc_exec_queue_reset_failure_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_exec_queue_reset_failure_handler() argument 3043 xe_guc_exec_queue_cgp_context_error_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_exec_queue_cgp_context_error_handler() argument 3083 xe_guc_exec_queue_cgp_sync_done_handler(struct xe_guc * guc,u32 * msg,u32 len) xe_guc_exec_queue_cgp_sync_done_handler() argument 3114 struct xe_guc *guc = exec_queue_to_guc(q); guc_exec_queue_wq_snapshot_capture() local 3325 struct xe_guc *guc = exec_queue_to_guc(q); xe_guc_register_vf_exec_queue() local 3346 xe_guc_submit_print(struct xe_guc * guc,struct drm_printer * p) xe_guc_submit_print() argument 3367 xe_guc_has_registered_mlrc_queues(struct xe_guc * guc) xe_guc_has_registered_mlrc_queues() argument 3389 xe_guc_contexts_hwsp_rebase(struct xe_guc * guc,void * scratch) xe_guc_contexts_hwsp_rebase() argument [all...] |
| H A D | xe_guc.c | 52 static u32 guc_bo_ggtt_addr(struct xe_guc *guc, in guc_bo_ggtt_addr() argument 55 struct xe_device *xe = guc_to_xe(guc); in guc_bo_ggtt_addr() 64 addr = __xe_bo_ggtt_addr(bo, gt_to_tile(guc_to_gt(guc))->id); in guc_bo_ggtt_addr() 67 xe_assert(xe, addr >= xe_wopcm_size(guc_to_xe(guc))); in guc_bo_ggtt_addr() 74 static u32 guc_ctl_debug_flags(struct xe_guc *guc) in guc_ctl_debug_flags() argument 76 u32 level = xe_guc_log_get_level(&guc->log); in guc_ctl_debug_flags() 87 static u32 guc_ctl_feature_flags(struct xe_guc *guc) in guc_ctl_feature_flags() argument 89 struct xe_device *xe = guc_to_xe(guc); in guc_ctl_feature_flags() 98 if (xe_guc_using_main_gamctrl_queues(guc)) in guc_ctl_feature_flags() 101 if (xe_device_is_l2_flush_optimized(xe) && xe_gt_is_media_type(guc_to_gt(guc))) in guc_ctl_feature_flags() 107 guc_ctl_log_params_flags(struct xe_guc * guc) guc_ctl_log_params_flags() argument 153 guc_ctl_ads_flags(struct xe_guc * guc) guc_ctl_ads_flags() argument 189 guc_ctl_wa_flags(struct xe_guc * guc) guc_ctl_wa_flags() argument 228 guc_ctl_devid(struct xe_guc * guc) guc_ctl_devid() argument 235 guc_print_params(struct xe_guc * guc) guc_print_params() argument 248 guc_init_params(struct xe_guc * guc) guc_init_params() argument 262 guc_init_params_post_hwconfig(struct xe_guc * guc) guc_init_params_post_hwconfig() argument 281 guc_write_params(struct xe_guc * guc) guc_write_params() argument 294 guc_action_register_g2g_buffer(struct xe_guc * guc,u32 type,u32 dst_tile,u32 dst_dev,u32 desc_addr,u32 buff_addr,u32 size) guc_action_register_g2g_buffer() argument 315 guc_action_deregister_g2g_buffer(struct xe_guc * guc,u32 type,u32 dst_tile,u32 dst_dev) guc_action_deregister_g2g_buffer() argument 438 guc_g2g_deregister(struct xe_guc * guc,u32 far_tile,u32 far_dev,u32 type) guc_g2g_deregister() argument 443 guc_g2g_size(struct xe_guc * guc) guc_g2g_size() argument 465 guc_g2g_alloc(struct xe_guc * guc) guc_g2g_alloc() argument 507 guc_g2g_fini(struct xe_guc * guc) guc_g2g_fini() argument 519 guc_g2g_start(struct xe_guc * guc) guc_g2g_start() argument 582 __guc_opt_in_features_enable(struct xe_guc * guc,u64 addr,u32 num_dwords) __guc_opt_in_features_enable() argument 594 supports_dynamic_ics(struct xe_guc * guc) supports_dynamic_ics() argument 621 xe_guc_opt_in_features_enable(struct xe_guc * guc) xe_guc_opt_in_features_enable() argument 664 struct xe_guc *guc = arg; guc_fini_hw() local 675 struct xe_guc *guc = arg; vf_guc_fini_hw() local 686 xe_guc_comm_init_early(struct xe_guc * guc) xe_guc_comm_init_early() argument 696 xe_guc_realloc_post_hwconfig(struct xe_guc * guc) xe_guc_realloc_post_hwconfig() argument 720 vf_guc_init_noalloc(struct xe_guc * guc) vf_guc_init_noalloc() argument 736 xe_guc_init_noalloc(struct xe_guc * guc) xe_guc_init_noalloc() argument 765 xe_guc_init(struct xe_guc * guc) xe_guc_init() argument 825 vf_guc_init_post_hwconfig(struct xe_guc * guc) vf_guc_init_post_hwconfig() argument 856 xe_guc_init_post_hwconfig(struct xe_guc * guc) xe_guc_init_post_hwconfig() argument 901 xe_guc_post_load_init(struct xe_guc * guc) xe_guc_post_load_init() argument 924 guc_prevent_fw_dma_failure_on_reset(struct xe_guc * guc) guc_prevent_fw_dma_failure_on_reset() argument 955 xe_guc_reset(struct xe_guc * guc) xe_guc_reset() argument 993 guc_prepare_xfer(struct xe_guc * guc) guc_prepare_xfer() argument 1022 guc_xfer_rsa(struct xe_guc * guc) guc_xfer_rsa() argument 1176 guc_wait_ucode(struct xe_guc * guc) guc_wait_ucode() argument 1221 __xe_guc_upload(struct xe_guc * guc) __xe_guc_upload() argument 1263 vf_guc_min_load_for_hwconfig(struct xe_guc * guc) vf_guc_min_load_for_hwconfig() argument 1302 xe_guc_min_load_for_hwconfig(struct xe_guc * guc) xe_guc_min_load_for_hwconfig() argument 1328 xe_guc_upload(struct xe_guc * guc) xe_guc_upload() argument 1340 guc_handle_mmio_msg(struct xe_guc * guc) guc_handle_mmio_msg() argument 1362 guc_enable_irq(struct xe_guc * guc) guc_enable_irq() argument 1380 xe_guc_enable_communication(struct xe_guc * guc) xe_guc_enable_communication() argument 1413 xe_guc_softreset(struct xe_guc * guc) xe_guc_softreset() argument 1430 xe_guc_suspend(struct xe_guc * guc) xe_guc_suspend() argument 1445 xe_guc_notify(struct xe_guc * guc) xe_guc_notify() argument 1458 xe_guc_auth_huc(struct xe_guc * guc,u32 rsa_addr) xe_guc_auth_huc() argument 1471 xe_guc_mmio_send_recv(struct xe_guc * guc,const u32 * request,u32 len,u32 * response_buf) xe_guc_mmio_send_recv() argument 1612 xe_guc_mmio_send(struct xe_guc * guc,const u32 * request,u32 len) xe_guc_mmio_send() argument 1617 guc_self_cfg(struct xe_guc * guc,u16 key,u16 len,u64 val) guc_self_cfg() argument 1650 xe_guc_self_cfg32(struct xe_guc * guc,u16 key,u32 val) xe_guc_self_cfg32() argument 1655 xe_guc_self_cfg64(struct xe_guc * guc,u16 key,u64 val) xe_guc_self_cfg64() argument 1660 xe_guc_sw_0_irq_handler(struct xe_guc * guc) xe_guc_sw_0_irq_handler() argument 1668 xe_guc_irq_handler(struct xe_guc * guc,const u16 iir) xe_guc_irq_handler() argument 1677 xe_guc_sanitize(struct xe_guc * guc) xe_guc_sanitize() argument 1684 xe_guc_reset_prepare(struct xe_guc * guc) xe_guc_reset_prepare() argument 1689 xe_guc_reset_wait(struct xe_guc * guc) xe_guc_reset_wait() argument 1694 xe_guc_stop_prepare(struct xe_guc * guc) xe_guc_stop_prepare() argument 1705 xe_guc_stop(struct xe_guc * guc) xe_guc_stop() argument 1712 xe_guc_start(struct xe_guc * guc) xe_guc_start() argument 1724 xe_guc_runtime_suspend(struct xe_guc * guc) xe_guc_runtime_suspend() argument 1738 xe_guc_runtime_resume(struct xe_guc * guc) xe_guc_runtime_resume() argument 1751 xe_guc_print_info(struct xe_guc * guc,struct drm_printer * p) xe_guc_print_info() argument 1799 xe_guc_declare_wedged(struct xe_guc * guc) xe_guc_declare_wedged() argument 1820 xe_guc_using_main_gamctrl_queues(struct xe_guc * guc) xe_guc_using_main_gamctrl_queues() argument [all...] |
| H A D | xe_guc.h | 25 #define GUC_SUBMIT_VER(guc) \ argument 26 MAKE_GUC_VER_STRUCT((guc)->fw.versions.found[XE_UC_FW_VER_COMPATIBILITY]) 27 #define GUC_FIRMWARE_VER(guc) \ argument 28 MAKE_GUC_VER_STRUCT((guc)->fw.versions.found[XE_UC_FW_VER_RELEASE]) 29 #define GUC_FIRMWARE_VER_AT_LEAST(guc, ver...) \ argument 30 xe_guc_fw_version_at_least((guc), MAKE_GUC_VER_ARGS(ver)) 34 void xe_guc_comm_init_early(struct xe_guc *guc); 35 int xe_guc_init_noalloc(struct xe_guc *guc); 36 int xe_guc_init(struct xe_guc *guc); 37 int xe_guc_init_post_hwconfig(struct xe_guc *guc); [all …]
|
| H A D | xe_gt_sriov_vf.c | 75 static int guc_action_vf_reset(struct xe_guc *guc) in guc_action_vf_reset() argument 84 ret = xe_guc_mmio_send(guc, request, ARRAY_SIZE(request)); in guc_action_vf_reset() 93 struct xe_guc *guc = >->uc.guc; in vf_reset_guc_state() local 97 err = guc_action_vf_reset(guc); in vf_reset_guc_state() 123 static int guc_action_match_version(struct xe_guc *guc, in guc_action_match_version() argument 141 ret = xe_guc_mmio_send_recv(guc, request, ARRAY_SIZE(request), response); in guc_action_match_version() 157 static int guc_action_match_version_any(struct xe_guc *guc, in guc_action_match_version_any() argument 167 return guc_action_match_version(guc, &wanted, found); in guc_action_match_version_any() 202 struct xe_guc *guc = >->uc.guc; in vf_handshake_with_guc() local 220 err = guc_action_match_version(guc, &wanted, guc_version); in vf_handshake_with_guc() [all …]
|
| H A D | xe_memirq.c | 45 static const char *guc_name(struct xe_guc *guc) in guc_name() argument 47 return xe_gt_is_media_type(guc_to_gt(guc)) ? "media GuC" : "GuC"; in guc_name() 337 * @guc: the &xe_guc to setup in xe_memirq_init_guc() 347 int xe_memirq_init_guc(struct xe_memirq *memirq, struct xe_guc *guc) in xe_memirq_init_guc() 349 bool is_media = xe_gt_is_media_type(guc_to_gt(guc)); in xe_memirq_init_guc() 360 err = xe_guc_self_cfg64(guc, GUC_KLV_SELF_CFG_MEMIRQ_SOURCE_ADDR_KEY, in xe_memirq_init_guc() 365 err = xe_guc_self_cfg64(guc, GUC_KLV_SELF_CFG_MEMIRQ_STATUS_ADDR_KEY, 374 guc_name(guc), ERR_PTR(err)); in xe_memirq_reset() 466 struct xe_guc *guc) in memirq_dispatch_guc() 468 const char *name = guc_name(guc); in memirq_dispatch_guc() 334 xe_memirq_init_guc(struct xe_memirq * memirq,struct xe_guc * guc) xe_memirq_init_guc() argument 452 memirq_dispatch_guc(struct xe_memirq * memirq,struct iosys_map * status,struct xe_guc * guc) memirq_dispatch_guc() argument 508 xe_memirq_guc_sw_int_0_irq_pending(struct xe_memirq * memirq,struct xe_guc * guc) xe_memirq_guc_sw_int_0_irq_pending() argument [all...] |
| H A D | xe_guc_hwconfig.h | 14 int xe_guc_hwconfig_init(struct xe_guc *guc); 15 u32 xe_guc_hwconfig_size(struct xe_guc *guc); 16 void xe_guc_hwconfig_copy(struct xe_guc *guc, void *dst); 17 void xe_guc_hwconfig_dump(struct xe_guc *guc, struct drm_printer *p); 18 int xe_guc_hwconfig_lookup_u32(struct xe_guc *guc, u32 attribute, u32 *val);
|
| H A D | xe_gt_sriov_pf_monitor.c | 32 gt->sriov.pf.vfs[vfid].monitor.guc.events[e] = 0; in xe_gt_sriov_pf_monitor_flr() 41 gt->sriov.pf.vfs[vfid].monitor.guc.events[e]++; in pf_update_event_counter() 132 if (data->guc.events[e]) in xe_gt_sriov_pf_monitor_print_events() 141 #define __value(TAG, NAME, ...) , #NAME, data->guc.events[MAKE_XE_GUC_KLV_THRESHOLD_INDEX(TAG)] in xe_gt_sriov_pf_monitor_print_events()
|
| H A D | xe_guc_ct.c | 54 return container_of(ct, struct xe_gt, uc.guc.ct); in ct_to_gt() 473 struct xe_guc *guc = ct_to_guc(ct); in guc_ct_ctb_h2g_register() 481 err = xe_guc_self_cfg64(guc, in guc_ct_ctb_h2g_register() 487 err = xe_guc_self_cfg64(guc, in guc_ct_ctb_h2g_register() 493 return xe_guc_self_cfg32(guc, in guc_ct_ctb_g2h_register() 500 struct xe_guc *guc = ct_to_guc(ct); in guc_ct_ctb_g2h_register() 508 err = xe_guc_self_cfg64(guc, in guc_ct_ctb_g2h_register() 514 err = xe_guc_self_cfg64(guc, in guc_ct_ctb_g2h_register() 520 return xe_guc_self_cfg32(guc, in guc_ct_control_toggle() 1622 struct xe_guc *guc in process_g2h_msg() 465 struct xe_guc *guc = ct_to_guc(ct); guc_ct_ctb_h2g_register() local 492 struct xe_guc *guc = ct_to_guc(ct); guc_ct_ctb_g2h_register() local 1588 struct xe_guc *guc = ct_to_guc(ct); process_g2h_msg() local 1833 struct xe_guc *guc = ct_to_guc(ct); g2h_fast_path() local 2148 struct xe_guc *guc = ct_to_guc(ct); ct_dead_capture() local [all...] |
| H A D | xe_guc_ads.c | 45 return container_of(ads, struct xe_gt, uc.guc.ads); in ads_to_gt() 348 if (GUC_FIRMWARE_VER_AT_LEAST(>->uc.guc, 70, 44) && XE_GT_WA(gt, 16026508708)) in guc_waklv_init() 351 if (GUC_FIRMWARE_VER_AT_LEAST(>->uc.guc, 70, 47) && XE_GT_WA(gt, 16026007364)) { in guc_waklv_init() 363 if (XE_GT_WA(gt, 14025515070) && GUC_FIRMWARE_VER_AT_LEAST(>->uc.guc, 70, 53)) in guc_waklv_init() 590 static inline bool get_capture_list(struct xe_guc_ads *ads, struct xe_guc *guc, struct xe_gt *gt, in get_capture_list() 596 if (!xe_guc_capture_getlistsize(guc, owner, type, class, size)) { in get_capture_list() 600 else if (!xe_guc_capture_getlist(guc, owner, type, class, pptr)) in get_capture_list() 609 struct xe_guc *guc = ads_to_guc(ads); in guc_capture_prep_lists() 630 if (!xe_guc_capture_getnullheader(guc, &ptr, &size)) in guc_capture_prep_lists() 653 write_empty_list = get_capture_list(ads, guc, g in guc_capture_prep_lists() 587 get_capture_list(struct xe_guc_ads * ads,struct xe_guc * guc,struct xe_gt * gt,int owner,int type,int class,u32 * total_size,size_t * size,void ** pptr) get_capture_list() argument 606 struct xe_guc *guc = ads_to_guc(ads); guc_capture_prep_lists() local 823 struct xe_guc *guc = ads_to_guc(ads); guc_um_init_params() local 1007 struct xe_guc *guc = ads_to_guc(ads); xe_guc_ads_scheduler_policy_toggle_reset() local [all...] |
| H A D | xe_gt_sriov_pf_migration.c | 154 static int guc_action_vf_save_restore(struct xe_guc *guc, u32 vfid, u32 opcode, in guc_action_vf_save_restore() argument 168 return xe_guc_ct_send_block(&guc->ct, request, ARRAY_SIZE(request)); in guc_action_vf_save_restore() 176 ret = guc_action_vf_save_restore(>->uc.guc, vfid, GUC_PF_OPCODE_VF_SAVE, 0, 0); in pf_send_guc_query_vf_mig_data_size() 185 struct xe_guc *guc = >->uc.guc; in pf_send_guc_save_vf_mig_data() local 186 CLASS(xe_guc_buf, buf)(&guc->buf, ndwords); in pf_send_guc_save_vf_mig_data() 198 ret = guc_action_vf_save_restore(guc, vfid, GUC_PF_OPCODE_VF_SAVE, in pf_send_guc_save_vf_mig_data() 215 struct xe_guc *guc = >->uc.guc; in pf_send_guc_restore_vf_mig_data() local 216 CLASS(xe_guc_buf_from_data, buf)(&guc->buf, src, size); in pf_send_guc_restore_vf_mig_data() 225 ret = guc_action_vf_save_restore(guc, vfid, GUC_PF_OPCODE_VF_RESTORE, in pf_send_guc_restore_vf_mig_data() 1029 if (!GUC_FIRMWARE_VER_AT_LEAST(>->uc.guc, 70, 54)) in pf_gt_migration_check_support()
|
| H A D | xe_uc_fw.c | 118 fw_def(PANTHERLAKE, GT_TYPE_ANY, major_ver(xe, guc, ptl, 70, 54, 0)) \ 119 fw_def(BATTLEMAGE, GT_TYPE_ANY, major_ver(xe, guc, bmg, 70, 54, 0)) \ 120 fw_def(LUNARLAKE, GT_TYPE_ANY, major_ver(xe, guc, lnl, 70, 53, 0)) \ 121 fw_def(METEORLAKE, GT_TYPE_ANY, major_ver(i915, guc, mtl, 70, 53, 0)) \ 122 fw_def(DG2, GT_TYPE_ANY, major_ver(i915, guc, dg2, 70, 53, 0)) \ 123 fw_def(DG1, GT_TYPE_ANY, major_ver(i915, guc, dg1, 70, 44, 1)) \ 124 fw_def(ALDERLAKE_N, GT_TYPE_ANY, major_ver(i915, guc, tgl, 70, 44, 1)) \ 125 fw_def(ALDERLAKE_P, GT_TYPE_ANY, major_ver(i915, guc, adlp, 70, 44, 1)) \ 126 fw_def(ALDERLAKE_S, GT_TYPE_ANY, major_ver(i915, guc, tgl, 70, 44, 1)) \ 127 fw_def(ROCKETLAKE, GT_TYPE_ANY, major_ver(i915, guc, tg [all...] |
| H A D | xe_pmu.c | 287 val = xe_guc_engine_activity_active_ticks(>->uc.guc, hwe, function_id); in read_engine_events() 289 val = xe_guc_engine_activity_total_ticks(>->uc.guc, hwe, function_id); in read_engine_events() 308 return xe_guc_pc_get_act_freq(>->uc.guc.pc); in __xe_pmu_event_read() 310 return xe_guc_pc_get_cur_freq_fw(>->uc.guc.pc); in __xe_pmu_event_read() 517 if (xe_guc_engine_activity_supported(>->uc.guc)) { in set_supported_events()
|
| H A D | xe_guc_log.c | 104 return container_of(log, struct xe_gt, uc.guc.log); in log_to_gt() 192 struct xe_guc *guc = log_to_guc(log); in xe_guc_log_snapshot_capture() local 221 snapshot->ver_found = guc->fw.versions.found[XE_UC_FW_VER_RELEASE]; in xe_guc_log_snapshot_capture() 222 snapshot->ver_want = guc->fw.versions.wanted; in xe_guc_log_snapshot_capture() 223 snapshot->path = guc->fw.path; in xe_guc_log_snapshot_capture()
|
| H A D | xe_gt_sriov_pf_monitor_types.h | 19 } guc; member
|
| /linux/drivers/gpu/drm/i915/gt/ |
| H A D | intel_gt.h | 102 static inline struct intel_gt *guc_to_gt(struct intel_guc *guc) in guc_to_gt() argument 104 return container_of(guc, struct intel_gt, uc.guc); in guc_to_gt() 122 static inline struct drm_i915_private *guc_to_i915(struct intel_guc *guc) in guc_to_i915() argument 124 return guc_to_gt(guc)->i915; in guc_to_i915() 129 return >->uc.guc; in gt_to_guc()
|
| /linux/drivers/gpu/drm/i915/selftests/ |
| H A D | intel_scheduler_helpers.c | 70 err = intel_guc_global_policies_update(&engine->gt->uc.guc); in intel_selftest_modify_policy() 89 return intel_guc_global_policies_update(&engine->gt->uc.guc); in intel_selftest_restore_policy()
|