Home
last modified time | relevance | path

Searched refs:lrc (Results 1 – 23 of 23) sorted by relevance

/linux/drivers/gpu/drm/xe/
H A Dxe_lrc.h35 static inline struct xe_lrc *xe_lrc_get(struct xe_lrc *lrc) in xe_lrc_get() argument
37 kref_get(&lrc->refcount); in xe_lrc_get()
38 return lrc; in xe_lrc_get()
48 static inline void xe_lrc_put(struct xe_lrc *lrc) in xe_lrc_put() argument
50 kref_put(&lrc->refcount, xe_lrc_destroy); in xe_lrc_put()
54 u32 xe_lrc_pphwsp_offset(struct xe_lrc *lrc);
55 u32 xe_lrc_regs_offset(struct xe_lrc *lrc);
57 void xe_lrc_set_ring_tail(struct xe_lrc *lrc, u32 tail);
58 u32 xe_lrc_ring_tail(struct xe_lrc *lrc);
59 void xe_lrc_set_ring_head(struct xe_lrc *lrc, u32 head);
[all …]
H A Dxe_lrc.c60 lrc_to_xe(struct xe_lrc *lrc) in lrc_to_xe() argument
62 return gt_to_xe(lrc->fence_ctx.gt); in lrc_to_xe()
640 static inline bool xe_lrc_has_indirect_ring_state(struct xe_lrc *lrc) in xe_lrc_has_indirect_ring_state() argument
642 return lrc->flags & XE_LRC_FLAG_INDIRECT_RING_STATE; in xe_lrc_has_indirect_ring_state()
645 static inline u32 __xe_lrc_ring_offset(struct xe_lrc *lrc) in __xe_lrc_ring_offset() argument
650 u32 xe_lrc_pphwsp_offset(struct xe_lrc *lrc) in xe_lrc_pphwsp_offset() argument
652 return lrc->ring.size; in xe_lrc_pphwsp_offset()
665 u32 xe_lrc_regs_offset(struct xe_lrc *lrc) in xe_lrc_regs_offset() argument
667 return xe_lrc_pphwsp_offset(lrc) + LRC_PPHWSP_SIZE; in xe_lrc_regs_offset()
683 static inline u32 __xe_lrc_seqno_offset(struct xe_lrc *lrc) in __xe_lrc_seqno_offset() argument
[all …]
H A Dxe_ring_ops.c227 static int emit_copy_timestamp(struct xe_lrc *lrc, u32 *dw, int i) in emit_copy_timestamp() argument
231 dw[i++] = xe_lrc_ctx_job_timestamp_ggtt_addr(lrc); in emit_copy_timestamp()
233 dw[i++] = xe_lrc_ctx_timestamp_ggtt_addr(lrc); in emit_copy_timestamp()
241 static void __emit_job_gen12_simple(struct xe_sched_job *job, struct xe_lrc *lrc, in __emit_job_gen12_simple() argument
248 i = emit_copy_timestamp(lrc, dw, i); in __emit_job_gen12_simple()
252 i = emit_flush_imm_ggtt(xe_lrc_start_seqno_ggtt_addr(lrc), in __emit_job_gen12_simple()
256 i = emit_store_imm_ggtt(xe_lrc_start_seqno_ggtt_addr(lrc), in __emit_job_gen12_simple()
269 i = emit_flush_imm_ggtt(xe_lrc_seqno_ggtt_addr(lrc), seqno, false, dw, i); in __emit_job_gen12_simple()
275 xe_lrc_write_ring(lrc, dw, i * sizeof(*dw)); in __emit_job_gen12_simple()
292 static void __emit_job_gen12_video(struct xe_sched_job *job, struct xe_lrc *lrc, in __emit_job_gen12_video() argument
[all …]
H A Dxe_execlist.c43 static void __start_lrc(struct xe_hw_engine *hwe, struct xe_lrc *lrc, in __start_lrc() argument
50 lrc_desc = xe_lrc_descriptor(lrc); in __start_lrc()
64 xe_lrc_write_ctx_reg(lrc, CTX_RING_TAIL, lrc->ring.tail); in __start_lrc()
65 lrc->ring.old_tail = lrc->ring.tail; in __start_lrc()
112 __start_lrc(port->hwe, exl->q->lrc[0], port->last_ctx_id); in __xe_execlist_port_start()
126 xe_lrc_write_ring(port->lrc, noop, sizeof(noop)); in __xe_execlist_port_idle()
127 __start_lrc(port->hwe, port->lrc, 0); in __xe_execlist_port_idle()
133 struct xe_lrc *lrc = exl->q->lrc[0]; in xe_execlist_is_idle() local
135 return lrc->ring.tail == lrc->ring.old_tail; in xe_execlist_is_idle()
267 port->lrc = xe_lrc_create(hwe, NULL, SZ_16K); in xe_execlist_port_create()
[all …]
H A Dxe_sched_job.c219 struct xe_lrc *lrc = job->q->lrc[0]; in xe_sched_job_started() local
222 xe_lrc_start_seqno(lrc), in xe_sched_job_started()
228 struct xe_lrc *lrc = job->q->lrc[0]; in xe_sched_job_completed() local
236 xe_lrc_seqno(lrc), in xe_sched_job_completed()
268 xe_lrc_init_seqno_fence(q->lrc[i], fence); in xe_sched_job_arm()
H A Dxe_execlist_types.h31 struct xe_lrc *lrc; member
H A Dxe_guc_submit_types.h101 struct xe_lrc_snapshot **lrc; member
H A Dxe_exec_queue_types.h146 struct xe_lrc *lrc[]; member
H A Dxe_gt_types.h403 unsigned long *lrc; member
H A Dxe_wa.c820 xe_rtp_process_ctx_enable_active_tracking(&ctx, hwe->gt->wa_active.lrc, in xe_wa_process_lrc()
851 gt->wa_active.lrc = p; in xe_wa_init()
871 for_each_set_bit(idx, gt->wa_active.lrc, ARRAY_SIZE(lrc_was)) in xe_wa_dump()
H A Dxe_gt.c350 &q->lrc[0]->bo->vmap, in xe_gt_record_default_lrcs()
351 xe_lrc_pphwsp_offset(q->lrc[0]), in xe_gt_record_default_lrcs()
/linux/drivers/nfc/fdp/
H A Di2c.c66 u8 lrc = 0; in fdp_nci_i2c_add_len_lrc() local
76 lrc ^= skb->data[i]; in fdp_nci_i2c_add_len_lrc()
78 skb_put_u8(skb, lrc); in fdp_nci_i2c_add_len_lrc()
132 u8 tmp[FDP_NCI_I2C_MAX_PAYLOAD], lrc, k; in fdp_nci_i2c_read() local
151 for (lrc = i = 0; i < r; i++) in fdp_nci_i2c_read()
152 lrc ^= tmp[i]; in fdp_nci_i2c_read()
159 if (lrc) { in fdp_nci_i2c_read()
/linux/drivers/gpu/drm/i915/gt/
H A Dselftest_lrc.c160 u32 *lrc; in live_lrc_layout() local
168 lrc = (u32 *)__get_free_page(GFP_KERNEL); /* requires page alignment */ in live_lrc_layout()
169 if (!lrc) in live_lrc_layout()
171 GEM_BUG_ON(offset_in_page(lrc)); in live_lrc_layout()
188 __lrc_init_regs(memset(lrc, POISON_INUSE, PAGE_SIZE), in live_lrc_layout()
201 if (lrc[dw] == 0) { in live_lrc_layout()
215 if (lrc[dw] != lri) { in live_lrc_layout()
217 engine->name, dw, lri, lrc[dw]); in live_lrc_layout()
241 if ((offset ^ lrc[dw]) & lri_mask) { in live_lrc_layout()
243 engine->name, dw, offset, lrc[dw]); in live_lrc_layout()
[all …]
H A Dintel_execlists_submission.c400 rq->context->lrc.desc |= CTX_DESC_FORCE_RESTORE; in __unwind_incomplete_requests()
466 ce->lrc.lrca = lrc_update_regs(ce, engine, head); in reset_active()
495 ce->lrc.ccid = ce->tag; in __execlists_schedule_in()
502 ce->lrc.ccid = tag << (XEHP_SW_CTX_ID_SHIFT - 32); in __execlists_schedule_in()
512 ce->lrc.ccid = (1 + tag) << (GEN11_SW_CTX_ID_SHIFT - 32); in __execlists_schedule_in()
517 ce->lrc.ccid |= engine->execlists.ccid; in __execlists_schedule_in()
525 CE_TRACE(ce, "schedule-in, ccid:%x\n", ce->lrc.ccid); in __execlists_schedule_in()
601 CE_TRACE(ce, "schedule-out, ccid:%x\n", ce->lrc.ccid); in __execlists_schedule_out()
615 ccid = ce->lrc.ccid; in __execlists_schedule_out()
681 desc = ce->lrc.desc; in execlists_update_context()
[all …]
H A Dintel_context_types.h149 } lrc; member
H A Dintel_lrc.c1185 ce->lrc.lrca = lrc_update_regs(ce, ce->engine, ce->ring->tail); in lrc_reset()
1216 ce->lrc.lrca = lrc_update_regs(ce, engine, ce->ring->tail); in lrc_pin()
H A Dintel_engine_cs.c2185 rq->context->lrc.ccid, in intel_engine_print_registers()
2199 rq->context->lrc.ccid, in intel_engine_print_registers()
/linux/drivers/media/usb/dvb-usb/
H A Dtechnisat-usb2.c410 u8 lrc = 0; in technisat_usb2_calc_lrc() local
412 lrc ^= *b++; in technisat_usb2_calc_lrc()
413 return lrc; in technisat_usb2_calc_lrc()
/linux/drivers/gpu/drm/i915/gt/uc/
H A Dintel_guc_capture.c1555 (n->lrca & CTX_GTT_ADDRESS_MASK) == (ce->lrc.lrca & CTX_GTT_ADDRESS_MASK)) in intel_guc_capture_is_matching_engine()
1587 (n->lrca & CTX_GTT_ADDRESS_MASK) == (ce->lrc.lrca & CTX_GTT_ADDRESS_MASK)) { in intel_guc_capture_get_matching_node()
1597 ce->guc_id.id, ce->lrc.lrca); in intel_guc_capture_get_matching_node()
H A Dintel_guc_submission.c881 *wqi++ = ce->lrc.lrca; in __guc_wq_item_append()
2457 action[len++] = lower_32_bits(child->lrc.lrca); in __guc_action_register_multi_lrc_v70()
2458 action[len++] = upper_32_bits(child->lrc.lrca); in __guc_action_register_multi_lrc_v70()
2758 desc->hw_context_desc = ce->lrc.lrca; in prepare_context_registration_info_v69()
2795 desc->hw_context_desc = child->lrc.lrca; in prepare_context_registration_info_v69()
2829 info->hwlrca_lo = lower_32_bits(ce->lrc.lrca); in prepare_context_registration_info_v70()
2830 info->hwlrca_hi = upper_32_bits(ce->lrc.lrca); in prepare_context_registration_info_v70()
2948 (ce->lrc.lrca & CTX_GTT_ADDRESS_MASK)) in __guc_context_pin()
5476 drm_printf(p, "\tHW Context Desc: 0x%08x\n", ce->lrc.lrca); in guc_log_context()
/linux/drivers/scsi/ibmvscsi_tgt/
H A Dibmvscsi_tgt.c3924 long lrc; in ibmvscsis_enable_tpg() local
3929 lrc = ibmvscsis_enable_change_state(vscsi); in ibmvscsis_enable_tpg()
3930 if (lrc) in ibmvscsis_enable_tpg()
3932 lrc, vscsi->state); in ibmvscsis_enable_tpg()
/linux/drivers/gpu/drm/i915/gvt/
H A Dscheduler.c348 u64 desc = ce->lrc.desc; in shadow_context_descriptor_update()
358 ce->lrc.desc = desc; in shadow_context_descriptor_update()
/linux/drivers/scsi/
H A DFlashPoint.c7482 unsigned char lrc; in FPT_CalcLrc() local
7483 lrc = 0; in FPT_CalcLrc()
7485 lrc ^= buffer[i]; in FPT_CalcLrc()
7486 return lrc; in FPT_CalcLrc()