Home
last modified time | relevance | path

Searched refs:queue (Results 1 – 11 of 11) sorted by relevance

/rockchip-linux_mpp/osal/
H A Dmpp_queue.c11 MppQueue *queue = mpp_malloc(MppQueue, 1); in mpp_queue_create() local
13 queue->list = mpp_list_create(func); in mpp_queue_create()
14 sem_init(&queue->queue_pending, 0, 0); in mpp_queue_create()
15 queue->flush_flag = 0; in mpp_queue_create()
17 return queue; in mpp_queue_create()
20 void mpp_queue_destroy(MppQueue *queue) in mpp_queue_destroy() argument
22 mpp_list_destroy(queue->list); in mpp_queue_destroy()
23 mpp_free(queue); in mpp_queue_destroy()
26 rk_s32 mpp_queue_push(MppQueue *queue, void *data, rk_s32 size) in mpp_queue_push() argument
30 ret = mpp_list_add_at_tail(queue->list, data, size); in mpp_queue_push()
[all …]
/rockchip-linux_mpp/mpp/base/
H A Dmpp_task_impl.c53 MppTaskQueueImpl *queue; member
92 static MPP_RET mpp_port_init(MppTaskQueueImpl *queue, MppPortType type, MppPort *port) in mpp_port_init() argument
100 mpp_task_dbg_func("enter queue %p type %d\n", queue, type); in mpp_port_init()
103 impl->queue = queue; in mpp_port_init()
117 mpp_task_dbg_func("leave queue %p port %p\n", queue, impl); in mpp_port_init()
133 MppTaskQueueImpl *queue = port_impl->queue; in _mpp_port_poll() local
137 mpp_mutex_lock(&queue->lock); in _mpp_port_poll()
140 if (!queue->ready) { in _mpp_port_poll()
146 curr = &queue->info[port_impl->status_curr]; in _mpp_port_poll()
151 queue->mpp, queue->name, caller, in _mpp_port_poll()
[all …]
H A Dmpp_cluster.c73 ClusterQueue *queue; member
123 ClusterQueue queue[MAX_PRIORITY]; member
148 #define cluster_queue_lock(queue) cluster_queue_lock_f(__FUNCTION__, queue) argument
149 #define cluster_queue_unlock(queue) cluster_queue_unlock_f(__FUNCTION__, queue) argument
165 static MPP_RET cluster_queue_lock_f(const char *caller, ClusterQueue *queue) in cluster_queue_lock_f() argument
167 MppCluster *cluster = queue->cluster; in cluster_queue_lock_f()
172 ret = pthread_mutex_lock(&queue->lock); in cluster_queue_lock_f()
179 static MPP_RET cluster_queue_unlock_f(const char *caller, ClusterQueue *queue) in cluster_queue_unlock_f() argument
181 MppCluster *cluster = queue->cluster; in cluster_queue_unlock_f()
186 ret = pthread_mutex_unlock(&queue->lock); in cluster_queue_unlock_f()
[all …]
H A Dmpp_buf_slot.c239 struct list_head queue[QUEUE_BUTT]; member
771 for (i = 0; i < (RK_S32)MPP_ARRAY_ELEMS(impl->queue); i++) { in clear_slots_impl()
772 if (!list_empty(&impl->queue[i])) in clear_slots_impl()
775 mpp_assert(list_empty(&impl->queue[i])); in clear_slots_impl()
833 for (i = 0; i < MPP_ARRAY_ELEMS(impl->queue); i++) { in mpp_buf_slot_init()
834 INIT_LIST_HEAD(&impl->queue[i]); in mpp_buf_slot_init()
1122 list_add_tail(&slot->list, &impl->queue[type]); in mpp_buf_slot_enqueue()
1141 if (list_empty(&impl->queue[type])) { in mpp_buf_slot_dequeue()
1146 slot = list_entry(impl->queue[type].next, MppBufSlotEntry, list); in mpp_buf_slot_dequeue()
1386 is_empty = list_empty(&impl->queue[type]) ? 1 : 0; in mpp_slots_is_empty()
/rockchip-linux_mpp/doc/design/
H A D4.mpp_task.txt19 1. Mpp task queue
20 Mpp task queue is the manager of tasks. Due to user may incorrectly use the task
21 we choose the design that hold all task inside mpp. Task queue will create and
22 release task. But task queue will not interact with user directly. We use port
26 Mpp port is the transaction interface of task queue. External user and internal
28 interface to poll / dequeue / enqueue the task task queue. Mpp advanced mode is
30 thread. Each task queue has two port: input port and output port. And from a
57 1. task queue
83 On advanced mode mpp uses two task queue: input task queue and output task
84 queue.
[all …]
H A D1.mpp_design.txt57 | | buffer queue manage | | | |
/rockchip-linux_mpp/mpp/base/inc/
H A Dmpp_task_impl.h68 MppTaskQueue queue; member
106 MPP_RET mpp_task_queue_init(MppTaskQueue *queue, void *mpp, const char *name);
107 MPP_RET mpp_task_queue_setup(MppTaskQueue queue, RK_S32 task_count);
108 MPP_RET mpp_task_queue_deinit(MppTaskQueue queue);
109 MppPort mpp_task_queue_get_port(MppTaskQueue queue, MppPortType type);
/rockchip-linux_mpp/mpp/codec/enc/h264/
H A Dh264e_slice.c773 RK_S32 queue; member
795 ctx->queue = -9; in init_context()
802 if (ctx->queue >= 0) { in h264e_cabac_putbyte()
803 RK_S32 out = ctx->low >> (ctx->queue + 10); in h264e_cabac_putbyte()
805 ctx->low &= (0x400 << ctx->queue) - 1; in h264e_cabac_putbyte()
806 ctx->queue -= 8; in h264e_cabac_putbyte()
815 if (ctx->queue > 0) in h264e_cabac_putbyte()
816 mpp_writer_put_bits(s, carry, ctx->queue & 0x7); in h264e_cabac_putbyte()
823 mpp_writer_put_bits(s, out, MPP_MIN(8, 8 - ctx->queue)); in h264e_cabac_putbyte()
842 ctx->queue += shift; in h264e_cabac_renorm()
[all …]
/rockchip-linux_mpp/debian/
H A Dchangelog189 * [osal]: add queue data type
190 * [mpp]: use the blokcing queue on the input
/rockchip-linux_mpp/
H A Dreadme.txt202 | | buffer queue manage | | | |
/rockchip-linux_mpp/doc/
H A DRockchip_Developer_Guide_MPP_EN.md323 By default the MPP instance can receive four input stream packets in the processing queue. If input…