From 9dc49847694d330a3428d8996f3eb38fcce9fad4 Mon Sep 17 00:00:00 2001 From: Ding Wei Date: Thu, 14 Nov 2019 14:58:37 +0800 Subject: [PATCH] video: rockchip: mpp: clear cache before run hardware Change-Id: Ifbac051031433106c26de82d1fe691e5b7ac2429 Signed-off-by: Ding Wei --- drivers/video/rockchip/mpp/mpp_rkvdec.c | 4 ++-- drivers/video/rockchip/mpp/mpp_vdpu1.c | 2 +- drivers/video/rockchip/mpp/mpp_vdpu2.c | 2 +- drivers/video/rockchip/mpp/mpp_vepu1.c | 2 +- drivers/video/rockchip/mpp/mpp_vepu2.c | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/video/rockchip/mpp/mpp_rkvdec.c b/drivers/video/rockchip/mpp/mpp_rkvdec.c index 93989b574840..81cd2aac1309 100644 --- a/drivers/video/rockchip/mpp/mpp_rkvdec.c +++ b/drivers/video/rockchip/mpp/mpp_rkvdec.c @@ -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; diff --git a/drivers/video/rockchip/mpp/mpp_vdpu1.c b/drivers/video/rockchip/mpp/mpp_vdpu1.c index 1139b4f3b71b..421b2308aab0 100644 --- a/drivers/video/rockchip/mpp/mpp_vdpu1.c +++ b/drivers/video/rockchip/mpp/mpp_vdpu1.c @@ -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; diff --git a/drivers/video/rockchip/mpp/mpp_vdpu2.c b/drivers/video/rockchip/mpp/mpp_vdpu2.c index 24af5cdb523c..b179b6d88771 100644 --- a/drivers/video/rockchip/mpp/mpp_vdpu2.c +++ b/drivers/video/rockchip/mpp/mpp_vdpu2.c @@ -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; diff --git a/drivers/video/rockchip/mpp/mpp_vepu1.c b/drivers/video/rockchip/mpp/mpp_vepu1.c index cdbc982df5f8..fa50c1088aa7 100644 --- a/drivers/video/rockchip/mpp/mpp_vepu1.c +++ b/drivers/video/rockchip/mpp/mpp_vepu1.c @@ -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; diff --git a/drivers/video/rockchip/mpp/mpp_vepu2.c b/drivers/video/rockchip/mpp/mpp_vepu2.c index 6e40a5a87fe3..a300a2e08ef4 100644 --- a/drivers/video/rockchip/mpp/mpp_vepu2.c +++ b/drivers/video/rockchip/mpp/mpp_vepu2.c @@ -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;