| /drivers/gpu/drm/xe/ |
| A D | xe_pxp.c | 55 return pxp; in xe_pxp_is_enabled() 302 struct xe_pxp *pxp = xe->pxp; in xe_pxp_irq_handler() local 322 queue_work(pxp->irq.wq, &pxp->irq.work); in xe_pxp_irq_handler() 398 if (!pxp) { in xe_pxp_init() 406 pxp->xe = xe; in xe_pxp_init() 438 xe->pxp = pxp; in xe_pxp_init() 519 list_add_tail(&q->pxp.link, &pxp->queues.list); in __exec_queue_add() 674 ret = pxp_start(pxp, q->pxp.type); in xe_pxp_exec_queue_add() 840 struct xe_pxp *pxp = xe->pxp; in xe_pxp_obj_key_check() local 919 pxp->last_suspend_key_instance = pxp->key_instance; in xe_pxp_pm_suspend() [all …]
|
| A D | xe_pxp_debugfs.c | 26 lockdep_assert_held(&pxp->mutex); in pxp_status_to_str() 28 switch (pxp->status) { in pxp_status_to_str() 52 if (!xe_pxp_is_enabled(pxp)) in pxp_info() 55 mutex_lock(&pxp->mutex); in pxp_info() 56 status = pxp_status_to_str(pxp); in pxp_info() 60 mutex_unlock(&pxp->mutex); in pxp_info() 77 if (pxp->status != XE_PXP_ACTIVE) { in pxp_terminate() 83 spin_lock_irq(&pxp->xe->irq.lock); in pxp_terminate() 104 if (!xe_pxp_is_enabled(pxp)) in xe_pxp_debugfs_register() 107 minor = pxp->xe->drm.primary; in xe_pxp_debugfs_register() [all …]
|
| A D | xe_pxp.h | 18 bool xe_pxp_is_enabled(const struct xe_pxp *pxp); 19 int xe_pxp_get_readiness_status(struct xe_pxp *pxp); 24 int xe_pxp_pm_suspend(struct xe_pxp *pxp); 25 void xe_pxp_pm_resume(struct xe_pxp *pxp); 27 int xe_pxp_exec_queue_set_type(struct xe_pxp *pxp, struct xe_exec_queue *q, u8 type); 28 int xe_pxp_exec_queue_add(struct xe_pxp *pxp, struct xe_exec_queue *q); 29 void xe_pxp_exec_queue_remove(struct xe_pxp *pxp, struct xe_exec_queue *q); 31 int xe_pxp_key_assign(struct xe_pxp *pxp, struct xe_bo *bo); 32 int xe_pxp_bo_key_check(struct xe_pxp *pxp, struct xe_bo *bo);
|
| A D | xe_pxp_submit.c | 36 struct xe_gt *gt = pxp->gt; in allocate_vcs_execution_resources() 37 struct xe_device *xe = pxp->xe; in allocate_vcs_execution_resources() 64 pxp->vcs_exec.q = q; in allocate_vcs_execution_resources() 65 pxp->vcs_exec.bo = bo; in allocate_vcs_execution_resources() 76 if (pxp->vcs_exec.bo) in destroy_vcs_execution_resources() 79 if (pxp->vcs_exec.q) in destroy_vcs_execution_resources() 80 xe_exec_queue_put(pxp->vcs_exec.q); in destroy_vcs_execution_resources() 195 err = allocate_gsc_client_resources(pxp->gt, &pxp->gsc_res, XE_PAGE_SIZE); in xe_pxp_allocate_execution_resources() 296 offset = pxp_emit_session_termination(pxp->xe, &pxp->vcs_exec.bo->vmap, offset, id); in xe_pxp_submit_session_termination() 297 offset = pxp_emit_wait(pxp->xe, &pxp->vcs_exec.bo->vmap, offset); in xe_pxp_submit_session_termination() [all …]
|
| A D | xe_pxp_submit.h | 14 int xe_pxp_allocate_execution_resources(struct xe_pxp *pxp); 15 void xe_pxp_destroy_execution_resources(struct xe_pxp *pxp); 18 int xe_pxp_submit_session_termination(struct xe_pxp *pxp, u32 id);
|
| A D | xe_pm.c | 126 err = xe_pxp_pm_suspend(xe->pxp); in xe_pm_suspend() 157 xe_pxp_pm_resume(xe->pxp); in xe_pm_suspend() 209 xe_pxp_pm_resume(xe->pxp); in xe_pm_resume() 463 err = xe_pxp_pm_suspend(xe->pxp); in xe_pm_runtime_suspend() 503 xe_pxp_pm_resume(xe->pxp); in xe_pm_runtime_suspend() 559 xe_pxp_pm_resume(xe->pxp); in xe_pm_runtime_resume()
|
| A D | xe_exec_queue.c | 43 xe_pxp_exec_queue_remove(gt_to_xe(q->gt)->pxp, q); in __xe_exec_queue_free() 84 INIT_LIST_HEAD(&q->pxp.link); in __xe_exec_queue_alloc() 182 err = xe_pxp_exec_queue_add(xe->pxp, q); in xe_exec_queue_create() 277 xe_pxp_exec_queue_remove(gt_to_xe(q->gt)->pxp, q); in xe_exec_queue_destroy() 444 if (!xe_pxp_is_enabled(xe->pxp)) in exec_queue_set_pxp_type() 447 return xe_pxp_exec_queue_set_type(xe->pxp, q, DRM_XE_PXP_TYPE_HWDRM); in exec_queue_set_pxp_type()
|
| /drivers/gpu/drm/i915/pxp/ |
| A D | intel_pxp.c | 57 return IS_ENABLED(CONFIG_DRM_I915_PXP) && pxp && pxp->ce; in intel_pxp_is_enabled() 62 return IS_ENABLED(CONFIG_DRM_I915_PXP) && pxp && pxp->arb_is_valid; in intel_pxp_is_active() 70 intel_uncore_write(pxp->ctrl_gt->uncore, KCR_INIT(pxp->kcr_base), val); in kcr_pxp_set_status() 108 pxp->ce = ce; in create_vcs_context() 115 if (pxp->ce) in destroy_vcs_context() 223 i915->pxp = kzalloc(sizeof(*i915->pxp), GFP_KERNEL); in intel_pxp_init() 224 if (!i915->pxp) in intel_pxp_init() 246 if (!i915->pxp) in intel_pxp_fini() 258 kfree(i915->pxp); in intel_pxp_fini() 259 i915->pxp = NULL; in intel_pxp_fini() [all …]
|
| A D | intel_pxp_session.c | 44 KCR_SIP(pxp->kcr_base), in pxp_wait_for_session_state() 59 pxp->arb_is_valid = false; in pxp_create_arb_session() 82 if (!++pxp->key_instance) in pxp_create_arb_session() 83 ++pxp->key_instance; in pxp_create_arb_session() 85 pxp->arb_is_valid = true; in pxp_create_arb_session() 96 GEM_WARN_ON(pxp->arb_is_valid); in pxp_terminate_arb_session_and_global() 142 pxp_create_arb_session(pxp); in pxp_terminate_complete() 150 struct intel_pxp *pxp = container_of(work, typeof(*pxp), session_work); in pxp_session_work() local 165 intel_pxp_invalidate(pxp); in pxp_session_work() 181 pxp_terminate_complete(pxp); in pxp_session_work() [all …]
|
| A D | intel_pxp_tee.c | 67 mutex_lock(&pxp->tee_mutex); in intel_pxp_tee_io_message() 124 mutex_lock(&pxp->tee_mutex); in intel_pxp_tee_stream_message() 163 struct intel_pxp *pxp = i915->pxp; in i915_pxp_tee_component_bind() local 176 pxp->pxp_component = data; in i915_pxp_tee_component_bind() 196 intel_pxp_init_hw(pxp); in i915_pxp_tee_component_bind() 207 struct intel_pxp *pxp = i915->pxp; in i915_pxp_tee_component_unbind() local 212 intel_pxp_fini_hw(pxp); in i915_pxp_tee_component_unbind() 215 pxp->pxp_component = NULL; in i915_pxp_tee_component_unbind() 218 if (pxp->dev_link) { in i915_pxp_tee_component_unbind() 220 pxp->dev_link = NULL; in i915_pxp_tee_component_unbind() [all …]
|
| A D | intel_pxp_pm.c | 16 if (!intel_pxp_is_enabled(pxp)) in intel_pxp_suspend_prepare() 19 intel_pxp_end(pxp); in intel_pxp_suspend_prepare() 21 intel_pxp_invalidate(pxp); in intel_pxp_suspend_prepare() 28 if (!intel_pxp_is_enabled(pxp)) in intel_pxp_suspend() 32 intel_pxp_fini_hw(pxp); in intel_pxp_suspend() 50 if (!HAS_ENGINE(pxp->ctrl_gt, GSC0) && !pxp->pxp_component) in _pxp_resume() 55 intel_pxp_init_hw(pxp); in _pxp_resume() 62 _pxp_resume(pxp, true); in intel_pxp_resume_complete() 67 _pxp_resume(pxp, false); in intel_pxp_runtime_resume() 75 pxp->arb_is_valid = false; in intel_pxp_runtime_suspend() [all …]
|
| A D | intel_pxp_gsccs.c | 27 pxp->platform_cfg_is_bad = true; in is_fw_err_platform_config() 53 gsccs_send_message(struct intel_pxp *pxp, in gsccs_send_message() argument 59 struct intel_gt *gt = pxp->ctrl_gt; in gsccs_send_message() 81 mutex_lock(&pxp->tee_mutex); in gsccs_send_message() 160 mutex_unlock(&pxp->tee_mutex); in gsccs_send_message() 306 gsccs_cleanup_fw_host_session_handle(pxp); in gsccs_destroy_execution_resource() 371 struct intel_gt *gt = pxp->ctrl_gt; in gsccs_allocate_execution_resource() 409 ce->vm = i915_vm_get(pxp->ctrl_gt->vm); in gsccs_allocate_execution_resource() 430 gsccs_destroy_execution_resource(pxp); in intel_pxp_gsccs_fini() 432 intel_pxp_fini_hw(pxp); in intel_pxp_gsccs_fini() [all …]
|
| A D | intel_pxp_irq.c | 29 if (GEM_WARN_ON(!intel_pxp_is_enabled(pxp))) in intel_pxp_irq_handler() 32 gt = pxp->ctrl_gt; in intel_pxp_irq_handler() 42 intel_pxp_mark_termination_in_progress(pxp); in intel_pxp_irq_handler() 50 if (pxp->session_events) in intel_pxp_irq_handler() 72 struct intel_gt *gt = pxp->ctrl_gt; in intel_pxp_irq_enable() 76 if (!pxp->irq_enabled) in intel_pxp_irq_enable() 80 pxp->irq_enabled = true; in intel_pxp_irq_enable() 87 struct intel_gt *gt = pxp->ctrl_gt; in intel_pxp_irq_disable() 96 GEM_WARN_ON(intel_pxp_is_active(pxp)); in intel_pxp_irq_disable() 100 pxp->irq_enabled = false; in intel_pxp_irq_disable() [all …]
|
| A D | intel_pxp_debugfs.c | 23 struct intel_pxp *pxp = m->private; in pxp_info_show() local 26 if (!intel_pxp_is_enabled(pxp)) { in pxp_info_show() 47 struct intel_pxp *pxp = data; in pxp_terminate_set() local 48 struct intel_gt *gt = pxp->ctrl_gt; in pxp_terminate_set() 51 if (!intel_pxp_is_active(pxp)) in pxp_terminate_set() 59 timeout_ms = intel_pxp_get_backend_timeout_ms(pxp); in pxp_terminate_set() 61 if (!wait_for_completion_timeout(&pxp->termination, in pxp_terminate_set() 75 if (!intel_pxp_is_supported(pxp)) in intel_pxp_debugfs_register() 78 minor = pxp->ctrl_gt->i915->drm.primary; in intel_pxp_debugfs_register() 87 pxp, &pxp_info_fops); in intel_pxp_debugfs_register() [all …]
|
| A D | intel_pxp.h | 16 bool intel_pxp_is_supported(const struct intel_pxp *pxp); 17 bool intel_pxp_is_enabled(const struct intel_pxp *pxp); 18 bool intel_pxp_is_active(const struct intel_pxp *pxp); 23 void intel_pxp_init_hw(struct intel_pxp *pxp); 24 void intel_pxp_fini_hw(struct intel_pxp *pxp); 26 void intel_pxp_mark_termination_in_progress(struct intel_pxp *pxp); 29 int intel_pxp_get_readiness_status(struct intel_pxp *pxp, int timeout_ms); 30 int intel_pxp_get_backend_timeout_ms(struct intel_pxp *pxp); 31 int intel_pxp_start(struct intel_pxp *pxp); 32 void intel_pxp_end(struct intel_pxp *pxp); [all …]
|
| A D | intel_pxp_pm.h | 12 void intel_pxp_suspend_prepare(struct intel_pxp *pxp); 13 void intel_pxp_suspend(struct intel_pxp *pxp); 14 void intel_pxp_resume_complete(struct intel_pxp *pxp); 15 void intel_pxp_runtime_suspend(struct intel_pxp *pxp); 16 void intel_pxp_runtime_resume(struct intel_pxp *pxp); 18 static inline void intel_pxp_suspend_prepare(struct intel_pxp *pxp) in intel_pxp_suspend_prepare() argument 22 static inline void intel_pxp_suspend(struct intel_pxp *pxp) in intel_pxp_suspend() argument 26 static inline void intel_pxp_resume_complete(struct intel_pxp *pxp) in intel_pxp_resume_complete() argument 30 static inline void intel_pxp_runtime_suspend(struct intel_pxp *pxp) in intel_pxp_runtime_suspend() argument 34 static inline void intel_pxp_runtime_resume(struct intel_pxp *pxp) in intel_pxp_runtime_resume() argument
|
| A D | intel_pxp_gsccs.h | 21 void intel_pxp_gsccs_fini(struct intel_pxp *pxp); 22 int intel_pxp_gsccs_init(struct intel_pxp *pxp); 24 int intel_pxp_gsccs_create_session(struct intel_pxp *pxp, int arb_session_id); 25 void intel_pxp_gsccs_end_arb_fw_session(struct intel_pxp *pxp, u32 arb_session_id); 26 bool intel_pxp_gsccs_is_ready_for_sessions(struct intel_pxp *pxp); 29 static inline void intel_pxp_gsccs_fini(struct intel_pxp *pxp) in intel_pxp_gsccs_fini() argument 33 static inline int intel_pxp_gsccs_init(struct intel_pxp *pxp) in intel_pxp_gsccs_init() argument 38 static inline bool intel_pxp_gsccs_is_ready_for_sessions(struct intel_pxp *pxp) in intel_pxp_gsccs_is_ready_for_sessions() argument
|
| A D | intel_pxp_irq.h | 23 void intel_pxp_irq_enable(struct intel_pxp *pxp); 24 void intel_pxp_irq_disable(struct intel_pxp *pxp); 25 void intel_pxp_irq_handler(struct intel_pxp *pxp, u16 iir); 27 static inline void intel_pxp_irq_handler(struct intel_pxp *pxp, u16 iir) in intel_pxp_irq_handler() argument 31 static inline void intel_pxp_irq_enable(struct intel_pxp *pxp) in intel_pxp_irq_enable() argument 35 static inline void intel_pxp_irq_disable(struct intel_pxp *pxp) in intel_pxp_irq_disable() argument
|
| A D | intel_pxp_huc.c | 17 int intel_pxp_huc_load_and_auth(struct intel_pxp *pxp) in intel_pxp_huc_load_and_auth() argument 28 if (!pxp || !pxp->pxp_component) in intel_pxp_huc_load_and_auth() 31 gt = pxp->ctrl_gt; in intel_pxp_huc_load_and_auth() 43 err = intel_pxp_tee_stream_message(pxp, client_id, fence_id, in intel_pxp_huc_load_and_auth()
|
| A D | intel_pxp_session.h | 14 void intel_pxp_session_management_init(struct intel_pxp *pxp); 15 void intel_pxp_terminate(struct intel_pxp *pxp, bool post_invalidation_needs_restart); 17 static inline void intel_pxp_session_management_init(struct intel_pxp *pxp) in intel_pxp_session_management_init() argument 21 static inline void intel_pxp_terminate(struct intel_pxp *pxp, bool post_invalidation_needs_restart) in intel_pxp_terminate() argument
|
| A D | intel_pxp_tee.h | 11 int intel_pxp_tee_component_init(struct intel_pxp *pxp); 12 void intel_pxp_tee_component_fini(struct intel_pxp *pxp); 14 int intel_pxp_tee_cmd_create_arb_session(struct intel_pxp *pxp, 17 int intel_pxp_tee_stream_message(struct intel_pxp *pxp,
|
| A D | intel_pxp_cmd.c | 97 int intel_pxp_terminate_session(struct intel_pxp *pxp, u32 id) in intel_pxp_terminate_session() argument 100 struct intel_context *ce = pxp->ce; in intel_pxp_terminate_session() 104 if (!intel_pxp_is_enabled(pxp)) in intel_pxp_terminate_session()
|
| A D | intel_pxp_debugfs.h | 13 void intel_pxp_debugfs_register(struct intel_pxp *pxp); 16 intel_pxp_debugfs_register(struct intel_pxp *pxp) in intel_pxp_debugfs_register() argument
|
| /drivers/net/ethernet/qlogic/qed/ |
| A D | qed_hw.c | 37 struct pxp_ptt_entry pxp; member 58 p_pool->ptts[i].pxp.offset = QED_BAR_INVALID_OFFSET; in qed_ptt_pool_alloc() 59 p_pool->ptts[i].pxp.pretend.control = 0; in qed_ptt_pool_alloc() 132 return le32_to_cpu(p_ptt->pxp.offset) << 2; in qed_ptt_get_hw_addr() 163 p_ptt->pxp.offset = cpu_to_le32(new_hw_addr >> 2); in qed_ptt_set_win() 168 le32_to_cpu(p_ptt->pxp.offset)); in qed_ptt_set_win() 302 p_ptt->pxp.pretend.control = cpu_to_le16(control); in qed_fid_pretend() 308 *(u32 *)&p_ptt->pxp.pretend); in qed_fid_pretend() 325 *(u32 *)&p_ptt->pxp.pretend); in qed_port_pretend() 341 *(u32 *)&p_ptt->pxp.pretend); in qed_port_unpretend() [all …]
|
| /drivers/gpu/drm/i915/ |
| A D | Makefile | 369 pxp/intel_pxp.o \ 370 pxp/intel_pxp_huc.o \ 371 pxp/intel_pxp_tee.o 374 pxp/intel_pxp_cmd.o \ 375 pxp/intel_pxp_debugfs.o \ 376 pxp/intel_pxp_gsccs.o \ 377 pxp/intel_pxp_irq.o \ 378 pxp/intel_pxp_pm.o \ 379 pxp/intel_pxp_session.o
|