Home
last modified time | relevance | path

Searched refs:msg_queue (Results 1 – 14 of 14) sorted by relevance

/linux-6.6.21/drivers/media/platform/mediatek/vcodec/decoder/
Dvdec_msg_queue.c58 static void vdec_msg_queue_inc(struct vdec_msg_queue *msg_queue, int hardware_index) in vdec_msg_queue_inc() argument
61 atomic_inc(&msg_queue->core_list_cnt); in vdec_msg_queue_inc()
63 atomic_inc(&msg_queue->lat_list_cnt); in vdec_msg_queue_inc()
66 static void vdec_msg_queue_dec(struct vdec_msg_queue *msg_queue, int hardware_index) in vdec_msg_queue_dec() argument
69 atomic_dec(&msg_queue->core_list_cnt); in vdec_msg_queue_dec()
71 atomic_dec(&msg_queue->lat_list_cnt); in vdec_msg_queue_dec()
88 vdec_msg_queue_inc(&buf->ctx->msg_queue, msg_ctx->hardware_index); in vdec_msg_queue_qbuf()
92 if (!(buf->ctx->msg_queue.status & CONTEXT_LIST_QUEUED)) { in vdec_msg_queue_qbuf()
93 queue_work(buf->ctx->dev->core_workqueue, &buf->ctx->msg_queue.core_work); in vdec_msg_queue_qbuf()
94 buf->ctx->msg_queue.status |= CONTEXT_LIST_QUEUED; in vdec_msg_queue_qbuf()
[all …]
Dvdec_msg_queue.h132 int vdec_msg_queue_init(struct vdec_msg_queue *msg_queue,
165 void vdec_msg_queue_update_ube_rptr(struct vdec_msg_queue *msg_queue, uint64_t ube_rptr);
172 void vdec_msg_queue_update_ube_wptr(struct vdec_msg_queue *msg_queue, uint64_t ube_wptr);
181 bool vdec_msg_queue_wait_lat_buf_full(struct vdec_msg_queue *msg_queue);
188 void vdec_msg_queue_deinit(struct vdec_msg_queue *msg_queue,
Dmtk_vcodec_dec_drv.h208 struct vdec_msg_queue msg_queue; member
/linux-6.6.21/drivers/media/platform/mediatek/vcodec/decoder/vdec/
Dvdec_h264_req_multi_if.c448 vdec_msg_queue_deinit(&inst->ctx->msg_queue, inst->ctx); in vdec_h264_slice_deinit()
492 lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_h264_slice_core_decode()
494 lat_buf->ctx->msg_queue.wdma_addr.dma_addr + in vdec_h264_slice_core_decode()
495 lat_buf->ctx->msg_queue.wdma_addr.size; in vdec_h264_slice_core_decode()
535 vdec_msg_queue_update_ube_rptr(&lat_buf->ctx->msg_queue, share_info->trans_end); in vdec_h264_slice_core_decode()
578 if (vdec_msg_queue_init(&inst->ctx->msg_queue, inst->ctx, in vdec_h264_slice_lat_decode()
585 vdec_msg_queue_wait_lat_buf_full(&inst->ctx->msg_queue); in vdec_h264_slice_lat_decode()
592 lat_buf = vdec_msg_queue_dqbuf(&inst->ctx->msg_queue.lat_ctx); in vdec_h264_slice_lat_decode()
636 inst->vsi->wdma_start_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_h264_slice_lat_decode()
637 inst->vsi->wdma_end_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr + in vdec_h264_slice_lat_decode()
[all …]
Dvdec_hevc_req_multi_if.c765 inst->vsi->ube.dma_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_hevc_slice_setup_lat_buffer()
766 inst->vsi->ube.size = lat_buf->ctx->msg_queue.wdma_addr.size; in vdec_hevc_slice_setup_lat_buffer()
774 inst->vsi->trans.dma_addr_end = inst->ctx->msg_queue.wdma_rptr_addr; in vdec_hevc_slice_setup_lat_buffer()
775 inst->vsi->trans.dma_addr = inst->ctx->msg_queue.wdma_wptr_addr; in vdec_hevc_slice_setup_lat_buffer()
828 inst->vsi_core->ube.dma_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_hevc_slice_setup_core_buffer()
829 inst->vsi_core->ube.size = lat_buf->ctx->msg_queue.wdma_addr.size; in vdec_hevc_slice_setup_core_buffer()
919 vdec_msg_queue_deinit(&inst->ctx->msg_queue, inst->ctx); in vdec_hevc_slice_deinit()
963 vdec_msg_queue_update_ube_rptr(&lat_buf->ctx->msg_queue, share_info->trans.dma_addr_end); in vdec_hevc_slice_core_decode()
980 if (vdec_msg_queue_init(&inst->ctx->msg_queue, inst->ctx, in vdec_hevc_slice_lat_decode()
987 vdec_msg_queue_wait_lat_buf_full(&inst->ctx->msg_queue); in vdec_hevc_slice_lat_decode()
[all …]
Dvdec_av1_req_lat_if.c1595 vsi->ube.dma_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_av1_slice_setup_lat_buffer()
1596 vsi->ube.size = lat_buf->ctx->msg_queue.wdma_addr.size; in vdec_av1_slice_setup_lat_buffer()
1597 vsi->trans.dma_addr = lat_buf->ctx->msg_queue.wdma_wptr_addr; in vdec_av1_slice_setup_lat_buffer()
1599 vsi->trans.dma_addr_end = lat_buf->ctx->msg_queue.wdma_rptr_addr; in vdec_av1_slice_setup_lat_buffer()
1946 vdec_msg_queue_deinit(&instance->ctx->msg_queue, instance->ctx); in vdec_av1_slice_deinit()
1958 vdec_msg_queue_wait_lat_buf_full(&instance->ctx->msg_queue); in vdec_av1_slice_flush()
2042 if (vdec_msg_queue_init(&ctx->msg_queue, ctx, in vdec_av1_slice_lat_decode()
2052 lat_buf = vdec_msg_queue_dqbuf(&ctx->msg_queue.lat_ctx); in vdec_av1_slice_lat_decode()
2077 vdec_msg_queue_qbuf(&ctx->msg_queue.core_ctx, lat_buf); in vdec_av1_slice_lat_decode()
2098 vdec_msg_queue_qbuf(&ctx->msg_queue.lat_ctx, lat_buf); in vdec_av1_slice_lat_decode()
[all …]
Dvdec_vp9_req_lat_if.c1005 vsi->ube.dma_addr = lat_buf->ctx->msg_queue.wdma_addr.dma_addr; in vdec_vp9_slice_setup_lat_buffer()
1006 vsi->ube.size = lat_buf->ctx->msg_queue.wdma_addr.size; in vdec_vp9_slice_setup_lat_buffer()
1007 vsi->trans.dma_addr = lat_buf->ctx->msg_queue.wdma_wptr_addr; in vdec_vp9_slice_setup_lat_buffer()
1009 vsi->trans.dma_addr_end = lat_buf->ctx->msg_queue.wdma_rptr_addr; in vdec_vp9_slice_setup_lat_buffer()
1918 vdec_msg_queue_deinit(&instance->ctx->msg_queue, instance->ctx); in vdec_vp9_slice_deinit()
1929 vdec_msg_queue_wait_lat_buf_full(&instance->ctx->msg_queue); in vdec_vp9_slice_flush()
2052 if (vdec_msg_queue_init(&ctx->msg_queue, ctx, in vdec_vp9_slice_lat_decode()
2061 lat_buf = vdec_msg_queue_dqbuf(&instance->ctx->msg_queue.lat_ctx); in vdec_vp9_slice_lat_decode()
2110 vdec_msg_queue_update_ube_wptr(&ctx->msg_queue, in vdec_vp9_slice_lat_decode()
2112 ctx->msg_queue.wdma_addr.dma_addr); in vdec_vp9_slice_lat_decode()
[all …]
/linux-6.6.21/ipc/
Dmsg.c49 struct msg_queue { struct
102 static inline struct msg_queue *msq_obtain_object(struct ipc_namespace *ns, int id) in msq_obtain_object()
109 return container_of(ipcp, struct msg_queue, q_perm); in msq_obtain_object()
112 static inline struct msg_queue *msq_obtain_object_check(struct ipc_namespace *ns, in msq_obtain_object_check()
120 return container_of(ipcp, struct msg_queue, q_perm); in msq_obtain_object_check()
123 static inline void msg_rmid(struct ipc_namespace *ns, struct msg_queue *s) in msg_rmid()
131 struct msg_queue *msq = container_of(p, struct msg_queue, q_perm); in msg_rcu_free()
146 struct msg_queue *msq; in newque()
187 static inline bool msg_fits_inqueue(struct msg_queue *msq, size_t msgsz) in msg_fits_inqueue()
193 static inline void ss_add(struct msg_queue *msq, in ss_add()
[all …]
/linux-6.6.21/drivers/staging/vc04_services/interface/vchiq_arm/
Dvchiq_arm.h41 struct vchiq_header *msg_queue[MSG_QUEUE_SIZE]; member
Dvchiq_core.h257 struct vchiq_header *msg_queue[VCHIQ_MAX_SLOTS]; member
Dvchiq_dev.c257 header = user_service->msg_queue[user_service->msg_remove & in vchiq_ioc_dequeue_message()
1261 header = user_service->msg_queue[m]; in vchiq_release()
Dvchiq_arm.c1142 user_service->msg_queue[user_service->msg_insert & in service_callback()
Dvchiq_core.c2323 service->msg_queue[pos] = header; in vchiq_msg_queue_push()
2348 header = service->msg_queue[pos]; in vchiq_msg_hold()
/linux-6.6.21/Documentation/security/
Dlsm.rst85 msg_msg <msg_msg>`, struct msg_queue, and struct shmid_kernel