video: rockchip: mpp: clear cache before run hardware

Change-Id: Ifbac051031433106c26de82d1fe691e5b7ac2429
Signed-off-by: Ding Wei <leo.ding@rock-chips.com>
This commit is contained in:
Ding Wei
2019-11-14 14:58:37 +08:00
committed by Tao Huang
parent 69c7c17655
commit 9dc4984769
5 changed files with 6 additions and 6 deletions

View File

@@ -779,8 +779,8 @@ static int rkvdec_run(struct mpp_dev *mpp,
mpp_write_relaxed(mpp, RKVDEC_REG_CACHE0_SIZE_BASE, reg);
mpp_write_relaxed(mpp, RKVDEC_REG_CACHE0_SIZE_BASE, reg);
/* clear cache */
mpp_write_relaxed(mpp, RKVDEC_REG_CLR_CACHE0_BASE, 0);
mpp_write_relaxed(mpp, RKVDEC_REG_CLR_CACHE1_BASE, 0);
mpp_write_relaxed(mpp, RKVDEC_REG_CLR_CACHE0_BASE, 1);
mpp_write_relaxed(mpp, RKVDEC_REG_CLR_CACHE1_BASE, 1);
/* set registers for hardware */
regidx_start = task->hw_info->regidx_start;
regidx_end = task->hw_info->regidx_end;

View File

@@ -352,7 +352,7 @@ static int vdpu_run(struct mpp_dev *mpp,
/* FIXME: spin lock here */
dec->current_task = task;
/* clear cache */
mpp_write_relaxed(mpp, VDPU1_REG_CLR_CACHE_BASE, 0);
mpp_write_relaxed(mpp, VDPU1_REG_CLR_CACHE_BASE, 1);
/* set registers for hardware */
regidx_start = task->hw_info->regidx_start;
regidx_end = task->hw_info->regidx_end;

View File

@@ -317,7 +317,7 @@ static int vdpu_run(struct mpp_dev *mpp,
dec->current_task = task;
/* clear cache */
mpp_write_relaxed(mpp, VDPU2_REG_CLR_CACHE_BASE, 0);
mpp_write_relaxed(mpp, VDPU2_REG_CLR_CACHE_BASE, 1);
/* set registers for hardware */
regidx_start = task->hw_info->regidx_start;
regidx_end = task->hw_info->regidx_end;

View File

@@ -231,7 +231,7 @@ static int vepu_run(struct mpp_dev *mpp,
/* FIXME: spin lock here */
enc->current_task = task;
/* clear cache */
mpp_write_relaxed(mpp, VEPU1_REG_CLR_CACHE_BASE, 0);
mpp_write_relaxed(mpp, VEPU1_REG_CLR_CACHE_BASE, 1);
/* set registers for hardware */
regidx_start = task->hw_info->regidx_start;
regidx_end = task->hw_info->regidx_end;

View File

@@ -238,7 +238,7 @@ static int vepu_run(struct mpp_dev *mpp,
/* FIXME: spin lock here */
enc->current_task = task;
/* clear cache */
mpp_write_relaxed(mpp, VEPU2_REG_CLR_CACHE_BASE, 0);
mpp_write_relaxed(mpp, VEPU2_REG_CLR_CACHE_BASE, 1);
regidx_start = task->hw_info->regidx_start;
regidx_end = task->hw_info->regidx_end;