summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYixin Peng <yixin.peng@amlogic.com>2018-07-26 17:07:02 +0800
committerZhi Zhou <zhi.zhou@amlogic.com>2018-07-29 19:41:19 -0700
commit877a2735726bc3936cabf99449254a88850e1972 (patch)
tree805ea1704b224bf996c07bb159862878bb62af70
parentcb9ca0147febf6c5eb18ec16f8fe850a5195287b (diff)
downloadmedia_modules-877a2735726bc3936cabf99449254a88850e1972.tar.gz
vdec: reduce CPU usage.
PD#170687 1.modify code: decode schedule doesn't work when video isn't play. Change-Id: I7dfbe1b90e30980e05003404a8b4275502153639
-rw-r--r--drivers/frame_provider/decoder/utils/vdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/frame_provider/decoder/utils/vdec.c b/drivers/frame_provider/decoder/utils/vdec.c
index 3c2488f..635e856 100644
--- a/drivers/frame_provider/decoder/utils/vdec.c
+++ b/drivers/frame_provider/decoder/utils/vdec.c
@@ -2246,7 +2246,7 @@ static int vdec_core_thread(void *data)
/* if there is no new work scheduled and nothing
* is running, sleep 20ms
*/
- if ((!worker) && (!core->sched_mask)) {
+ if ((!worker) && (!core->sched_mask) && (atomic_read(&vdec_core->vdec_nr) > 0)) {
usleep_range(1000, 2000);
up(&core->sem);
}