video: rockchip: rga3: enable scale/FBC-in error intr

Update driver version to 1.3.8

Change-Id: I40371f680c4d67e4a78338dad84f73b268e8877d
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
This commit is contained in:
Yu Qiaowei
2025-02-08 15:02:51 +08:00
parent 60e3a31479
commit 2f5b41f4aa
3 changed files with 25 additions and 5 deletions

View File

@@ -132,6 +132,14 @@
#define m_RGA2_STATUS1_SW_RGA_STA (0x1 << 0)
/*RGA_INT*/
#define m_RGA2_INT_FBCIN_DEC_ERROR_CLEAR (1 << 24)
#define m_RGA2_INT_FBCIN_DEC_ERROR_EN (1 << 23)
#define m_RGA2_INT_FBCIN_DEC_ERROR (1 << 22)
#define m_RGA2_INT_PREFETCH_TH_INTR (1 << 21)
#define m_RGA2_INT_PRE_TH_CLEAR (1 << 20)
#define m_RGA2_INT_SCL_ERROR_CLEAR (1 << 19)
#define m_RGA2_INT_SCL_ERROR_EN (1 << 18)
#define m_RGA2_INT_SCL_ERROR_INTR (1 << 17)
#define m_RGA2_INT_LINE_WR_CLEAR (1 << 16)
#define m_RGA2_INT_LINE_RD_CLEAR (1 << 15)
#define m_RGA2_INT_LINE_WR_EN (1 << 14)
@@ -153,17 +161,23 @@
#define m_RGA2_INT_ERROR_FLAG_MASK \
( \
m_RGA2_INT_MMU_INT_FLAG | \
m_RGA2_INT_ERROR_INT_FLAG \
m_RGA2_INT_ERROR_INT_FLAG | \
m_RGA2_INT_SCL_ERROR_INTR | \
m_RGA2_INT_FBCIN_DEC_ERROR \
)
#define m_RGA2_INT_ERROR_CLEAR_MASK \
( \
m_RGA2_INT_MMU_INT_CLEAR | \
m_RGA2_INT_ERROR_INT_CLEAR \
m_RGA2_INT_MMU_INT_CLEAR | \
m_RGA2_INT_ERROR_INT_CLEAR | \
m_RGA2_INT_SCL_ERROR_CLEAR | \
m_RGA2_INT_FBCIN_DEC_ERROR_CLEAR \
)
#define m_RGA2_INT_ERROR_ENABLE_MASK \
( \
m_RGA2_INT_MMU_INT_EN | \
m_RGA2_INT_ERROR_INT_EN \
m_RGA2_INT_ERROR_INT_EN | \
m_RGA2_INT_SCL_ERROR_EN | \
m_RGA2_INT_FBCIN_DEC_ERROR_EN \
)
#define s_RGA2_INT_LINE_WR_CLEAR(x) ((x & 0x1) << 16)

View File

@@ -88,7 +88,7 @@
#define DRIVER_MAJOR_VERISON 1
#define DRIVER_MINOR_VERSION 3
#define DRIVER_REVISION_VERSION 7
#define DRIVER_REVISION_VERSION 8
#define DRIVER_PATCH_VERSION
#define DRIVER_VERSION (STR(DRIVER_MAJOR_VERISON) "." STR(DRIVER_MINOR_VERSION) \

View File

@@ -3268,6 +3268,12 @@ static int rga2_isr_thread(struct rga_job *job, struct rga_scheduler_t *schedule
} else if (job->intr_status & m_RGA2_INT_MMU_INT_FLAG) {
rga_job_err(job, "mmu failed, please check size of the buffer or whether the buffer has been freed.\n");
job->ret = -EACCES;
} else if (job->intr_status & m_RGA2_INT_SCL_ERROR_INTR) {
rga_job_err(job, "scale failed, check scale config or formula.\n");
job->ret = -EACCES;
} else if (job->intr_status & m_RGA2_INT_FBCIN_DEC_ERROR) {
rga_job_err(job, "FBC decode failed, please check if the source data is FBC data.\n");
job->ret = -EACCES;
}
if (job->ret == 0) {