summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorShubhraprakash Das <sadas@codeaurora.org>2016-09-02 01:02:45 -0700
committerShubhraprakash Das <sadas@codeaurora.org>2016-12-07 13:46:20 -0800
commit97587bf5cb1b60e49b24af480ddad47571784da5 (patch)
tree9b5fd243346d95bb8f18dd044688bc4c1a10e059 /include
parent757c94f42fc66dac25cc5dd5177ee1c2df552a4b (diff)
msm: camera: isp: Add secure mode to isp
Add option to put the isp hardware in secure smmu mode. The isp stats will still be in non secure mode. Add ioctl to indicate which buffer queue will be in secure mode so that they can be mapped in secure mode CRs-Fixed: 1060631 Change-Id: Ibf2050d0814cc2aaf22a6f510847054d78fd7477 Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/uapi/media/msmb_isp.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/include/uapi/media/msmb_isp.h b/include/uapi/media/msmb_isp.h
index 9399f6e84004..44d75aa107d9 100644
--- a/include/uapi/media/msmb_isp.h
+++ b/include/uapi/media/msmb_isp.h
@@ -2,6 +2,7 @@
#define __UAPI_MSMB_ISP__
#include <linux/videodev2.h>
+#include <media/msmb_camera.h>
#define MAX_PLANES_PER_STREAM 3
#define MAX_NUM_STREAM 7
@@ -556,6 +557,16 @@ struct msm_isp_buf_request {
enum msm_isp_buf_type buf_type;
};
+struct msm_isp_buf_request_ver2 {
+ uint32_t session_id;
+ uint32_t stream_id;
+ uint8_t num_buf;
+ uint32_t handle;
+ enum msm_isp_buf_type buf_type;
+ enum smmu_attach_mode security_mode;
+ uint32_t reserved[4];
+};
+
struct msm_isp_qbuf_plane {
uint32_t addr;
uint32_t offset;
@@ -884,8 +895,11 @@ enum msm_isp_ioctl_cmd_code {
MSM_ISP_SET_DUAL_HW_MASTER_SLAVE,
MSM_ISP_MAP_BUF_START_FE,
MSM_ISP_UNMAP_BUF,
+ MSM_ISP_AHB_CLK_CFG,
+ MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC,
MSM_ISP_FETCH_ENG_MULTI_PASS_START,
MSM_ISP_MAP_BUF_START_MULTI_PASS_FE,
+ MSM_ISP_REQUEST_BUF_VER2,
};
#define VIDIOC_MSM_VFE_REG_CFG \
@@ -989,10 +1003,10 @@ enum msm_isp_ioctl_cmd_code {
struct msm_isp_unmap_buf_req)
#define VIDIOC_MSM_ISP_AHB_CLK_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE+25, struct msm_isp_ahb_clk_cfg)
+ _IOWR('V', MSM_ISP_AHB_CLK_CFG, struct msm_isp_ahb_clk_cfg)
#define VIDIOC_MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC \
- _IOWR('V', BASE_VIDIOC_PRIVATE+26, \
+ _IOWR('V', MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC, \
struct msm_isp_dual_hw_master_slave_sync)
#define VIDIOC_MSM_ISP_FETCH_ENG_MULTI_PASS_START \
@@ -1002,4 +1016,8 @@ enum msm_isp_ioctl_cmd_code {
#define VIDIOC_MSM_ISP_MAP_BUF_START_MULTI_PASS_FE \
_IOWR('V', MSM_ISP_MAP_BUF_START_MULTI_PASS_FE, \
struct msm_vfe_fetch_eng_multi_pass_start)
+
+#define VIDIOC_MSM_ISP_REQUEST_BUF_VER2 \
+ _IOWR('V', MSM_ISP_REQUEST_BUF_VER2, struct msm_isp_buf_request_ver2)
+
#endif /* __MSMB_ISP__ */