From 1543e317f1da31b75942316931e8f491a8920811 Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Thu, 04 Jan 2024 10:08:02 +0000
Subject: [PATCH] disable FB
---
kernel/drivers/media/platform/rockchip/isp/hw.h | 34 +++++++++++++++++++++++++++++++---
1 files changed, 31 insertions(+), 3 deletions(-)
diff --git a/kernel/drivers/media/platform/rockchip/isp/hw.h b/kernel/drivers/media/platform/rockchip/isp/hw.h
index f7d1e80..657c77c 100644
--- a/kernel/drivers/media/platform/rockchip/isp/hw.h
+++ b/kernel/drivers/media/platform/rockchip/isp/hw.h
@@ -6,7 +6,7 @@
#include "bridge.h"
-#define RKISP_MAX_BUS_CLK 8
+#define RKISP_MAX_BUS_CLK 10
#define RKISP_MAX_RETRY_CNT 5
struct isp_clk_info {
@@ -22,16 +22,29 @@
int num_clk_rate_tbl;
struct isp_irqs_data *irqs;
int num_irqs;
+ bool unite;
};
struct rkisp_monitor {
struct rkisp_hw_dev *dev;
struct work_struct work;
struct completion cmpl;
- int (*reset_handle)(struct rkisp_device *dev);
u32 state;
u8 retry;
bool is_en;
+};
+
+struct rkisp_sram {
+ dma_addr_t dma_addr;
+ u32 size;
+};
+
+struct rkisp_size_info {
+ u32 w;
+ u32 h;
+ u32 size;
+ u32 fps;
+ bool is_on;
};
struct rkisp_hw_dev {
@@ -39,7 +52,9 @@
struct platform_device *pdev;
struct device *dev;
struct regmap *grf;
+ void *sw_reg;
void __iomem *base_addr;
+ void __iomem *base_next_addr;
struct clk *clks[RKISP_MAX_BUS_CLK];
int num_clks;
const struct isp_clk_info *clk_rate_tbl;
@@ -48,14 +63,19 @@
int mipi_irq;
enum rkisp_isp_ver isp_ver;
struct rkisp_device *isp[DEV_MAX];
+ struct rkisp_size_info isp_size[DEV_MAX];
int dev_num;
+ int dev_link_num;
int cur_dev_id;
+ int pre_dev_id;
int mipi_dev_id;
struct max_input max_in;
/* lock for multi dev */
struct mutex dev_lock;
spinlock_t rdbk_lock;
atomic_t refcnt;
+
+ struct rkisp_sram sram;
/* share buf for multi dev */
spinlock_t buf_lock;
@@ -69,6 +89,7 @@
struct rkisp_monitor monitor;
u64 iq_feature;
int buf_init_cnt;
+ u32 unite;
bool is_feature_on;
bool is_dma_contig;
bool is_dma_sg_ops;
@@ -79,9 +100,16 @@
bool is_thunderboot;
bool is_buf_init;
bool is_shutdown;
- atomic_t tb_ref;
+ bool is_multi_overflow;
+ bool is_runing;
+ bool is_frm_buf;
+ bool is_dvfs;
+ bool is_assigned_clk;
};
int rkisp_register_irq(struct rkisp_hw_dev *dev);
void rkisp_soft_reset(struct rkisp_hw_dev *dev, bool is_secure);
+void rkisp_hw_enum_isp_size(struct rkisp_hw_dev *hw_dev);
+void rkisp_hw_reg_save(struct rkisp_hw_dev *dev);
+void rkisp_hw_reg_restore(struct rkisp_hw_dev *dev);
#endif
--
Gitblit v1.6.2