kernel/0362-vvcam_dwe_driver-sync-eswin-20241230-code.patch
2025-02-27 20:57:56 -05:00

61 lines
2.0 KiB
Diff

From 522bc76b88c8a81ef63914bc58fd469c767b79f4 Mon Sep 17 00:00:00 2001
From: Han Gao <rabenda.cn@gmail.com>
Date: Mon, 6 Jan 2025 01:34:21 +0800
Subject: [PATCH 362/416] vvcam_dwe_driver: sync eswin 20241230 code
Signed-off-by: Han Gao <rabenda.cn@gmail.com>
---
.../staging/media/eswin/dewarp/vvcam_dwe_driver.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/media/eswin/dewarp/vvcam_dwe_driver.c b/drivers/staging/media/eswin/dewarp/vvcam_dwe_driver.c
index d7b7695b9144..d462277fecc6 100644
--- a/drivers/staging/media/eswin/dewarp/vvcam_dwe_driver.c
+++ b/drivers/staging/media/eswin/dewarp/vvcam_dwe_driver.c
@@ -183,7 +183,7 @@ static unsigned int dewarp_poll(struct file *filp, poll_table *wait)
return mask;
}
-int obtain_dewarp_mis(struct device *dev)
+static int obtain_dewarp_mis(struct device *dev)
{
struct es_dewarp_driver_dev *pdriver_dev = dev_get_drvdata(dev);
struct dw200_subdev *pdwe_dev;
@@ -1120,6 +1120,16 @@ static int vvcam_sys_clk_config(dw_clk_rst_t *dw_crg)
return ret;
}
+ rate = clk_round_rate(dw_crg->aclk, VVCAM_AXI_CLK_HIGHEST);
+ if (rate > 0) {
+ ret = clk_set_rate(dw_crg->aclk, rate);
+ if (ret) {
+ pr_err("DW: failed to set aclk: %d\n", ret);
+ return ret;
+ }
+ pr_info("DW set aclk to %ldHZ\n", rate);
+ }
+
rate = clk_round_rate(dw_crg->dw_aclk, VVCAM_DW_CLK_HIGHEST);
if (rate > 0) {
ret = clk_set_rate(dw_crg->dw_aclk, rate);
@@ -1146,7 +1156,7 @@ static int vvcam_sys_clk_prepare(dw_clk_rst_t *dw_crg)
return 0;
}
-int vvcam_sys_clk_unprepare(dw_clk_rst_t *dw_crg)
+static int vvcam_sys_clk_unprepare(dw_clk_rst_t *dw_crg)
{
int ret = 0;
// tbu power down need enanle clk
@@ -1264,6 +1274,7 @@ static int es_dewarp_probe(struct platform_device *pdev)
struct es_dewarp_driver_dev *pdriver_dev;
struct dw200_subdev *pdwe_dev;
char debug_dw200_reset[64] = "dw200_reset";
+ struct devfreq *df;
int id = 0;
if (pdev->id >= NUM_DEVICES) {
--
2.47.0