summaryrefslogtreecommitdiffstats
path: root/include/media/capture_isp.h
diff options
context:
space:
mode:
authorAndrew Jiang <andrewj@nvidia.com>2018-06-04 13:35:48 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-06-26 21:32:51 -0400
commitfb47ce0408a451b2d1bb7b6fc708d3df9826461a (patch)
treec79509234033bed301ea7a547e6507e0a966d8d2 /include/media/capture_isp.h
parent8835b72ded37eb90a779b89f931eb69aaa21add3 (diff)
media: tegra: camera: Combined requests support
UMD will now send a combined request that potentially contains both process request parameters as well as program request parameters. We expect the process request parameters to always be present, but presence of the program request parameters are optional. Therefore, add isp_capture_request_ex to handle the new struct. Note: This simply reduces the number of ioctl calls from UMD to KMD from 2 to 1; we are still making 2 IVC calls to RCE for the process and program requests respectively. Bug 200391468 Change-Id: I4cf5881335f0fb076c7537945e2cd3c76ff09fa9 Signed-off-by: Andrew Jiang <andrewj@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1739342 Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Sudhir Vyas <svyas@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Ian Kaszubski <ikaszubski@nvidia.com> Reviewed-by: Bhanu Murthy V <bmurthyv@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'include/media/capture_isp.h')
-rw-r--r--include/media/capture_isp.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/media/capture_isp.h b/include/media/capture_isp.h
index b4a03e53a..d6e0ca1ca 100644
--- a/include/media/capture_isp.h
+++ b/include/media/capture_isp.h
@@ -74,6 +74,12 @@ struct isp_program_req {
74 struct capture_isp_reloc isp_program_relocs; 74 struct capture_isp_reloc isp_program_relocs;
75} __ISP_CAPTURE_ALIGN; 75} __ISP_CAPTURE_ALIGN;
76 76
77struct isp_capture_req_ex {
78 struct isp_capture_req capture_req;
79 struct isp_program_req program_req;
80 uint32_t __pad[4];
81} __ISP_CAPTURE_ALIGN;
82
77int isp_capture_init(struct tegra_isp_channel *chan); 83int isp_capture_init(struct tegra_isp_channel *chan);
78void isp_capture_shutdown(struct tegra_isp_channel *chan); 84void isp_capture_shutdown(struct tegra_isp_channel *chan);
79int isp_capture_setup(struct tegra_isp_channel *chan, 85int isp_capture_setup(struct tegra_isp_channel *chan,
@@ -91,4 +97,6 @@ int isp_capture_status(struct tegra_isp_channel *chan,
91int isp_capture_program_request(struct tegra_isp_channel *chan, 97int isp_capture_program_request(struct tegra_isp_channel *chan,
92 struct isp_program_req *req); 98 struct isp_program_req *req);
93int isp_capture_program_status(struct tegra_isp_channel *chan); 99int isp_capture_program_status(struct tegra_isp_channel *chan);
100int isp_capture_request_ex(struct tegra_isp_channel *chan,
101 struct isp_capture_req_ex *capture_req_ex);
94#endif 102#endif