Lines Matching refs:ps_jobq
96 IV_API_CALL_STATUS_T impeg2_jobq_lock(jobq_t *ps_jobq) in impeg2_jobq_lock() argument
99 i4_ret_val = ithread_mutex_lock(ps_jobq->pv_mutex); in impeg2_jobq_lock()
126 IV_API_CALL_STATUS_T impeg2_jobq_unlock(jobq_t *ps_jobq) in impeg2_jobq_unlock() argument
129 i4_ret_val = ithread_mutex_unlock(ps_jobq->pv_mutex); in impeg2_jobq_unlock()
159 IV_API_CALL_STATUS_T impeg2_jobq_yield(jobq_t *ps_jobq) in impeg2_jobq_yield() argument
165 e_ret_tmp = impeg2_jobq_unlock(ps_jobq); in impeg2_jobq_yield()
171 e_ret_tmp = impeg2_jobq_lock(ps_jobq); in impeg2_jobq_yield()
195 IV_API_CALL_STATUS_T impeg2_jobq_free(jobq_t *ps_jobq) in impeg2_jobq_free() argument
198 i4_ret = ithread_mutex_destroy(ps_jobq->pv_mutex); in impeg2_jobq_free()
230 jobq_t *ps_jobq; in impeg2_jobq_init() local
234 ps_jobq = (jobq_t *)pu1_buf; in impeg2_jobq_init()
238 ps_jobq->pv_mutex = pu1_buf; in impeg2_jobq_init()
245 ithread_mutex_init(ps_jobq->pv_mutex); in impeg2_jobq_init()
247 ps_jobq->pv_buf_base = pu1_buf; in impeg2_jobq_init()
248 ps_jobq->pv_buf_wr = pu1_buf; in impeg2_jobq_init()
249 ps_jobq->pv_buf_rd = pu1_buf; in impeg2_jobq_init()
250 ps_jobq->pv_buf_end = pu1_buf + i4_buf_size; in impeg2_jobq_init()
251 ps_jobq->i4_terminate = 0; in impeg2_jobq_init()
254 return ps_jobq; in impeg2_jobq_init()
274 IV_API_CALL_STATUS_T impeg2_jobq_reset(jobq_t *ps_jobq) in impeg2_jobq_reset() argument
277 e_ret = impeg2_jobq_lock(ps_jobq); in impeg2_jobq_reset()
280 ps_jobq->pv_buf_wr = ps_jobq->pv_buf_base; in impeg2_jobq_reset()
281 ps_jobq->pv_buf_rd = ps_jobq->pv_buf_base; in impeg2_jobq_reset()
282 ps_jobq->i4_terminate = 0; in impeg2_jobq_reset()
283 e_ret = impeg2_jobq_unlock(ps_jobq); in impeg2_jobq_reset()
308 IV_API_CALL_STATUS_T impeg2_jobq_deinit(jobq_t *ps_jobq) in impeg2_jobq_deinit() argument
313 e_ret = impeg2_jobq_reset(ps_jobq); in impeg2_jobq_deinit()
316 i4_ret_val = ithread_mutex_destroy(ps_jobq->pv_mutex); in impeg2_jobq_deinit()
345 IV_API_CALL_STATUS_T impeg2_jobq_terminate(jobq_t *ps_jobq) in impeg2_jobq_terminate() argument
348 e_ret = impeg2_jobq_lock(ps_jobq); in impeg2_jobq_terminate()
351 ps_jobq->i4_terminate = 1; in impeg2_jobq_terminate()
353 e_ret = impeg2_jobq_unlock(ps_jobq); in impeg2_jobq_terminate()
389 IV_API_CALL_STATUS_T impeg2_jobq_queue(jobq_t *ps_jobq, in impeg2_jobq_queue() argument
402 e_ret_tmp = impeg2_jobq_lock(ps_jobq); in impeg2_jobq_queue()
405 pu1_buf = (UWORD8 *)ps_jobq->pv_buf_wr; in impeg2_jobq_queue()
406 if((UWORD8 *)ps_jobq->pv_buf_end >= (pu1_buf + i4_job_size)) in impeg2_jobq_queue()
408 memcpy(ps_jobq->pv_buf_wr, pv_job, i4_job_size); in impeg2_jobq_queue()
409 ps_jobq->pv_buf_wr = (UWORD8 *)ps_jobq->pv_buf_wr + i4_job_size; in impeg2_jobq_queue()
421 ps_jobq->i4_terminate = 0; in impeg2_jobq_queue()
425 e_ret_tmp = impeg2_jobq_unlock(ps_jobq); in impeg2_jobq_queue()
463 IV_API_CALL_STATUS_T impeg2_jobq_dequeue(jobq_t *ps_jobq, in impeg2_jobq_dequeue() argument
474 e_ret_tmp = impeg2_jobq_lock(ps_jobq); in impeg2_jobq_dequeue()
477 pu1_buf = (UWORD8 *)ps_jobq->pv_buf_rd; in impeg2_jobq_dequeue()
480 if((UWORD8 *)ps_jobq->pv_buf_end >= (pu1_buf + i4_job_size)) in impeg2_jobq_dequeue()
484 pu1_buf = (UWORD8 *)ps_jobq->pv_buf_rd; in impeg2_jobq_dequeue()
485 if((UWORD8 *)ps_jobq->pv_buf_wr >= (pu1_buf + i4_job_size)) in impeg2_jobq_dequeue()
487 memcpy(pv_job, ps_jobq->pv_buf_rd, i4_job_size); in impeg2_jobq_dequeue()
488 ps_jobq->pv_buf_rd = (UWORD8 *)ps_jobq->pv_buf_rd + i4_job_size; in impeg2_jobq_dequeue()
495 if(1 == ps_jobq->i4_terminate) in impeg2_jobq_dequeue()
503 impeg2_jobq_yield(ps_jobq); in impeg2_jobq_dequeue()
525 e_ret_tmp = impeg2_jobq_unlock(ps_jobq); in impeg2_jobq_dequeue()