media: rockchip: isp: add isp39

Change-Id: I5711f268db07523ef3cf2541dacbb9016760d6c3
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei 2023-12-01 14:32:19 +08:00 committed by Tao Huang
commit 4d27e391e5
36 changed files with 10944 additions and 169 deletions

View file

@ -414,29 +414,25 @@ enum rkmodule_hdr_mode {
HDR_COMPR,
};
enum rkmodule_hdr_compr_segment {
HDR_COMPR_SEGMENT_4 = 4,
HDR_COMPR_SEGMENT_12 = 12,
HDR_COMPR_SEGMENT_16 = 16,
};
#define HDR_COMPR_POINT_MAX 32
/* rkmodule_hdr_compr
* linearised and compressed data for hdr: data_src = K * data_compr + XX
*
* bit: bit of src data, max 20 bit.
* segment: linear segment, support 4, 6 or 16.
* src_bit: bit of src data, max 20 bit.
* point: linear point number, max 32 for rk3576.
* k_shift: left shift bit of slop amplification factor, 2^k_shift, [0 15].
* slope_k: K * 2^k_shift.
* data_src_shitf: left shift bit of source data, data_src = 2^data_src_shitf
* data_src: source data.
* data_compr: compressed data.
*/
struct rkmodule_hdr_compr {
enum rkmodule_hdr_compr_segment segment;
__u8 bit;
__u8 point;
__u8 src_bit;
__u8 k_shift;
__u8 data_src_shitf[HDR_COMPR_SEGMENT_16];
__u16 data_compr[HDR_COMPR_SEGMENT_16];
__u32 slope_k[HDR_COMPR_SEGMENT_16];
__u16 data_compr[HDR_COMPR_POINT_MAX];
__u32 data_src[HDR_COMPR_POINT_MAX];
__u32 slope_k[HDR_COMPR_POINT_MAX];
};
/**

View file

@ -10,6 +10,7 @@
#include <linux/const.h>
#include <linux/types.h>
#include <linux/v4l2-controls.h>
#include <linux/rk-camera-module.h>
#define RKISP_API_VERSION KERNEL_VERSION(2, 5, 0)
@ -104,6 +105,9 @@
#define RKISP_CMD_SET_IQTOOL_CONN_ID \
_IOW('V', BASE_VIDIOC_PRIVATE + 113, int)
#define RKISP_CMD_SET_EXPANDER \
_IOW('V', BASE_VIDIOC_PRIVATE + 114, struct rkmodule_hdr_cfg)
/*************************************************************/
#define ISP2X_ID_DPCC (0)

File diff suppressed because it is too large Load diff