media: rockchip: isp: add RKISP_CMD_SET_TB_HEAD_V32 API

Change-Id: I07ae10d69ae977ff5932c377e24eefbd48387946
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
Cai YiWei
2024-01-02 11:52:52 +08:00
committed by Tao Huang
parent 25c456719d
commit c4c06227b0
3 changed files with 11 additions and 1 deletions

View File

@@ -3508,7 +3508,8 @@ static long rkisp_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
rkisp_get_info(isp_dev, arg);
break;
case RKISP_CMD_GET_TB_HEAD_V32:
if (isp_dev->tb_head.complete != RKISP_TB_OK) {
if (isp_dev->tb_head.complete != RKISP_TB_OK ||
(!isp_dev->is_rtt_suspend && !isp_dev->is_pre_on)) {
ret = -EINVAL;
break;
}
@@ -3518,6 +3519,11 @@ static long rkisp_ioctl(struct v4l2_subdev *sd, unsigned int cmd, void *arg)
memcpy(&tb_head_v32->cfg, isp_dev->params_vdev.isp32_params,
sizeof(struct isp32_isp_params_cfg));
break;
case RKISP_CMD_SET_TB_HEAD_V32:
tb_head_v32 = arg;
memcpy(&isp_dev->tb_head, tb_head_v32,
sizeof(struct rkisp_thunderboot_resmem_head));
break;
case RKISP_CMD_GET_SHARED_BUF:
if (!IS_ENABLED(CONFIG_VIDEO_ROCKCHIP_THUNDER_BOOT_ISP)) {
ret = -ENOIOCTLCMD;

View File

@@ -52,6 +52,7 @@
_IOW('V', BASE_VIDIOC_PRIVATE + 11, long long)
/* BASE_VIDIOC_PRIVATE + 12 for RKISP_CMD_GET_TB_HEAD_V32 */
/* BASE_VIDIOC_PRIVATE + 14 for RKISP_CMD_SET_TB_HEAD_V32 */
/* for all isp device stop and no power off but resolution change */
#define RKISP_CMD_MULTI_DEV_FORCE_ENUM \

View File

@@ -14,6 +14,9 @@
#define RKISP_CMD_GET_TB_HEAD_V32 \
_IOR('V', BASE_VIDIOC_PRIVATE + 12, struct rkisp32_thunderboot_resmem_head)
#define RKISP_CMD_SET_TB_HEAD_V32 \
_IOW('V', BASE_VIDIOC_PRIVATE + 14, struct rkisp32_thunderboot_resmem_head)
#define ISP32_MODULE_DPCC ISP3X_MODULE_DPCC
#define ISP32_MODULE_BLS ISP3X_MODULE_BLS
#define ISP32_MODULE_SDG ISP3X_MODULE_SDG