From 520ec20d74dfd87f62fd58b921b7209d6daed94a Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 20 Nov 2023 10:15:35 +0000
Subject: [PATCH] clean baseparameter
---
kernel/drivers/video/rockchip/mpp/mpp_rkvdec.c | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/kernel/drivers/video/rockchip/mpp/mpp_rkvdec.c b/kernel/drivers/video/rockchip/mpp/mpp_rkvdec.c
index 09bea1e..89ec8a9 100644
--- a/kernel/drivers/video/rockchip/mpp/mpp_rkvdec.c
+++ b/kernel/drivers/video/rockchip/mpp/mpp_rkvdec.c
@@ -944,11 +944,11 @@
task = to_rkvdec_task(mpp_task);
/*
- * HW defeat workaround: VP9 power save optimization cause decoding
+ * HW defeat workaround: VP9 and H.265 power save optimization cause decoding
* corruption, disable optimization here.
*/
fmt = RKVDEC_GET_FORMAT(task->reg[RKVDEC_REG_SYS_CTRL_INDEX]);
- if (fmt == RKVDEC_FMT_VP9D) {
+ if (fmt == RKVDEC_FMT_VP9D || fmt == RKVDEC_FMT_H265D) {
cfg = task->reg[RKVDEC_POWER_CTL_INDEX] | 0xFFFF;
task->reg[RKVDEC_POWER_CTL_INDEX] = cfg & (~(1 << 12));
mpp_write_relaxed(mpp, RKVDEC_POWER_CTL_BASE,
@@ -1171,6 +1171,10 @@
dec->procfs = NULL;
return -EIO;
}
+
+ /* for common mpp_dev options */
+ mpp_procfs_create_common(dec->procfs, mpp);
+
mpp_procfs_create_u32("aclk", 0644,
dec->procfs, &dec->aclk_info.debug_rate_hz);
mpp_procfs_create_u32("clk_core", 0644,
@@ -1629,7 +1633,7 @@
mpp_debug_enter();
if (dec->rst_a && dec->rst_h) {
- rockchip_pmu_idle_request(mpp->dev, true);
+ mpp_pmu_idle_request(mpp, true);
mpp_safe_reset(dec->rst_niu_a);
mpp_safe_reset(dec->rst_niu_h);
mpp_safe_reset(dec->rst_a);
@@ -1645,7 +1649,7 @@
mpp_safe_unreset(dec->rst_core);
mpp_safe_unreset(dec->rst_cabac);
mpp_safe_unreset(dec->rst_hevc_cabac);
- rockchip_pmu_idle_request(mpp->dev, false);
+ mpp_pmu_idle_request(mpp, false);
}
mpp_debug_leave();
--
Gitblit v1.6.2