|
1 | 1 | /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ |
2 | 2 | /* |
3 | 3 | * Copyright (c) 2016-2021, The Linux Foundation. All rights reserved. |
4 | | - * Copyright (c) 2022-2024, Qualcomm Innovation Center, Inc. All rights reserved. |
5 | 4 | * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. |
6 | 5 | */ |
7 | 6 |
|
|
49 | 48 | */ |
50 | 49 | #define CAM_REQ_MGR_MAX_HANDLES 64 |
51 | 50 | #define CAM_REQ_MGR_MAX_HANDLES_V2 256 |
52 | | -#define MAX_LINKS_PER_SESSION 4 |
| 51 | +#define MAX_LINKS_PER_SESSION 2 |
53 | 52 |
|
54 | 53 | /* Interval for cam_info_rate_limit_custom() */ |
55 | 54 | #define CAM_RATE_LIMIT_INTERVAL_5SEC 5 |
@@ -251,6 +250,39 @@ struct cam_req_mgr_sched_request_v2 { |
251 | 250 | __s32 params[5]; |
252 | 251 | }; |
253 | 252 |
|
| 253 | +/** struct cam_req_mgr_sched_request_v3 |
| 254 | + * @version: Version number |
| 255 | + * @session_hdl: Input param - Identifier for CSL session |
| 256 | + * @link_hdl: Input Param -Identifier for link including itself. |
| 257 | + * @bubble_enable: Input Param - Cam req mgr will do bubble recovery if this |
| 258 | + * flag is set. |
| 259 | + * @sync_mode: Type of Sync mode for this request |
| 260 | + * @additional_timeout: Additional timeout value (in ms) associated with |
| 261 | + * this request. This value needs to be 0 in cases where long exposure is |
| 262 | + * not configured for the sensor.The max timeout that will be supported |
| 263 | + * is 50000 ms |
| 264 | + * @num_links: Input Param - Num of links for sync |
| 265 | + * @num_valid_params: Number of valid params |
| 266 | + * @req_id: Input Param - Request Id from which all requests will be flushed |
| 267 | + * @param_mask: mask to indicate what the parameters are |
| 268 | + * @params: parameters passed from user space |
| 269 | + * @link_hdls: Input Param - Array of link handles to be for sync |
| 270 | + */ |
| 271 | +struct cam_req_mgr_sched_request_v3 { |
| 272 | + __s32 version; |
| 273 | + __s32 session_hdl; |
| 274 | + __s32 link_hdl; |
| 275 | + __s32 bubble_enable; |
| 276 | + __s32 sync_mode; |
| 277 | + __s32 additional_timeout; |
| 278 | + __s32 num_links; |
| 279 | + __s32 num_valid_params; |
| 280 | + __s64 req_id; |
| 281 | + __s32 param_mask; |
| 282 | + __s32 params[5]; |
| 283 | + __s32 link_hdls[]; |
| 284 | +}; |
| 285 | + |
254 | 286 | /** |
255 | 287 | * struct cam_req_mgr_sync_mode |
256 | 288 | * @session_hdl: Input param - Identifier for CSL session |
@@ -352,6 +384,7 @@ struct cam_req_mgr_link_properties { |
352 | 384 | #define CAM_REQ_MGR_MAP_BUF_V2 (CAM_COMMON_OPCODE_MAX + 19) |
353 | 385 | #define CAM_REQ_MGR_MEM_CPU_ACCESS_OP (CAM_COMMON_OPCODE_MAX + 20) |
354 | 386 | #define CAM_REQ_MGR_QUERY_CAP (CAM_COMMON_OPCODE_MAX + 21) |
| 387 | +#define CAM_REQ_MGR_SCHED_REQ_V3 (CAM_COMMON_OPCODE_MAX + 22) |
355 | 388 |
|
356 | 389 | /* end of cam_req_mgr opcodes */ |
357 | 390 |
|
|
0 commit comments