/* Extended CID */
#ifndef V4L2_CID_FIMC_IS_BASE
#define V4L2_CID_FIMC_IS_BASE (V4L2_CTRL_CLASS_CAMERA | 0x1000)
-#endif /* V4L2_CID_FIMC_IS_BASE */
+#endif
+#ifndef V4L2_CID_IS_S_STREAM
+#define V4L2_CID_IS_S_STREAM (V4L2_CID_FIMC_IS_BASE + 14)
+#endif
+#ifndef V4L2_CID_IS_FORCE_DONE
+#define V4L2_CID_IS_FORCE_DONE (V4L2_CID_FIMC_IS_BASE + 50)
+#endif
#ifndef V4L2_CID_IS_SET_SETFILE
#define V4L2_CID_IS_SET_SETFILE (V4L2_CID_FIMC_IS_BASE + 51)
-#endif /* V4L2_CID_IS_SET_SETFILE */
+#endif
#ifndef V4L2_CID_IS_COLOR_RANGE
#define V4L2_CID_IS_COLOR_RANGE (V4L2_CID_FIMC_IS_BASE + 54)
-#endif /* V4L2_CID_IS_COLOR_RANGE */
+#endif
#ifndef V4L2_CID_IS_MIN_TARGET_FPS
#define V4L2_CID_IS_MIN_TARGET_FPS (V4L2_CID_FIMC_IS_BASE + 55)
-#endif /* V4L2_CID_IS_MIN_TARGET_FPS */
+#endif
#ifndef V4L2_CID_IS_MAX_TARGET_FPS
#define V4L2_CID_IS_MAX_TARGET_FPS (V4L2_CID_FIMC_IS_BASE + 56)
-#endif /* V4L2_CID_IS_MAX_TARGET_FPS */
-#ifndef V4L2_CID_IS_S_STREAM
-#define V4L2_CID_IS_S_STREAM (V4L2_CID_FIMC_IS_BASE + 14)
-#endif /* V4L2_CID_IS_S_STREAM */
+#endif
/* FIMC IS NUM */
#define FIMC_IS_VIDEO_3A0_NUM 10
camsrc_info("[SENSOR] REQBUF 0 done");
}
-
- if (p->cur_dev_id == CAMERASRC_DEV_ID_PRIMARY) {
- ret = _camerasrc_ioctl_s_ctrl(p, p->fd_3aa0, 0x9a1032, 4096);
- if (ret != CAMERASRC_SUCCESS)
- camsrc_error("[3AA0] _camerasrc_ioctl_s_ctrl failed[%x]", ret);
-
- ret = _camerasrc_ioctl_s_ctrl(p, p->fd_3aa0, 0x9a1032, 4096);
+ /* 3AA0 - OUTPUT */
+ if (p->streamon_3aa0_output) {
+ ret = _camerasrc_ioctl_s_ctrl(p, p->fd_3aa0, V4L2_CID_IS_FORCE_DONE, 0x1000);
if (ret != CAMERASRC_SUCCESS)
camsrc_error("[3AA0] _camerasrc_ioctl_s_ctrl failed[%x]", ret);
- ret = _camerasrc_ioctl_s_ctrl(p, p->fd_isp, 0x9a1032, 4096);
- if (ret != CAMERASRC_SUCCESS)
- camsrc_error("[ISP] _camerasrc_ioctl_s_ctrl failed[%x]", ret);
- }
-
-
- /* 3AA0 - OUTPUT */
- if (p->streamon_3aa0_output) {
ret = _camerasrc_ioctl_stream(p, p->fd_3aa0, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, FALSE);
if (ret != CAMERASRC_SUCCESS) {
strerror_r(p->errnum, err_msg, CAMERASRC_ERRMSG_MAX_LEN);
}
if (p->streamon_3aa1_output) {
+ ret = _camerasrc_ioctl_s_ctrl(p, p->fd_3aa1, V4L2_CID_IS_FORCE_DONE, 0x1000);
+ if (ret != CAMERASRC_SUCCESS)
+ camsrc_error("[3AA1] _camerasrc_ioctl_s_ctrl failed[%x]", ret);
+
ret = _camerasrc_ioctl_stream(p, p->fd_3aa1, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, FALSE);
if (ret != CAMERASRC_SUCCESS) {
strerror_r(p->errnum, err_msg, CAMERASRC_ERRMSG_MAX_LEN);
}
if (p->streamon_isp) {
+ ret = _camerasrc_ioctl_s_ctrl(p, p->fd_isp, V4L2_CID_IS_FORCE_DONE, 0x1000);
+ if (ret != CAMERASRC_SUCCESS)
+ camsrc_error("[ISP] _camerasrc_ioctl_s_ctrl failed[%x]", ret);
+
ret = _camerasrc_ioctl_stream(p, p->fd_isp, V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE, FALSE);
if (ret != CAMERASRC_SUCCESS) {
strerror_r(p->errnum, err_msg, CAMERASRC_ERRMSG_MAX_LEN);