u32 vcd_update_decoder_perf_level(struct vcd_dev_ctxt *dev_ctxt, u32 perf_lvl) { u32 rc = VCD_S_SUCCESS; if (res_trk_set_perf_level(perf_lvl, &dev_ctxt->curr_perf_lvl, dev_ctxt)) { dev_ctxt->set_perf_lvl_pending = false; } else { rc = VCD_ERR_FAIL; dev_ctxt->set_perf_lvl_pending = true; } return rc; }
u32 vcd_set_perf_level(struct vcd_dev_ctxt *dev_ctxt, u32 perf_lvl) { u32 rc = VCD_S_SUCCESS; if (!vcd_core_is_busy(dev_ctxt)) { if (res_trk_set_perf_level(perf_lvl, &dev_ctxt->curr_perf_lvl, dev_ctxt)) { dev_ctxt->set_perf_lvl_pending = false; } else { rc = VCD_ERR_FAIL; dev_ctxt->set_perf_lvl_pending = true; } } else { dev_ctxt->set_perf_lvl_pending = true; } return rc; }
u32 vcd_set_perf_level(struct vcd_dev_ctxt_type *p_dev_ctxt, u32 n_perf_lvl, struct vcd_clnt_ctxt_type_t *p_cctxt) { u32 rc = VCD_S_SUCCESS; if (!vcd_core_is_busy(p_dev_ctxt)) { if (res_trk_set_perf_level(n_perf_lvl, &p_dev_ctxt->n_curr_perf_lvl, p_cctxt)) { p_dev_ctxt->b_set_perf_lvl_pending = FALSE; } else { rc = VCD_ERR_FAIL; p_dev_ctxt->b_set_perf_lvl_pending = TRUE; } } else { p_dev_ctxt->b_set_perf_lvl_pending = TRUE; } return rc; }