From 6778948f9de86c3cfaf36725a7c87dcff9ba247f Mon Sep 17 00:00:00 2001
From: hc <hc@nodka.com>
Date: Mon, 11 Dec 2023 08:20:59 +0000
Subject: [PATCH] kernel_5.10 no rt

---
 kernel/include/uapi/linux/rkcif-config.h |   42 ++++++++++++++++++++++++++++++++++++------
 1 files changed, 36 insertions(+), 6 deletions(-)

diff --git a/kernel/include/uapi/linux/rkcif-config.h b/kernel/include/uapi/linux/rkcif-config.h
index 8002e46..a65b5b1 100644
--- a/kernel/include/uapi/linux/rkcif-config.h
+++ b/kernel/include/uapi/linux/rkcif-config.h
@@ -9,7 +9,11 @@
 #include <linux/types.h>
 #include <linux/v4l2-controls.h>
 
-#define RKCIF_API_VERSION		KERNEL_VERSION(0, 1, 0xa)
+#define RKCIF_MAX_CSI_NUM		4
+
+#define RKCIF_API_VERSION		KERNEL_VERSION(0, 2, 0)
+
+#define V4L2_EVENT_RESET_DEV		0X1001
 
 #define RKCIF_CMD_GET_CSI_MEMORY_MODE \
 	_IOR('V', BASE_VIDIOC_PRIVATE + 0, int)
@@ -17,11 +21,20 @@
 #define RKCIF_CMD_SET_CSI_MEMORY_MODE \
 	_IOW('V', BASE_VIDIOC_PRIVATE + 1, int)
 
-#define RKCIF_CMD_GET_RESET_INFO \
-	_IOR('V', BASE_VIDIOC_PRIVATE + 5, struct rkcif_reset_info)
+#define RKCIF_CMD_GET_SCALE_BLC \
+	_IOR('V', BASE_VIDIOC_PRIVATE + 2, struct bayer_blc)
+
+#define RKCIF_CMD_SET_SCALE_BLC \
+	_IOW('V', BASE_VIDIOC_PRIVATE + 3, struct bayer_blc)
+
+#define RKCIF_CMD_SET_FPS \
+	_IOW('V', BASE_VIDIOC_PRIVATE + 4, struct rkcif_fps)
 
 #define RKCIF_CMD_SET_RESET \
 	_IOW('V', BASE_VIDIOC_PRIVATE + 6, int)
+
+#define RKCIF_CMD_SET_CSI_IDX \
+	_IOW('V', BASE_VIDIOC_PRIVATE + 7, struct rkcif_csi_info)
 
 /* cif memory mode
  * 0: raw12/raw10/raw8 8bit memory compact
@@ -44,9 +57,26 @@
 	CSI_LVDS_MEM_WORD_HIGH_ALIGN = 2,
 };
 
-struct rkcif_reset_info {
-	int is_need_reset;
-	int reset_src;
+/* black level for scale image
+ * The sequence of pattern00~03 is the same as the output of sensor bayer
+ */
+
+struct bayer_blc {
+	__u8 pattern00;
+	__u8 pattern01;
+	__u8 pattern02;
+	__u8 pattern03;
+};
+
+struct rkcif_fps {
+	int ch_num;
+	int fps;
+};
+
+struct rkcif_csi_info {
+	int csi_num;
+	int csi_idx[RKCIF_MAX_CSI_NUM];
+	int dphy_vendor[RKCIF_MAX_CSI_NUM];
 };
 
 #endif

--
Gitblit v1.6.2