msm: camera: uapi: Support for UAPI_HEADER_TEST config

Aligns the uapi header types and includes to be in-line with upstream
kernel formatting. The errors are given by enabling the UAPI_HEADER_TEST
config, which is now enabled in GKI builds.

CRs-Fixed: 2679250
Change-Id: I195fb2aab9251043fc63d79dd31f2db53b1228f5
Signed-off-by: Karthik Jayakumar <kjayakum@codeaurora.org>
This commit is contained in:
Karthik Jayakumar
2020-05-05 12:55:22 -07:00
parent beb3ea37bb
commit c6096c4e35
13 changed files with 899 additions and 899 deletions

View File

@@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_CPAS_H__ #ifndef __UAPI_CAM_CPAS_H__
#define __UAPI_CAM_CPAS_H__ #define __UAPI_CAM_CPAS_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#define CAM_FAMILY_CAMERA_SS 1 #define CAM_FAMILY_CAMERA_SS 1
#define CAM_FAMILY_CPAS_SS 2 #define CAM_FAMILY_CPAS_SS 2
@@ -73,10 +73,10 @@
* *
*/ */
struct cam_cpas_query_cap { struct cam_cpas_query_cap {
uint32_t camera_family; __u32 camera_family;
uint32_t reserved; __u32 reserved;
struct cam_hw_version camera_version; struct cam_hw_version camera_version;
struct cam_hw_version cpas_version; struct cam_hw_version cpas_version;
}; };
/** /**
@@ -93,15 +93,15 @@ struct cam_cpas_query_cap {
* @ddr_ib_bw DDR IB bw for this path * @ddr_ib_bw DDR IB bw for this path
*/ */
struct cam_axi_per_path_bw_vote { struct cam_axi_per_path_bw_vote {
uint32_t usage_data; __u32 usage_data;
uint32_t transac_type; __u32 transac_type;
uint32_t path_data_type; __u32 path_data_type;
uint32_t reserved; __u32 reserved;
uint64_t camnoc_bw; __u64 camnoc_bw;
uint64_t mnoc_ab_bw; __u64 mnoc_ab_bw;
uint64_t mnoc_ib_bw; __u64 mnoc_ib_bw;
uint64_t ddr_ab_bw; __u64 ddr_ab_bw;
uint64_t ddr_ib_bw; __u64 ddr_ib_bw;
}; };
#endif /* __UAPI_CAM_CPAS_H__ */ #endif /* __UAPI_CAM_CPAS_H__ */

View File

@@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2019, The Linux Foundation. All rights reserved. * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_CUSTOM_H__ #ifndef __UAPI_CAM_CUSTOM_H__
#define __UAPI_CAM_CUSTOM_H__ #define __UAPI_CAM_CUSTOM_H__
#include "cam_defs.h" #include <camera/media/cam_defs.h>
/* Custom driver name */ /* Custom driver name */
#define CAM_CUSTOM_DEV_NAME "cam-custom" #define CAM_CUSTOM_DEV_NAME "cam-custom"
@@ -53,8 +53,8 @@
* *
*/ */
struct cam_custom_dev_cap_info { struct cam_custom_dev_cap_info {
uint32_t hw_type; __u32 hw_type;
uint32_t hw_version; __u32 hw_version;
}; };
/** /**
@@ -68,11 +68,11 @@ struct cam_custom_dev_cap_info {
* *
*/ */
struct cam_custom_query_cap_cmd { struct cam_custom_query_cap_cmd {
struct cam_iommu_handle device_iommu; struct cam_iommu_handle device_iommu;
struct cam_iommu_handle cdm_iommu; struct cam_iommu_handle cdm_iommu;
int32_t num_dev; __s32 num_dev;
uint32_t reserved; __u32 reserved;
struct cam_custom_dev_cap_info dev_caps[CAM_CUSTOM_NUM_SUB_DEVICES]; struct cam_custom_dev_cap_info dev_caps[CAM_CUSTOM_NUM_SUB_DEVICES];
}; };
/* Acquire Device */ /* Acquire Device */
@@ -86,12 +86,12 @@ struct cam_custom_query_cap_cmd {
* *
*/ */
struct cam_custom_out_port_info { struct cam_custom_out_port_info {
uint32_t res_type; __u32 res_type;
uint32_t format; __u32 format;
uint32_t custom_info1; __u32 custom_info1;
uint32_t custom_info2; __u32 custom_info2;
uint32_t custom_info3; __u32 custom_info3;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -125,30 +125,30 @@ struct cam_custom_out_port_info {
* *
*/ */
struct cam_custom_in_port_info { struct cam_custom_in_port_info {
uint32_t res_type; __u32 res_type;
uint32_t lane_type; __u32 lane_type;
uint32_t lane_num; __u32 lane_num;
uint32_t lane_cfg; __u32 lane_cfg;
uint32_t vc[CAM_CUSTOM_VC_DT_CFG_MAX]; __u32 vc[CAM_CUSTOM_VC_DT_CFG_MAX];
uint32_t dt[CAM_CUSTOM_VC_DT_CFG_MAX]; __u32 dt[CAM_CUSTOM_VC_DT_CFG_MAX];
uint32_t num_valid_vc_dt; __u32 num_valid_vc_dt;
uint32_t format; __u32 format;
uint32_t test_pattern; __u32 test_pattern;
uint32_t usage_type; __u32 usage_type;
uint32_t left_start; __u32 left_start;
uint32_t left_stop; __u32 left_stop;
uint32_t left_width; __u32 left_width;
uint32_t right_start; __u32 right_start;
uint32_t right_stop; __u32 right_stop;
uint32_t right_width; __u32 right_width;
uint32_t line_start; __u32 line_start;
uint32_t line_stop; __u32 line_stop;
uint32_t height; __u32 height;
uint32_t pixel_clk; __u32 pixel_clk;
uint32_t num_bytes_out; __u32 num_bytes_out;
uint32_t custom_info1; __u32 custom_info1;
uint32_t custom_info2; __u32 custom_info2;
uint32_t num_out_res; __u32 num_out_res;
struct cam_custom_out_port_info data[1]; struct cam_custom_out_port_info data[1];
}; };
@@ -163,11 +163,11 @@ struct cam_custom_in_port_info {
* resource array; * resource array;
*/ */
struct cam_custom_resource { struct cam_custom_resource {
uint32_t resource_id; __u32 resource_id;
uint32_t length; __u32 length;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t res_hdl; __u64 res_hdl;
}; };
/** /**
@@ -180,11 +180,11 @@ struct cam_custom_resource {
* @data : Start of data region * @data : Start of data region
*/ */
struct cam_custom_acquire_hw_info { struct cam_custom_acquire_hw_info {
uint32_t num_inputs; __u32 num_inputs;
uint32_t input_info_size; __u32 input_info_size;
uint32_t input_info_offset; __u32 input_info_offset;
uint32_t reserved; __u32 reserved;
uint64_t data; __u64 data;
}; };
/** /**
@@ -194,8 +194,8 @@ struct cam_custom_acquire_hw_info {
* @reserved: reserved * @reserved: reserved
*/ */
struct cam_custom_cmd_buf_type_1 { struct cam_custom_cmd_buf_type_1 {
uint32_t custom_info; __u32 custom_info;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -207,9 +207,9 @@ struct cam_custom_cmd_buf_type_1 {
* @reserved: reserved * @reserved: reserved
*/ */
struct cam_custom_cmd_buf_type_2 { struct cam_custom_cmd_buf_type_2 {
uint32_t custom_info1; __u32 custom_info1;
uint32_t custom_info2; __u32 custom_info2;
uint32_t custom_info3; __u32 custom_info3;
uint32_t reserved; __u32 reserved;
}; };
#endif /* __UAPI_CAM_CUSTOM_H__ */ #endif /* __UAPI_CAM_CUSTOM_H__ */

View File

@@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_DEFS_H__ #ifndef __UAPI_CAM_DEFS_H__
@@ -85,11 +85,11 @@ enum flush_type_t {
* @handle: Control command payload * @handle: Control command payload
*/ */
struct cam_control { struct cam_control {
uint32_t op_code; __u32 op_code;
uint32_t size; __u32 size;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t handle; __u64 handle;
}; };
/* camera IOCTL */ /* camera IOCTL */
@@ -105,10 +105,10 @@ struct cam_control {
* @reserved : Reserved for 64 bit aligngment * @reserved : Reserved for 64 bit aligngment
*/ */
struct cam_hw_version { struct cam_hw_version {
uint32_t major; __u32 major;
uint32_t minor; __u32 minor;
uint32_t incr; __u32 incr;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -119,8 +119,8 @@ struct cam_hw_version {
* *
*/ */
struct cam_iommu_handle { struct cam_iommu_handle {
int32_t non_secure; __s32 non_secure;
int32_t secure; __s32 secure;
}; };
/* camera secure mode */ /* camera secure mode */
@@ -266,18 +266,18 @@ struct cam_iommu_handle {
* *
*/ */
struct cam_plane_cfg { struct cam_plane_cfg {
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t plane_stride; __u32 plane_stride;
uint32_t slice_height; __u32 slice_height;
uint32_t meta_stride; __u32 meta_stride;
uint32_t meta_size; __u32 meta_size;
uint32_t meta_offset; __u32 meta_offset;
uint32_t packer_config; __u32 packer_config;
uint32_t mode_config; __u32 mode_config;
uint32_t tile_config; __u32 tile_config;
uint32_t h_init; __u32 h_init;
uint32_t v_init; __u32 v_init;
}; };
/** /**
@@ -296,16 +296,16 @@ struct cam_plane_cfg {
* *
*/ */
struct cam_ubwc_plane_cfg_v1 { struct cam_ubwc_plane_cfg_v1 {
uint32_t port_type; __u32 port_type;
uint32_t meta_stride; __u32 meta_stride;
uint32_t meta_size; __u32 meta_size;
uint32_t meta_offset; __u32 meta_offset;
uint32_t packer_config; __u32 packer_config;
uint32_t mode_config_0; __u32 mode_config_0;
uint32_t mode_config_1; __u32 mode_config_1;
uint32_t tile_config; __u32 tile_config;
uint32_t h_init; __u32 h_init;
uint32_t v_init; __u32 v_init;
}; };
/** /**
@@ -329,24 +329,24 @@ struct cam_ubwc_plane_cfg_v1 {
* *
*/ */
struct cam_ubwc_plane_cfg_v2 { struct cam_ubwc_plane_cfg_v2 {
uint32_t port_type; __u32 port_type;
uint32_t meta_stride; __u32 meta_stride;
uint32_t meta_size; __u32 meta_size;
uint32_t meta_offset; __u32 meta_offset;
uint32_t packer_config; __u32 packer_config;
uint32_t mode_config_0; __u32 mode_config_0;
uint32_t mode_config_1; __u32 mode_config_1;
uint32_t tile_config; __u32 tile_config;
uint32_t h_init; __u32 h_init;
uint32_t v_init; __u32 v_init;
uint32_t static_ctrl; __u32 static_ctrl;
uint32_t ctrl_2; __u32 ctrl_2;
uint32_t stats_ctrl_2; __u32 stats_ctrl_2;
uint32_t lossy_threshold_0; __u32 lossy_threshold_0;
uint32_t lossy_threshold_1; __u32 lossy_threshold_1;
uint32_t lossy_var_offset; __u32 lossy_var_offset;
uint32_t bandwidth_limit; __u32 bandwidth_limit;
uint32_t reserved[3]; __u32 reserved[3];
}; };
/** /**
* struct cam_cmd_buf_desc - Command buffer descriptor * struct cam_cmd_buf_desc - Command buffer descriptor
@@ -361,12 +361,12 @@ struct cam_ubwc_plane_cfg_v2 {
* *
*/ */
struct cam_cmd_buf_desc { struct cam_cmd_buf_desc {
int32_t mem_handle; __s32 mem_handle;
uint32_t offset; __u32 offset;
uint32_t size; __u32 size;
uint32_t length; __u32 length;
uint32_t type; __u32 type;
uint32_t meta_data; __u32 meta_data;
}; };
/** /**
@@ -403,26 +403,26 @@ struct cam_cmd_buf_desc {
* *
*/ */
struct cam_buf_io_cfg { struct cam_buf_io_cfg {
int32_t mem_handle[CAM_PACKET_MAX_PLANES]; __s32 mem_handle[CAM_PACKET_MAX_PLANES];
uint32_t offsets[CAM_PACKET_MAX_PLANES]; __u32 offsets[CAM_PACKET_MAX_PLANES];
struct cam_plane_cfg planes[CAM_PACKET_MAX_PLANES]; struct cam_plane_cfg planes[CAM_PACKET_MAX_PLANES];
uint32_t format; __u32 format;
uint32_t color_space; __u32 color_space;
uint32_t color_pattern; __u32 color_pattern;
uint32_t bpp; __u32 bpp;
uint32_t rotation; __u32 rotation;
uint32_t resource_type; __u32 resource_type;
int32_t fence; __s32 fence;
int32_t early_fence; __s32 early_fence;
struct cam_cmd_buf_desc aux_cmd_buf; struct cam_cmd_buf_desc aux_cmd_buf;
uint32_t direction; __u32 direction;
uint32_t batch_size; __u32 batch_size;
uint32_t subsample_pattern; __u32 subsample_pattern;
uint32_t subsample_period; __u32 subsample_period;
uint32_t framedrop_pattern; __u32 framedrop_pattern;
uint32_t framedrop_period; __u32 framedrop_period;
uint32_t flag; __u32 flag;
uint32_t padding; __u32 padding;
}; };
/** /**
@@ -436,11 +436,11 @@ struct cam_buf_io_cfg {
* *
*/ */
struct cam_packet_header { struct cam_packet_header {
uint32_t op_code; __u32 op_code;
uint32_t size; __u32 size;
uint64_t request_id; __u64 request_id;
uint32_t flags; __u32 flags;
uint32_t padding; __u32 padding;
}; };
/** /**
@@ -453,10 +453,10 @@ struct cam_packet_header {
* *
*/ */
struct cam_patch_desc { struct cam_patch_desc {
int32_t dst_buf_hdl; __s32 dst_buf_hdl;
uint32_t dst_offset; __u32 dst_offset;
int32_t src_buf_hdl; __s32 src_buf_hdl;
uint32_t src_offset; __u32 src_offset;
}; };
/** /**
@@ -477,16 +477,16 @@ struct cam_patch_desc {
* *
*/ */
struct cam_packet { struct cam_packet {
struct cam_packet_header header; struct cam_packet_header header;
uint32_t cmd_buf_offset; __u32 cmd_buf_offset;
uint32_t num_cmd_buf; __u32 num_cmd_buf;
uint32_t io_configs_offset; __u32 io_configs_offset;
uint32_t num_io_configs; __u32 num_io_configs;
uint32_t patch_offset; __u32 patch_offset;
uint32_t num_patches; __u32 num_patches;
uint32_t kmd_cmd_buf_index; __u32 kmd_cmd_buf_index;
uint32_t kmd_cmd_buf_offset; __u32 kmd_cmd_buf_offset;
uint64_t payload[1]; __u64 payload[1];
}; };
@@ -497,8 +497,8 @@ struct cam_packet {
* @dev_handle: Device handle for the release * @dev_handle: Device handle for the release
*/ */
struct cam_release_dev_cmd { struct cam_release_dev_cmd {
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
}; };
/** /**
@@ -509,8 +509,8 @@ struct cam_release_dev_cmd {
* *
*/ */
struct cam_start_stop_dev_cmd { struct cam_start_stop_dev_cmd {
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
}; };
/** /**
@@ -524,10 +524,10 @@ struct cam_start_stop_dev_cmd {
* *
*/ */
struct cam_config_dev_cmd { struct cam_config_dev_cmd {
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
uint64_t offset; __u64 offset;
uint64_t packet_handle; __u64 packet_handle;
}; };
/** /**
@@ -539,9 +539,9 @@ struct cam_config_dev_cmd {
* *
*/ */
struct cam_query_cap_cmd { struct cam_query_cap_cmd {
uint32_t size; __u32 size;
uint32_t handle_type; __u32 handle_type;
uint64_t caps_handle; __u64 caps_handle;
}; };
/** /**
@@ -558,11 +558,11 @@ struct cam_query_cap_cmd {
* *
*/ */
struct cam_acquire_dev_cmd { struct cam_acquire_dev_cmd {
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
uint32_t handle_type; __u32 handle_type;
uint32_t num_resources; __u32 num_resources;
uint64_t resource_hdl; __u64 resource_hdl;
}; };
/* /*
@@ -575,7 +575,7 @@ struct cam_acquire_dev_cmd {
* ACQUIRE_HW IOCTL after ACQUIRE_DEV and that is when the HW * ACQUIRE_HW IOCTL after ACQUIRE_DEV and that is when the HW
* is associated with the dev_handle. * is associated with the dev_handle.
* *
* (Data type): uint32_t * (Data type): __u32
*/ */
#define CAM_API_COMPAT_CONSTANT 0xFEFEFEFE #define CAM_API_COMPAT_CONSTANT 0xFEFEFEFE
@@ -602,13 +602,13 @@ struct cam_acquire_dev_cmd {
* resource data. * resource data.
*/ */
struct cam_acquire_hw_cmd_v1 { struct cam_acquire_hw_cmd_v1 {
uint32_t struct_version; __u32 struct_version;
uint32_t reserved; __u32 reserved;
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
uint32_t handle_type; __u32 handle_type;
uint32_t data_size; __u32 data_size;
uint64_t resource_hdl; __u64 resource_hdl;
}; };
/** /**
@@ -621,9 +621,9 @@ struct cam_acquire_hw_cmd_v1 {
* valid_acquired_hw: Valid num of acquired hardware * valid_acquired_hw: Valid num of acquired hardware
*/ */
struct cam_acquired_hw_info { struct cam_acquired_hw_info {
uint32_t acquired_hw_id[CAM_MAX_ACQ_RES]; __u32 acquired_hw_id[CAM_MAX_ACQ_RES];
uint32_t acquired_hw_path[CAM_MAX_ACQ_RES][CAM_MAX_HW_SPLIT]; __u32 acquired_hw_path[CAM_MAX_ACQ_RES][CAM_MAX_HW_SPLIT];
uint32_t valid_acquired_hw; __u32 valid_acquired_hw;
}; };
/** /**
@@ -646,13 +646,13 @@ struct cam_acquired_hw_info {
* resource data. * resource data.
*/ */
struct cam_acquire_hw_cmd_v2 { struct cam_acquire_hw_cmd_v2 {
uint32_t struct_version; __u32 struct_version;
uint32_t reserved; __u32 reserved;
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
uint32_t handle_type; __u32 handle_type;
uint32_t data_size; __u32 data_size;
uint64_t resource_hdl; __u64 resource_hdl;
struct cam_acquired_hw_info hw_info; struct cam_acquired_hw_info hw_info;
}; };
@@ -672,10 +672,10 @@ struct cam_acquire_hw_cmd_v2 {
* @dev_handle: Device handle for the release * @dev_handle: Device handle for the release
*/ */
struct cam_release_hw_cmd_v1 { struct cam_release_hw_cmd_v1 {
uint32_t struct_version; __u32 struct_version;
uint32_t reserved; __u32 reserved;
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
}; };
/** /**
@@ -692,12 +692,12 @@ struct cam_release_hw_cmd_v1 {
* *
*/ */
struct cam_flush_dev_cmd { struct cam_flush_dev_cmd {
uint64_t version; __u64 version;
int32_t session_handle; __s32 session_handle;
int32_t dev_handle; __s32 dev_handle;
uint32_t flush_type; __u32 flush_type;
uint32_t reserved; __u32 reserved;
int64_t req_id; __s64 req_id;
}; };
/** /**
@@ -712,8 +712,8 @@ struct cam_flush_dev_cmd {
* *
*/ */
struct cam_ubwc_config { struct cam_ubwc_config {
uint32_t api_version; __u32 api_version;
uint32_t num_ports; __u32 num_ports;
struct cam_ubwc_plane_cfg_v1 struct cam_ubwc_plane_cfg_v1
ubwc_plane_cfg[1][CAM_PACKET_MAX_PLANES - 1]; ubwc_plane_cfg[1][CAM_PACKET_MAX_PLANES - 1];
}; };
@@ -730,8 +730,8 @@ struct cam_ubwc_config {
* *
*/ */
struct cam_ubwc_config_v2 { struct cam_ubwc_config_v2 {
uint32_t api_version; __u32 api_version;
uint32_t num_ports; __u32 num_ports;
struct cam_ubwc_plane_cfg_v2 struct cam_ubwc_plane_cfg_v2
ubwc_plane_cfg[1][CAM_PACKET_MAX_PLANES - 1]; ubwc_plane_cfg[1][CAM_PACKET_MAX_PLANES - 1];
}; };
@@ -746,10 +746,10 @@ struct cam_ubwc_config_v2 {
* @flags : Flags if any * @flags : Flags if any
*/ */
struct cam_cmd_mem_region_info { struct cam_cmd_mem_region_info {
int32_t mem_handle; __s32 mem_handle;
uint32_t offset; __u32 offset;
uint32_t size; __u32 size;
uint32_t flags; __u32 flags;
}; };
/** /**
@@ -762,8 +762,8 @@ struct cam_cmd_mem_region_info {
* @map_info_array : Array of all the regions * @map_info_array : Array of all the regions
*/ */
struct cam_cmd_mem_regions { struct cam_cmd_mem_regions {
uint32_t version; __u32 version;
uint32_t num_regions; __u32 num_regions;
struct cam_cmd_mem_region_info map_info_array[1]; struct cam_cmd_mem_region_info map_info_array[1];
}; };
@@ -774,8 +774,8 @@ struct cam_cmd_mem_regions {
* @value : Register value to write * @value : Register value to write
*/ */
struct cam_reg_write_desc { struct cam_reg_write_desc {
uint32_t offset; __u32 offset;
uint32_t value; __u32 value;
}; };
/** /**
@@ -785,8 +785,8 @@ struct cam_reg_write_desc {
* @num_values : Number of values to read * @num_values : Number of values to read
*/ */
struct cam_reg_range_read_desc { struct cam_reg_range_read_desc {
uint32_t offset; __u32 offset;
uint32_t num_values; __u32 num_values;
}; };
/** /**
@@ -800,8 +800,8 @@ struct cam_reg_range_read_desc {
* @post_read_config : Registers to write after reading DMI data * @post_read_config : Registers to write after reading DMI data
*/ */
struct cam_dmi_read_desc { struct cam_dmi_read_desc {
uint32_t num_pre_writes; __u32 num_pre_writes;
uint32_t num_post_writes; __u32 num_post_writes;
struct cam_reg_write_desc pre_read_config[ struct cam_reg_write_desc pre_read_config[
CAM_REG_DUMP_DMI_CONFIG_MAX]; CAM_REG_DUMP_DMI_CONFIG_MAX];
struct cam_reg_range_read_desc dmi_data_read; struct cam_reg_range_read_desc dmi_data_read;
@@ -818,11 +818,11 @@ struct cam_dmi_read_desc {
* @dmi_read : DMI data to read * @dmi_read : DMI data to read
*/ */
struct cam_reg_read_info { struct cam_reg_read_info {
uint32_t type; __u32 type;
uint32_t reserved; __u32 reserved;
union { union {
struct cam_reg_range_read_desc reg_read; struct cam_reg_range_read_desc reg_read;
struct cam_dmi_read_desc dmi_read; struct cam_dmi_read_desc dmi_read;
}; };
}; };
@@ -834,9 +834,9 @@ struct cam_reg_read_info {
* @dump_data : Register dump data * @dump_data : Register dump data
*/ */
struct cam_reg_dump_out_buffer { struct cam_reg_dump_out_buffer {
uint64_t req_id; __u64 req_id;
uint32_t bytes_written; __u32 bytes_written;
uint32_t dump_data[1]; __u32 dump_data[1];
}; };
/** /**
@@ -850,11 +850,11 @@ struct cam_reg_dump_out_buffer {
* @read_range : Read range info * @read_range : Read range info
*/ */
struct cam_reg_dump_desc { struct cam_reg_dump_desc {
uint32_t reg_base_type; __u32 reg_base_type;
uint32_t dump_buffer_offset; __u32 dump_buffer_offset;
uint32_t dump_buffer_size; __u32 dump_buffer_size;
uint32_t num_read_range; __u32 num_read_range;
struct cam_reg_read_info read_range[1]; struct cam_reg_read_info read_range[1];
}; };
/** /**
@@ -865,8 +865,8 @@ struct cam_reg_dump_desc {
* (cam_reg_dump_desc) * (cam_reg_dump_desc)
*/ */
struct cam_reg_dump_input_info { struct cam_reg_dump_input_info {
uint32_t num_dump_sets; __u32 num_dump_sets;
uint32_t dump_set_offsets[1]; __u32 dump_set_offsets[1];
}; };
/** /**
@@ -882,13 +882,13 @@ struct cam_reg_dump_input_info {
* @dev_handle : Device Handle * @dev_handle : Device Handle
*/ */
struct cam_dump_req_cmd { struct cam_dump_req_cmd {
uint64_t issue_req_id; __u64 issue_req_id;
size_t offset; __kernel_size_t offset;
uint32_t buf_handle; __u32 buf_handle;
uint32_t error_type; __u32 error_type;
int32_t session_handle; __s32 session_handle;
int32_t link_hdl; __s32 link_hdl;
int32_t dev_handle; __s32 dev_handle;
}; };
#endif /* __UAPI_CAM_DEFS_H__ */ #endif /* __UAPI_CAM_DEFS_H__ */

View File

@@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_FD_H__ #ifndef __UAPI_CAM_FD_H__
#define __UAPI_CAM_FD_H__ #define __UAPI_CAM_FD_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#define CAM_FD_MAX_FACES 35 #define CAM_FD_MAX_FACES 35
#define CAM_FD_RAW_RESULT_ENTRIES 512 #define CAM_FD_RAW_RESULT_ENTRIES 512
@@ -40,9 +40,9 @@
* @reserved : Reserved for future use * @reserved : Reserved for future use
*/ */
struct cam_fd_soc_clock_bw_request { struct cam_fd_soc_clock_bw_request {
uint64_t clock_rate; __u64 clock_rate;
uint64_t bandwidth; __u64 bandwidth;
uint64_t reserved[4]; __u64 reserved[4];
}; };
/** /**
@@ -57,10 +57,10 @@ struct cam_fd_soc_clock_bw_request {
* these values directly when the buffer is programmed to HW * these values directly when the buffer is programmed to HW
*/ */
struct cam_fd_face { struct cam_fd_face {
uint32_t prop1; __u32 prop1;
uint32_t prop2; __u32 prop2;
uint32_t prop3; __u32 prop3;
uint32_t prop4; __u32 prop4;
}; };
/** /**
@@ -74,9 +74,9 @@ struct cam_fd_face {
* these values directly when the buffer is programmed to HW * these values directly when the buffer is programmed to HW
*/ */
struct cam_fd_results { struct cam_fd_results {
struct cam_fd_face faces[CAM_FD_MAX_FACES]; struct cam_fd_face faces[CAM_FD_MAX_FACES];
uint32_t face_count; __u32 face_count;
uint32_t reserved[3]; __u32 reserved[3];
}; };
/** /**
@@ -89,11 +89,11 @@ struct cam_fd_results {
* @reserved : Reserved for future use * @reserved : Reserved for future use
*/ */
struct cam_fd_hw_caps { struct cam_fd_hw_caps {
struct cam_hw_version core_version; struct cam_hw_version core_version;
struct cam_hw_version wrapper_version; struct cam_hw_version wrapper_version;
uint32_t raw_results_available; __u32 raw_results_available;
uint32_t supported_modes; __u32 supported_modes;
uint64_t reserved; __u64 reserved;
}; };
/** /**
@@ -105,10 +105,10 @@ struct cam_fd_hw_caps {
* @reserved : Reserved for alignment * @reserved : Reserved for alignment
*/ */
struct cam_fd_query_cap_cmd { struct cam_fd_query_cap_cmd {
struct cam_iommu_handle device_iommu; struct cam_iommu_handle device_iommu;
struct cam_iommu_handle cdm_iommu; struct cam_iommu_handle cdm_iommu;
struct cam_fd_hw_caps hw_caps; struct cam_fd_hw_caps hw_caps;
uint64_t reserved; __u64 reserved;
}; };
/** /**
@@ -123,10 +123,10 @@ struct cam_fd_query_cap_cmd {
*/ */
struct cam_fd_acquire_dev_info { struct cam_fd_acquire_dev_info {
struct cam_fd_soc_clock_bw_request clk_bw_request; struct cam_fd_soc_clock_bw_request clk_bw_request;
uint32_t priority; __u32 priority;
uint32_t mode; __u32 mode;
uint32_t get_raw_results; __u32 get_raw_results;
uint32_t reserved[13]; __u32 reserved[13];
}; };
#endif /* __UAPI_CAM_FD_H__ */ #endif /* __UAPI_CAM_FD_H__ */

View File

@@ -1,13 +1,13 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_ICP_H__ #ifndef __UAPI_CAM_ICP_H__
#define __UAPI_CAM_ICP_H__ #define __UAPI_CAM_ICP_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#include <media/cam_cpas.h> #include <camera/media/cam_cpas.h>
/* icp, ipe, bps, cdm(ipe/bps) are used in querycap */ /* icp, ipe, bps, cdm(ipe/bps) are used in querycap */
#define CAM_ICP_DEV_TYPE_A5 1 #define CAM_ICP_DEV_TYPE_A5 1
@@ -89,12 +89,12 @@
* @axi_path: Per path vote info for IPE/BPS * @axi_path: Per path vote info for IPE/BPS
*/ */
struct cam_icp_clk_bw_request_v2 { struct cam_icp_clk_bw_request_v2 {
uint64_t budget_ns; __u64 budget_ns;
uint32_t frame_cycles; __u32 frame_cycles;
uint32_t rt_flag; __u32 rt_flag;
uint32_t reserved; __u32 reserved;
uint32_t num_paths; __u32 num_paths;
struct cam_axi_per_path_bw_vote axi_path[1]; struct cam_axi_per_path_bw_vote axi_path[1];
}; };
/** /**
@@ -107,11 +107,11 @@ struct cam_icp_clk_bw_request_v2 {
* @compressed_bw: Compressed bandwidth to process frame * @compressed_bw: Compressed bandwidth to process frame
*/ */
struct cam_icp_clk_bw_request { struct cam_icp_clk_bw_request {
uint64_t budget_ns; __u64 budget_ns;
uint32_t frame_cycles; __u32 frame_cycles;
uint32_t rt_flag; __u32 rt_flag;
uint64_t uncompressed_bw; __u64 uncompressed_bw;
uint64_t compressed_bw; __u64 compressed_bw;
}; };
/** /**
@@ -126,8 +126,8 @@ struct cam_icp_clk_bw_request {
* @hw_ver: major, minor and incr values of a device version * @hw_ver: major, minor and incr values of a device version
*/ */
struct cam_icp_dev_ver { struct cam_icp_dev_ver {
uint32_t dev_type; __u32 dev_type;
uint32_t reserved; __u32 reserved;
struct cam_hw_version hw_ver; struct cam_hw_version hw_ver;
}; };
@@ -143,10 +143,10 @@ struct cam_icp_dev_ver {
* @revision: FW version increment * @revision: FW version increment
*/ */
struct cam_icp_ver { struct cam_icp_ver {
uint32_t major; __u32 major;
uint32_t minor; __u32 minor;
uint32_t revision; __u32 revision;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -163,11 +163,11 @@ struct cam_icp_ver {
struct cam_icp_query_cap_cmd { struct cam_icp_query_cap_cmd {
struct cam_iommu_handle dev_iommu_handle; struct cam_iommu_handle dev_iommu_handle;
struct cam_iommu_handle cdm_iommu_handle; struct cam_iommu_handle cdm_iommu_handle;
struct cam_icp_ver fw_version; struct cam_icp_ver fw_version;
struct cam_icp_ver api_version; struct cam_icp_ver api_version;
uint32_t num_ipe; __u32 num_ipe;
uint32_t num_bps; __u32 num_bps;
struct cam_icp_dev_ver dev_ver[CAM_ICP_DEV_TYPE_MAX]; struct cam_icp_dev_ver dev_ver[CAM_ICP_DEV_TYPE_MAX];
}; };
/** /**
@@ -179,10 +179,10 @@ struct cam_icp_query_cap_cmd {
* @fps: fps * @fps: fps
*/ */
struct cam_icp_res_info { struct cam_icp_res_info {
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t fps; __u32 fps;
}; };
/** /**
@@ -199,14 +199,14 @@ struct cam_icp_res_info {
* @out_res: output resource * @out_res: output resource
*/ */
struct cam_icp_acquire_dev_info { struct cam_icp_acquire_dev_info {
uint32_t scratch_mem_size; __u32 scratch_mem_size;
uint32_t dev_type; __u32 dev_type;
uint32_t io_config_cmd_size; __u32 io_config_cmd_size;
int32_t io_config_cmd_handle; __s32 io_config_cmd_handle;
uint32_t secure_mode; __u32 secure_mode;
int32_t chain_info; __s32 chain_info;
struct cam_icp_res_info in_res; struct cam_icp_res_info in_res;
uint32_t num_out_res; __u32 num_out_res;
struct cam_icp_res_info out_res[1]; struct cam_icp_res_info out_res[1];
} __attribute__((__packed__)); } __attribute__((__packed__));

View File

@@ -6,10 +6,10 @@
#ifndef __UAPI_CAM_ISP_H__ #ifndef __UAPI_CAM_ISP_H__
#define __UAPI_CAM_ISP_H__ #define __UAPI_CAM_ISP_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#include <media/cam_isp_vfe.h> #include <camera/media/cam_isp_vfe.h>
#include <media/cam_isp_ife.h> #include <camera/media/cam_isp_ife.h>
#include <media/cam_cpas.h> #include <camera/media/cam_cpas.h>
/* ISP driver name */ /* ISP driver name */
#define CAM_ISP_DEV_NAME "cam-isp" #define CAM_ISP_DEV_NAME "cam-isp"
@@ -145,8 +145,8 @@
* *
*/ */
struct cam_isp_dev_cap_info { struct cam_isp_dev_cap_info {
uint32_t hw_type; __u32 hw_type;
uint32_t reserved; __u32 reserved;
struct cam_hw_version hw_version; struct cam_hw_version hw_version;
}; };
@@ -161,11 +161,11 @@ struct cam_isp_dev_cap_info {
* *
*/ */
struct cam_isp_query_cap_cmd { struct cam_isp_query_cap_cmd {
struct cam_iommu_handle device_iommu; struct cam_iommu_handle device_iommu;
struct cam_iommu_handle cdm_iommu; struct cam_iommu_handle cdm_iommu;
int32_t num_dev; __s32 num_dev;
uint32_t reserved; __u32 reserved;
struct cam_isp_dev_cap_info dev_caps[CAM_ISP_HW_MAX]; struct cam_isp_dev_cap_info dev_caps[CAM_ISP_HW_MAX];
}; };
/* Acquire Device */ /* Acquire Device */
@@ -185,14 +185,14 @@ struct cam_isp_query_cap_cmd {
* *
*/ */
struct cam_isp_out_port_info { struct cam_isp_out_port_info {
uint32_t res_type; __u32 res_type;
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t comp_grp_id; __u32 comp_grp_id;
uint32_t split_point; __u32 split_point;
uint32_t secure_mode; __u32 secure_mode;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -213,16 +213,16 @@ struct cam_isp_out_port_info {
* *
*/ */
struct cam_isp_out_port_info_v2 { struct cam_isp_out_port_info_v2 {
uint32_t res_type; __u32 res_type;
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t comp_grp_id; __u32 comp_grp_id;
uint32_t split_point; __u32 split_point;
uint32_t secure_mode; __u32 secure_mode;
uint32_t wm_mode; __u32 wm_mode;
uint32_t out_port_res1; __u32 out_port_res1;
uint32_t out_port_res2; __u32 out_port_res2;
}; };
/** /**
@@ -260,31 +260,31 @@ struct cam_isp_out_port_info_v2 {
* *
*/ */
struct cam_isp_in_port_info { struct cam_isp_in_port_info {
uint32_t res_type; __u32 res_type;
uint32_t lane_type; __u32 lane_type;
uint32_t lane_num; __u32 lane_num;
uint32_t lane_cfg; __u32 lane_cfg;
uint32_t vc; __u32 vc;
uint32_t dt; __u32 dt;
uint32_t format; __u32 format;
uint32_t test_pattern; __u32 test_pattern;
uint32_t usage_type; __u32 usage_type;
uint32_t left_start; __u32 left_start;
uint32_t left_stop; __u32 left_stop;
uint32_t left_width; __u32 left_width;
uint32_t right_start; __u32 right_start;
uint32_t right_stop; __u32 right_stop;
uint32_t right_width; __u32 right_width;
uint32_t line_start; __u32 line_start;
uint32_t line_stop; __u32 line_stop;
uint32_t height; __u32 height;
uint32_t pixel_clk; __u32 pixel_clk;
uint32_t batch_size; __u32 batch_size;
uint32_t dsp_mode; __u32 dsp_mode;
uint32_t hbi_cnt; __u32 hbi_cnt;
uint32_t reserved; __u32 reserved;
uint32_t num_out_res; __u32 num_out_res;
struct cam_isp_out_port_info data[1]; struct cam_isp_out_port_info data[1];
}; };
/** /**
@@ -329,38 +329,38 @@ struct cam_isp_in_port_info {
* *
*/ */
struct cam_isp_in_port_info_v2 { struct cam_isp_in_port_info_v2 {
uint32_t res_type; __u32 res_type;
uint32_t lane_type; __u32 lane_type;
uint32_t lane_num; __u32 lane_num;
uint32_t lane_cfg; __u32 lane_cfg;
uint32_t vc[CAM_ISP_VC_DT_CFG]; __u32 vc[CAM_ISP_VC_DT_CFG];
uint32_t dt[CAM_ISP_VC_DT_CFG]; __u32 dt[CAM_ISP_VC_DT_CFG];
uint32_t num_valid_vc_dt; __u32 num_valid_vc_dt;
uint32_t format; __u32 format;
uint32_t test_pattern; __u32 test_pattern;
uint32_t usage_type; __u32 usage_type;
uint32_t left_start; __u32 left_start;
uint32_t left_stop; __u32 left_stop;
uint32_t left_width; __u32 left_width;
uint32_t right_start; __u32 right_start;
uint32_t right_stop; __u32 right_stop;
uint32_t right_width; __u32 right_width;
uint32_t line_start; __u32 line_start;
uint32_t line_stop; __u32 line_stop;
uint32_t height; __u32 height;
uint32_t pixel_clk; __u32 pixel_clk;
uint32_t batch_size; __u32 batch_size;
uint32_t dsp_mode; __u32 dsp_mode;
uint32_t hbi_cnt; __u32 hbi_cnt;
uint32_t cust_node; __u32 cust_node;
uint32_t num_out_res; __u32 num_out_res;
uint32_t offline_mode; __u32 offline_mode;
uint32_t horizontal_bin; __u32 horizontal_bin;
uint32_t qcfa_bin; __u32 qcfa_bin;
uint32_t csid_res_1; __u32 csid_res_1;
uint32_t csid_res_2; __u32 csid_res_2;
uint32_t ife_res_1; __u32 ife_res_1;
uint32_t ife_res_2; __u32 ife_res_2;
struct cam_isp_out_port_info_v2 data[1]; struct cam_isp_out_port_info_v2 data[1];
}; };
@@ -376,11 +376,11 @@ struct cam_isp_in_port_info_v2 {
* *
*/ */
struct cam_isp_resource { struct cam_isp_resource {
uint32_t resource_id; __u32 resource_id;
uint32_t length; __u32 length;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t res_hdl; __u64 res_hdl;
}; };
/** /**
@@ -398,12 +398,12 @@ struct cam_isp_resource {
* @reserved: Reserved for alignment * @reserved: Reserved for alignment
*/ */
struct cam_isp_port_hfr_config { struct cam_isp_port_hfr_config {
uint32_t resource_type; __u32 resource_type;
uint32_t subsample_pattern; __u32 subsample_pattern;
uint32_t subsample_period; __u32 subsample_period;
uint32_t framedrop_pattern; __u32 framedrop_pattern;
uint32_t framedrop_period; __u32 framedrop_period;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -414,8 +414,8 @@ struct cam_isp_port_hfr_config {
* @port_hfr_config: HFR configuration for each IO port * @port_hfr_config: HFR configuration for each IO port
*/ */
struct cam_isp_resource_hfr_config { struct cam_isp_resource_hfr_config {
uint32_t num_ports; __u32 num_ports;
uint32_t reserved; __u32 reserved;
struct cam_isp_port_hfr_config port_hfr_config[1]; struct cam_isp_port_hfr_config port_hfr_config[1];
} __attribute__((packed)); } __attribute__((packed));
@@ -433,10 +433,10 @@ struct cam_isp_resource_hfr_config {
* *
*/ */
struct cam_isp_dual_split_params { struct cam_isp_dual_split_params {
uint32_t split_point; __u32 split_point;
uint32_t right_padding; __u32 right_padding;
uint32_t left_padding; __u32 left_padding;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -453,10 +453,10 @@ struct cam_isp_dual_split_params {
* *
*/ */
struct cam_isp_dual_stripe_config { struct cam_isp_dual_stripe_config {
uint32_t offset; __u32 offset;
uint32_t width; __u32 width;
uint32_t tileconfig; __u32 tileconfig;
uint32_t port_id; __u32 port_id;
}; };
/** /**
@@ -469,10 +469,10 @@ struct cam_isp_dual_stripe_config {
* *
*/ */
struct cam_isp_dual_config { struct cam_isp_dual_config {
uint32_t num_ports; __u32 num_ports;
uint32_t reserved; __u32 reserved;
struct cam_isp_dual_split_params split_params; struct cam_isp_dual_split_params split_params;
struct cam_isp_dual_stripe_config stripes[1]; struct cam_isp_dual_stripe_config stripes[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -488,11 +488,11 @@ struct cam_isp_dual_config {
* Hence pass the clock and let KMD decide. * Hence pass the clock and let KMD decide.
*/ */
struct cam_isp_clock_config { struct cam_isp_clock_config {
uint32_t usage_type; __u32 usage_type;
uint32_t num_rdi; __u32 num_rdi;
uint64_t left_pix_hz; __u64 left_pix_hz;
uint64_t right_pix_hz; __u64 right_pix_hz;
uint64_t rdi_hz[1]; __u64 rdi_hz[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -501,7 +501,7 @@ struct cam_isp_clock_config {
* @csid_clock CSID clock * @csid_clock CSID clock
*/ */
struct cam_isp_csid_clock_config { struct cam_isp_csid_clock_config {
uint64_t csid_clock; __u64 csid_clock;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -510,7 +510,7 @@ struct cam_isp_csid_clock_config {
* @csid_binning CSID binning * @csid_binning CSID binning
*/ */
struct cam_isp_csid_qcfa_config { struct cam_isp_csid_qcfa_config {
uint32_t csid_binning; __u32 csid_binning;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -522,10 +522,10 @@ struct cam_isp_csid_qcfa_config {
* @ext_bw_bps: Bandwidth vote for path-to-DDR after CAMNOC * @ext_bw_bps: Bandwidth vote for path-to-DDR after CAMNOC
*/ */
struct cam_isp_bw_vote { struct cam_isp_bw_vote {
uint32_t resource_id; __u32 resource_id;
uint32_t reserved; __u32 reserved;
uint64_t cam_bw_bps; __u64 cam_bw_bps;
uint64_t ext_bw_bps; __u64 ext_bw_bps;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -538,11 +538,11 @@ struct cam_isp_bw_vote {
* @rdi_vote: RDI bandwidth requirements * @rdi_vote: RDI bandwidth requirements
*/ */
struct cam_isp_bw_config { struct cam_isp_bw_config {
uint32_t usage_type; __u32 usage_type;
uint32_t num_rdi; __u32 num_rdi;
struct cam_isp_bw_vote left_pix_vote; struct cam_isp_bw_vote left_pix_vote;
struct cam_isp_bw_vote right_pix_vote; struct cam_isp_bw_vote right_pix_vote;
struct cam_isp_bw_vote rdi_vote[1]; struct cam_isp_bw_vote rdi_vote[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -553,9 +553,9 @@ struct cam_isp_bw_config {
* @axi_path Per path vote info * @axi_path Per path vote info
*/ */
struct cam_isp_bw_config_v2 { struct cam_isp_bw_config_v2 {
uint32_t usage_type; __u32 usage_type;
uint32_t num_paths; __u32 num_paths;
struct cam_axi_per_path_bw_vote axi_path[1]; struct cam_axi_per_path_bw_vote axi_path[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -580,21 +580,21 @@ struct cam_isp_bw_config_v2 {
* @latency_buf_size: latency buffer for read engine * @latency_buf_size: latency buffer for read engine
*/ */
struct cam_fe_config { struct cam_fe_config {
uint64_t version; __u64 version;
uint32_t min_vbi; __u32 min_vbi;
uint32_t fs_mode; __u32 fs_mode;
uint32_t fs_line_sync_en; __u32 fs_line_sync_en;
uint32_t hbi_count; __u32 hbi_count;
uint32_t fs_sync_enable; __u32 fs_sync_enable;
uint32_t go_cmd_sel; __u32 go_cmd_sel;
uint32_t client_enable; __u32 client_enable;
uint32_t source_addr; __u32 source_addr;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t stride; __u32 stride;
uint32_t format; __u32 format;
uint32_t unpacker_cfg; __u32 unpacker_cfg;
uint32_t latency_buf_size; __u32 latency_buf_size;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -614,18 +614,18 @@ struct cam_fe_config {
* @reserved: Reserved * @reserved: Reserved
*/ */
struct cam_isp_core_config { struct cam_isp_core_config {
uint32_t version; __u32 version;
uint32_t vid_ds16_r2pd; __u32 vid_ds16_r2pd;
uint32_t vid_ds4_r2pd; __u32 vid_ds4_r2pd;
uint32_t disp_ds16_r2pd; __u32 disp_ds16_r2pd;
uint32_t disp_ds4_r2pd; __u32 disp_ds4_r2pd;
uint32_t dsp_streaming_tap_point; __u32 dsp_streaming_tap_point;
uint32_t ihist_src_sel; __u32 ihist_src_sel;
uint32_t hdr_be_src_sel; __u32 hdr_be_src_sel;
uint32_t hdr_bhist_src_sel; __u32 hdr_bhist_src_sel;
uint32_t input_mux_sel_pdaf; __u32 input_mux_sel_pdaf;
uint32_t input_mux_sel_pp; __u32 input_mux_sel_pp;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -641,14 +641,14 @@ struct cam_isp_core_config {
* @data : Start of data region * @data : Start of data region
*/ */
struct cam_isp_acquire_hw_info { struct cam_isp_acquire_hw_info {
uint16_t common_info_version; __u16 common_info_version;
uint16_t common_info_size; __u16 common_info_size;
uint32_t common_info_offset; __u32 common_info_offset;
uint32_t num_inputs; __u32 num_inputs;
uint32_t input_info_version; __u32 input_info_version;
uint32_t input_info_size; __u32 input_info_size;
uint32_t input_info_offset; __u32 input_info_offset;
uint64_t data; __u64 data;
}; };
/** /**
@@ -673,18 +673,18 @@ struct cam_isp_acquire_hw_info {
* @reserved_4 : Reserved field for Write master config * @reserved_4 : Reserved field for Write master config
*/ */
struct cam_isp_vfe_wm_config { struct cam_isp_vfe_wm_config {
uint32_t port_type; __u32 port_type;
uint32_t wm_mode; __u32 wm_mode;
uint32_t h_init; __u32 h_init;
uint32_t height; __u32 height;
uint32_t width; __u32 width;
uint32_t virtual_frame_en; __u32 virtual_frame_en;
uint32_t stride; __u32 stride;
uint32_t offset; __u32 offset;
uint32_t reserved_1; __u32 reserved_1;
uint32_t reserved_2; __u32 reserved_2;
uint32_t reserved_3; __u32 reserved_3;
uint32_t reserved_4; __u32 reserved_4;
}; };
/** /**
@@ -695,9 +695,9 @@ struct cam_isp_vfe_wm_config {
* @wm_config : VFE out config * @wm_config : VFE out config
*/ */
struct cam_isp_vfe_out_config { struct cam_isp_vfe_out_config {
uint32_t num_ports; __u32 num_ports;
uint32_t reserved; __u32 reserved;
struct cam_isp_vfe_wm_config wm_config[1]; struct cam_isp_vfe_wm_config wm_config[1];
}; };
/** /**
@@ -706,7 +706,7 @@ struct cam_isp_vfe_out_config {
* @is_epd_sensor : flag to check if epd supported * @is_epd_sensor : flag to check if epd supported
*/ */
struct cam_isp_csid_epd_config { struct cam_isp_csid_epd_config {
uint32_t is_epd_supported; __u32 is_epd_supported;
}; };
#define CAM_ISP_ACQUIRE_COMMON_VER0 0x1000 #define CAM_ISP_ACQUIRE_COMMON_VER0 0x1000

View File

@@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_JPEG_H__ #ifndef __UAPI_CAM_JPEG_H__
#define __UAPI_CAM_JPEG_H__ #define __UAPI_CAM_JPEG_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
/* enc, dma, cdm(enc/dma) are used in querycap */ /* enc, dma, cdm(enc/dma) are used in querycap */
#define CAM_JPEG_DEV_TYPE_ENC 0 #define CAM_JPEG_DEV_TYPE_ENC 0
@@ -53,8 +53,8 @@
* @hw_ver: Major, minor and incr values of a device version * @hw_ver: Major, minor and incr values of a device version
*/ */
struct cam_jpeg_dev_ver { struct cam_jpeg_dev_ver {
uint32_t size; __u32 size;
uint32_t dev_type; __u32 dev_type;
struct cam_hw_version hw_ver; struct cam_hw_version hw_ver;
}; };
@@ -71,8 +71,8 @@ struct cam_jpeg_dev_ver {
struct cam_jpeg_query_cap_cmd { struct cam_jpeg_query_cap_cmd {
struct cam_iommu_handle dev_iommu_handle; struct cam_iommu_handle dev_iommu_handle;
struct cam_iommu_handle cdm_iommu_handle; struct cam_iommu_handle cdm_iommu_handle;
uint32_t num_enc; __u32 num_enc;
uint32_t num_dma; __u32 num_dma;
struct cam_jpeg_dev_ver dev_ver[CAM_JPEG_DEV_TYPE_MAX]; struct cam_jpeg_dev_ver dev_ver[CAM_JPEG_DEV_TYPE_MAX];
}; };
@@ -85,10 +85,10 @@ struct cam_jpeg_query_cap_cmd {
* @fps: Fps * @fps: Fps
*/ */
struct cam_jpeg_res_info { struct cam_jpeg_res_info {
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t fps; __u32 fps;
}; };
/** /**
@@ -100,8 +100,8 @@ struct cam_jpeg_res_info {
* @in_res: Iut resource info * @in_res: Iut resource info
*/ */
struct cam_jpeg_acquire_dev_info { struct cam_jpeg_acquire_dev_info {
uint32_t dev_type; __u32 dev_type;
uint32_t reserved; __u32 reserved;
struct cam_jpeg_res_info in_res; struct cam_jpeg_res_info in_res;
struct cam_jpeg_res_info out_res; struct cam_jpeg_res_info out_res;
}; };
@@ -115,8 +115,8 @@ struct cam_jpeg_acquire_dev_info {
* bytes * bytes
*/ */
struct cam_jpeg_config_inout_param_info { struct cam_jpeg_config_inout_param_info {
int32_t clk_index; __s32 clk_index;
int32_t output_size; __s32 output_size;
}; };
#endif /* __UAPI_CAM_JPEG_H__ */ #endif /* __UAPI_CAM_JPEG_H__ */

View File

@@ -1,12 +1,12 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2019, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_LRME_H__ #ifndef __UAPI_CAM_LRME_H__
#define __UAPI_CAM_LRME_H__ #define __UAPI_CAM_LRME_H__
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
/* LRME Resource Types */ /* LRME Resource Types */
@@ -27,9 +27,9 @@ enum CAM_LRME_IO_TYPE {
struct cam_lrme_hw_version { struct cam_lrme_hw_version {
uint32_t gen; __u32 gen;
uint32_t rev; __u32 rev;
uint32_t step; __u32 step;
}; };
struct cam_lrme_dev_cap { struct cam_lrme_dev_cap {
@@ -52,14 +52,14 @@ struct cam_lrme_dev_cap {
struct cam_lrme_query_cap_cmd { struct cam_lrme_query_cap_cmd {
struct cam_iommu_handle device_iommu; struct cam_iommu_handle device_iommu;
struct cam_iommu_handle cdm_iommu; struct cam_iommu_handle cdm_iommu;
uint32_t num_devices; __u32 num_devices;
struct cam_lrme_dev_cap dev_caps[CAM_LRME_DEV_MAX]; struct cam_lrme_dev_cap dev_caps[CAM_LRME_DEV_MAX];
}; };
struct cam_lrme_soc_info { struct cam_lrme_soc_info {
uint64_t clock_rate; __u64 clock_rate;
uint64_t bandwidth; __u64 bandwidth;
uint64_t reserved[4]; __u64 reserved[4];
}; };
struct cam_lrme_acquire_args { struct cam_lrme_acquire_args {

View File

@@ -1,13 +1,13 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2019, The Linux Foundation. All rights reserved. * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_OPE_H__ #ifndef __UAPI_OPE_H__
#define __UAPI_OPE_H__ #define __UAPI_OPE_H__
#include "cam_defs.h" #include <camera/media/cam_defs.h>
#include "cam_cpas.h" #include <camera/media/cam_cpas.h>
#define OPE_DEV_NAME_SIZE 128 #define OPE_DEV_NAME_SIZE 128
@@ -88,12 +88,12 @@
* *
*/ */
struct ope_stripe_info { struct ope_stripe_info {
uint32_t offset; __u32 offset;
uint32_t x_init; __u32 x_init;
uint32_t stripe_location; __u32 stripe_location;
uint32_t width; __u32 width;
uint32_t disable_bus; __u32 disable_bus;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -115,18 +115,18 @@ struct ope_stripe_info {
* *
*/ */
struct ope_io_buf_info { struct ope_io_buf_info {
uint32_t direction; __u32 direction;
uint32_t resource_type; __u32 resource_type;
uint32_t num_planes; __u32 num_planes;
uint32_t reserved; __u32 reserved;
uint32_t num_stripes[OPE_MAX_PLANES]; __u32 num_stripes[OPE_MAX_PLANES];
uint32_t mem_handle[OPE_MAX_PLANES]; __u32 mem_handle[OPE_MAX_PLANES];
uint32_t plane_offset[OPE_MAX_PLANES]; __u32 plane_offset[OPE_MAX_PLANES];
uint32_t length[OPE_MAX_PLANES]; __u32 length[OPE_MAX_PLANES];
uint32_t plane_stride[OPE_MAX_PLANES]; __u32 plane_stride[OPE_MAX_PLANES];
uint32_t height[OPE_MAX_PLANES]; __u32 height[OPE_MAX_PLANES];
uint32_t format; __u32 format;
uint32_t fence; __u32 fence;
struct ope_stripe_info stripe_info[OPE_MAX_PLANES][OPE_MAX_STRIPES]; struct ope_stripe_info stripe_info[OPE_MAX_PLANES][OPE_MAX_STRIPES];
}; };
@@ -139,8 +139,8 @@ struct ope_io_buf_info {
* *
*/ */
struct ope_frame_set { struct ope_frame_set {
uint32_t num_io_bufs; __u32 num_io_bufs;
uint32_t reserved; __u32 reserved;
struct ope_io_buf_info io_buf[OPE_MAX_IO_BUFS]; struct ope_io_buf_info io_buf[OPE_MAX_IO_BUFS];
}; };
@@ -161,17 +161,17 @@ struct ope_frame_set {
*/ */
struct ope_cmd_buf_info { struct ope_cmd_buf_info {
uint32_t mem_handle; __u32 mem_handle;
uint32_t offset; __u32 offset;
uint32_t size; __u32 size;
uint32_t length; __u32 length;
uint32_t cmd_buf_scope; __u32 cmd_buf_scope;
uint32_t type; __u32 type;
uint32_t cmd_buf_usage; __u32 cmd_buf_usage;
uint32_t cmd_buf_buffered; __u32 cmd_buf_buffered;
uint32_t stripe_idx; __u32 stripe_idx;
uint32_t cmd_buf_pass_idx; __u32 cmd_buf_pass_idx;
uint32_t prefetch_disable; __u32 prefetch_disable;
}; };
/** /**
@@ -184,8 +184,8 @@ struct ope_cmd_buf_info {
* *
*/ */
struct ope_frame_process { struct ope_frame_process {
uint32_t num_cmd_bufs[OPE_MAX_BATCH_SIZE]; __u32 num_cmd_bufs[OPE_MAX_BATCH_SIZE];
uint32_t batch_size; __u32 batch_size;
struct ope_cmd_buf_info cmd_buf[OPE_MAX_BATCH_SIZE][OPE_MAX_CMD_BUFS]; struct ope_cmd_buf_info cmd_buf[OPE_MAX_BATCH_SIZE][OPE_MAX_CMD_BUFS];
struct ope_frame_set frame_set[OPE_MAX_BATCH_SIZE]; struct ope_frame_set frame_set[OPE_MAX_BATCH_SIZE];
}; };
@@ -201,11 +201,11 @@ struct ope_frame_process {
* *
*/ */
struct ope_clk_bw_request_v2 { struct ope_clk_bw_request_v2 {
uint64_t budget_ns; __u64 budget_ns;
uint32_t frame_cycles; __u32 frame_cycles;
uint32_t rt_flag; __u32 rt_flag;
uint32_t reserved; __u32 reserved;
uint32_t num_paths; __u32 num_paths;
struct cam_axi_per_path_bw_vote axi_path[1]; struct cam_axi_per_path_bw_vote axi_path[1];
}; };
@@ -221,8 +221,8 @@ struct ope_clk_bw_request_v2 {
* *
*/ */
struct ope_hw_ver { struct ope_hw_ver {
uint32_t hw_type; __u32 hw_type;
uint32_t reserved; __u32 reserved;
struct cam_hw_version hw_ver; struct cam_hw_version hw_ver;
}; };
@@ -238,8 +238,8 @@ struct ope_hw_ver {
struct ope_query_cap_cmd { struct ope_query_cap_cmd {
struct cam_iommu_handle dev_iommu_handle; struct cam_iommu_handle dev_iommu_handle;
struct cam_iommu_handle cdm_iommu_handle; struct cam_iommu_handle cdm_iommu_handle;
uint32_t num_ope; __u32 num_ope;
uint32_t reserved; __u32 reserved;
struct ope_hw_ver hw_ver[OPE_DEV_TYPE_MAX]; struct ope_hw_ver hw_ver[OPE_DEV_TYPE_MAX];
}; };
@@ -259,16 +259,16 @@ struct ope_query_cap_cmd {
* *
*/ */
struct ope_out_res_info { struct ope_out_res_info {
uint32_t res_id; __u32 res_id;
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t alignment; __u32 alignment;
uint32_t packer_format; __u32 packer_format;
uint32_t subsample_period; __u32 subsample_period;
uint32_t subsample_pattern; __u32 subsample_pattern;
uint32_t pixel_pattern; __u32 pixel_pattern;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -287,16 +287,16 @@ struct ope_out_res_info {
* *
*/ */
struct ope_in_res_info { struct ope_in_res_info {
uint32_t res_id; __u32 res_id;
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t pixel_pattern; __u32 pixel_pattern;
uint32_t alignment; __u32 alignment;
uint32_t unpacker_format; __u32 unpacker_format;
uint32_t max_stripe_size; __u32 max_stripe_size;
uint32_t fps; __u32 fps;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -317,17 +317,17 @@ struct ope_in_res_info {
* *
*/ */
struct ope_acquire_dev_info { struct ope_acquire_dev_info {
uint32_t hw_type; __u32 hw_type;
uint32_t dev_type; __u32 dev_type;
char dev_name[OPE_DEV_NAME_SIZE]; char dev_name[OPE_DEV_NAME_SIZE];
uint32_t nrt_stripes_for_arb; __u32 nrt_stripes_for_arb;
uint32_t secure_mode; __u32 secure_mode;
uint32_t batch_size; __u32 batch_size;
uint32_t num_in_res; __u32 num_in_res;
struct ope_in_res_info in_res[OPE_IN_RES_MAX]; struct ope_in_res_info in_res[OPE_IN_RES_MAX];
uint32_t num_out_res; __u32 num_out_res;
uint32_t reserved; __u32 reserved;
struct ope_out_res_info out_res[OPE_OUT_RES_MAX]; struct ope_out_res_info out_res[OPE_OUT_RES_MAX];
} __attribute__((__packed__)); } __attribute__((__packed__));
#endif /* __UAPI_OPE_H__ */ #endif /* __UAPI_OPE_H__ */

View File

@@ -10,7 +10,7 @@
#include <linux/types.h> #include <linux/types.h>
#include <linux/ioctl.h> #include <linux/ioctl.h>
#include <linux/media.h> #include <linux/media.h>
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#define CAM_REQ_MGR_VNODE_NAME "cam-req-mgr-devnode" #define CAM_REQ_MGR_VNODE_NAME "cam-req-mgr-devnode"
@@ -96,13 +96,13 @@
* @tv_usec: timestamp in micro seconds * @tv_usec: timestamp in micro seconds
*/ */
struct cam_req_mgr_event_data { struct cam_req_mgr_event_data {
int32_t session_hdl; __s32 session_hdl;
int32_t link_hdl; __s32 link_hdl;
int32_t frame_id; __s32 frame_id;
int32_t reserved; __s32 reserved;
int64_t req_id; __s64 req_id;
uint64_t tv_sec; __u64 tv_sec;
uint64_t tv_usec; __u64 tv_usec;
}; };
/** /**
@@ -112,8 +112,8 @@ struct cam_req_mgr_event_data {
* @opcode2: CAM_REQ_MGR_DESTROY_SESSION * @opcode2: CAM_REQ_MGR_DESTROY_SESSION
*/ */
struct cam_req_mgr_session_info { struct cam_req_mgr_session_info {
int32_t session_hdl; __s32 session_hdl;
int32_t reserved; __s32 reserved;
}; };
/** /**
@@ -125,21 +125,21 @@ struct cam_req_mgr_session_info {
* @opcode: CAM_REQ_MGR_LINK * @opcode: CAM_REQ_MGR_LINK
*/ */
struct cam_req_mgr_link_info { struct cam_req_mgr_link_info {
int32_t session_hdl; __s32 session_hdl;
uint32_t num_devices; __u32 num_devices;
int32_t dev_hdls[CAM_REQ_MGR_MAX_HANDLES]; __s32 dev_hdls[CAM_REQ_MGR_MAX_HANDLES];
int32_t link_hdl; __s32 link_hdl;
}; };
struct cam_req_mgr_link_info_v2 { struct cam_req_mgr_link_info_v2 {
int32_t session_hdl; __s32 session_hdl;
uint32_t num_devices; __u32 num_devices;
int32_t dev_hdls[CAM_REQ_MGR_MAX_HANDLES_V2]; __s32 dev_hdls[CAM_REQ_MGR_MAX_HANDLES_V2];
int32_t link_hdl; __s32 link_hdl;
}; };
struct cam_req_mgr_ver_info { struct cam_req_mgr_ver_info {
uint32_t version; __u32 version;
union { union {
struct cam_req_mgr_link_info link_info_v1; struct cam_req_mgr_link_info link_info_v1;
struct cam_req_mgr_link_info_v2 link_info_v2; struct cam_req_mgr_link_info_v2 link_info_v2;
@@ -152,8 +152,8 @@ struct cam_req_mgr_ver_info {
* @opcode: CAM_REQ_MGR_UNLINK * @opcode: CAM_REQ_MGR_UNLINK
*/ */
struct cam_req_mgr_unlink_info { struct cam_req_mgr_unlink_info {
int32_t session_hdl; __s32 session_hdl;
int32_t link_hdl; __s32 link_hdl;
}; };
/** /**
@@ -172,11 +172,11 @@ struct cam_req_mgr_unlink_info {
* @opcode: CAM_REQ_MGR_FLUSH_REQ * @opcode: CAM_REQ_MGR_FLUSH_REQ
*/ */
struct cam_req_mgr_flush_info { struct cam_req_mgr_flush_info {
int32_t session_hdl; __s32 session_hdl;
int32_t link_hdl; __s32 link_hdl;
uint32_t flush_type; __u32 flush_type;
uint32_t reserved; __u32 reserved;
int64_t req_id; __s64 req_id;
}; };
/** struct cam_req_mgr_sched_info /** struct cam_req_mgr_sched_info
@@ -194,13 +194,13 @@ struct cam_req_mgr_flush_info {
* @req_id: Input Param - Request Id from which all requests will be flushed * @req_id: Input Param - Request Id from which all requests will be flushed
*/ */
struct cam_req_mgr_sched_request { struct cam_req_mgr_sched_request {
int32_t session_hdl; __s32 session_hdl;
int32_t link_hdl; __s32 link_hdl;
int32_t bubble_enable; __s32 bubble_enable;
int32_t sync_mode; __s32 sync_mode;
int32_t additional_timeout; __s32 additional_timeout;
int32_t reserved; __s32 reserved;
int64_t req_id; __s64 req_id;
}; };
/** /**
@@ -219,12 +219,12 @@ struct cam_req_mgr_sched_request {
* @opcode: CAM_REQ_MGR_SYNC_MODE * @opcode: CAM_REQ_MGR_SYNC_MODE
*/ */
struct cam_req_mgr_sync_mode { struct cam_req_mgr_sync_mode {
int32_t session_hdl; __s32 session_hdl;
int32_t sync_mode; __s32 sync_mode;
int32_t num_links; __s32 num_links;
int32_t link_hdls[MAX_LINKS_PER_SESSION]; __s32 link_hdls[MAX_LINKS_PER_SESSION];
int32_t master_link_hdl; __s32 master_link_hdl;
int32_t reserved; __s32 reserved;
}; };
/** /**
@@ -238,11 +238,11 @@ struct cam_req_mgr_sync_mode {
* @opcode: CAM_REQ_MGR_LINK_CONTROL * @opcode: CAM_REQ_MGR_LINK_CONTROL
*/ */
struct cam_req_mgr_link_control { struct cam_req_mgr_link_control {
int32_t ops; __s32 ops;
int32_t session_hdl; __s32 session_hdl;
int32_t num_links; __s32 num_links;
int32_t reserved; __s32 reserved;
int32_t link_hdls[MAX_LINKS_PER_SESSION]; __s32 link_hdls[MAX_LINKS_PER_SESSION];
}; };
/** /**
@@ -335,9 +335,9 @@ struct cam_req_mgr_link_control {
* @vaddr: virtual address pointer * @vaddr: virtual address pointer
*/ */
struct cam_mem_alloc_out_params { struct cam_mem_alloc_out_params {
uint32_t buf_handle; __u32 buf_handle;
int32_t fd; __s32 fd;
uint64_t vaddr; __u64 vaddr;
}; };
/** /**
@@ -347,9 +347,9 @@ struct cam_mem_alloc_out_params {
* @vaddr: virtual address pointer * @vaddr: virtual address pointer
*/ */
struct cam_mem_map_out_params { struct cam_mem_map_out_params {
uint32_t buf_handle; __u32 buf_handle;
uint32_t reserved; __u32 reserved;
uint64_t vaddr; __u64 vaddr;
}; };
/** /**
@@ -363,11 +363,11 @@ struct cam_mem_map_out_params {
*/ */
/* CAM_REQ_MGR_ALLOC_BUF */ /* CAM_REQ_MGR_ALLOC_BUF */
struct cam_mem_mgr_alloc_cmd { struct cam_mem_mgr_alloc_cmd {
uint64_t len; __u64 len;
uint64_t align; __u64 align;
int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE]; __s32 mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
uint32_t num_hdl; __u32 num_hdl;
uint32_t flags; __u32 flags;
struct cam_mem_alloc_out_params out; struct cam_mem_alloc_out_params out;
}; };
@@ -383,11 +383,11 @@ struct cam_mem_mgr_alloc_cmd {
/* CAM_REQ_MGR_MAP_BUF */ /* CAM_REQ_MGR_MAP_BUF */
struct cam_mem_mgr_map_cmd { struct cam_mem_mgr_map_cmd {
int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE]; __s32 mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
uint32_t num_hdl; __u32 num_hdl;
uint32_t flags; __u32 flags;
int32_t fd; __s32 fd;
uint32_t reserved; __u32 reserved;
struct cam_mem_map_out_params out; struct cam_mem_map_out_params out;
}; };
@@ -398,8 +398,8 @@ struct cam_mem_mgr_map_cmd {
*/ */
/* CAM_REQ_MGR_RELEASE_BUF */ /* CAM_REQ_MGR_RELEASE_BUF */
struct cam_mem_mgr_release_cmd { struct cam_mem_mgr_release_cmd {
int32_t buf_handle; __s32 buf_handle;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -409,8 +409,8 @@ struct cam_mem_mgr_release_cmd {
*/ */
/* CAM_REQ_MGR_CACHE_OPS */ /* CAM_REQ_MGR_CACHE_OPS */
struct cam_mem_cache_ops_cmd { struct cam_mem_cache_ops_cmd {
int32_t buf_handle; __s32 buf_handle;
uint32_t mem_cache_ops; __u32 mem_cache_ops;
}; };
/** /**
@@ -436,11 +436,11 @@ struct cam_mem_cache_ops_cmd {
* @resource_size: size of the resource * @resource_size: size of the resource
*/ */
struct cam_req_mgr_error_msg { struct cam_req_mgr_error_msg {
uint32_t error_type; __u32 error_type;
uint32_t request_id; __u32 request_id;
int32_t device_hdl; __s32 device_hdl;
int32_t link_hdl; __s32 link_hdl;
uint64_t resource_size; __u64 resource_size;
}; };
/** /**
@@ -455,13 +455,13 @@ struct cam_req_mgr_error_msg {
* @reserved: reserved * @reserved: reserved
*/ */
struct cam_req_mgr_frame_msg { struct cam_req_mgr_frame_msg {
uint64_t request_id; __u64 request_id;
uint64_t frame_id; __u64 frame_id;
uint64_t timestamp; __u64 timestamp;
int32_t link_hdl; __s32 link_hdl;
uint32_t sof_status; __u32 sof_status;
uint32_t frame_id_meta; __u32 frame_id_meta;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -474,12 +474,12 @@ struct cam_req_mgr_frame_msg {
* @custom_data: custom data * @custom_data: custom data
*/ */
struct cam_req_mgr_custom_msg { struct cam_req_mgr_custom_msg {
uint32_t custom_type; __u32 custom_type;
uint64_t request_id; __u64 request_id;
uint64_t frame_id; __u64 frame_id;
uint64_t timestamp; __u64 timestamp;
int32_t link_hdl; __s32 link_hdl;
uint64_t custom_data; __u64 custom_data;
}; };
/** /**
@@ -489,8 +489,8 @@ struct cam_req_mgr_custom_msg {
* @u: union which can either be error/frame/custom message * @u: union which can either be error/frame/custom message
*/ */
struct cam_req_mgr_message { struct cam_req_mgr_message {
int32_t session_hdl; __s32 session_hdl;
int32_t reserved; __s32 reserved;
union { union {
struct cam_req_mgr_error_msg err_msg; struct cam_req_mgr_error_msg err_msg;
struct cam_req_mgr_frame_msg frame_msg; struct cam_req_mgr_frame_msg frame_msg;

View File

@@ -8,7 +8,7 @@
#include <linux/types.h> #include <linux/types.h>
#include <linux/ioctl.h> #include <linux/ioctl.h>
#include <media/cam_defs.h> #include <camera/media/cam_defs.h>
#define CAM_SENSOR_PROBE_CMD (CAM_COMMON_OPCODE_MAX + 1) #define CAM_SENSOR_PROBE_CMD (CAM_COMMON_OPCODE_MAX + 1)
#define CAM_FLASH_MAX_LED_TRIGGERS 2 #define CAM_FLASH_MAX_LED_TRIGGERS 2
@@ -30,16 +30,16 @@
* *
*/ */
struct cam_sensor_query_cap { struct cam_sensor_query_cap {
uint32_t slot_info; __u32 slot_info;
uint32_t secure_camera; __u32 secure_camera;
uint32_t pos_pitch; __u32 pos_pitch;
uint32_t pos_roll; __u32 pos_roll;
uint32_t pos_yaw; __u32 pos_yaw;
uint32_t actuator_slot_id; __u32 actuator_slot_id;
uint32_t eeprom_slot_id; __u32 eeprom_slot_id;
uint32_t ois_slot_id; __u32 ois_slot_id;
uint32_t flash_slot_id; __u32 flash_slot_id;
uint32_t csiphy_slot_id; __u32 csiphy_slot_id;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -52,10 +52,10 @@ struct cam_sensor_query_cap {
* @reserved * @reserved
*/ */
struct cam_csiphy_query_cap { struct cam_csiphy_query_cap {
uint32_t slot_info; __u32 slot_info;
uint32_t version; __u32 version;
uint32_t clk_lane; __u32 clk_lane;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -65,8 +65,8 @@ struct cam_csiphy_query_cap {
* @reserved * @reserved
*/ */
struct cam_actuator_query_cap { struct cam_actuator_query_cap {
uint32_t slot_info; __u32 slot_info;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -76,9 +76,9 @@ struct cam_actuator_query_cap {
* @eeprom_kernel_probe : Indicates about the kernel or userspace probe * @eeprom_kernel_probe : Indicates about the kernel or userspace probe
*/ */
struct cam_eeprom_query_cap_t { struct cam_eeprom_query_cap_t {
uint32_t slot_info; __u32 slot_info;
uint16_t eeprom_kernel_probe; __u16 eeprom_kernel_probe;
uint16_t is_multimodule_mode; __u16 is_multimodule_mode;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -87,8 +87,8 @@ struct cam_eeprom_query_cap_t {
* @slot_info : Indicates about the slotId or cell Index * @slot_info : Indicates about the slotId or cell Index
*/ */
struct cam_ois_query_cap_t { struct cam_ois_query_cap_t {
uint32_t slot_info; __u32 slot_info;
uint16_t reserved; __u16 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -99,10 +99,10 @@ struct cam_ois_query_cap_t {
* @cmd_type : Explains type of command * @cmd_type : Explains type of command
*/ */
struct cam_cmd_i2c_info { struct cam_cmd_i2c_info {
uint32_t slave_addr; __u32 slave_addr;
uint8_t i2c_freq_mode; __u8 i2c_freq_mode;
uint8_t cmd_type; __u8 cmd_type;
uint16_t reserved; __u16 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -114,10 +114,10 @@ struct cam_cmd_i2c_info {
* @memory : OIS memory * @memory : OIS memory
*/ */
struct cam_ois_opcode { struct cam_ois_opcode {
uint32_t prog; __u32 prog;
uint32_t coeff; __u32 coeff;
uint32_t pheripheral; __u32 pheripheral;
uint32_t memory; __u32 memory;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -132,11 +132,11 @@ struct cam_ois_opcode {
* @opcode : opcode * @opcode : opcode
*/ */
struct cam_cmd_ois_info { struct cam_cmd_ois_info {
uint32_t slave_addr; __u32 slave_addr;
uint8_t i2c_freq_mode; __u8 i2c_freq_mode;
uint8_t cmd_type; __u8 cmd_type;
uint8_t ois_fw_flag; __u8 ois_fw_flag;
uint8_t is_ois_calib; __u8 is_ois_calib;
char ois_name[MAX_OIS_NAME_SIZE]; char ois_name[MAX_OIS_NAME_SIZE];
struct cam_ois_opcode opcode; struct cam_ois_opcode opcode;
} __attribute__((packed)); } __attribute__((packed));
@@ -156,15 +156,15 @@ struct cam_cmd_ois_info {
* @reserved * @reserved
*/ */
struct cam_cmd_probe { struct cam_cmd_probe {
uint8_t data_type; __u8 data_type;
uint8_t addr_type; __u8 addr_type;
uint8_t op_code; __u8 op_code;
uint8_t cmd_type; __u8 cmd_type;
uint32_t reg_addr; __u32 reg_addr;
uint32_t expected_data; __u32 expected_data;
uint32_t data_mask; __u32 data_mask;
uint16_t camera_id; __u16 camera_id;
uint16_t reserved; __u16 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -177,10 +177,10 @@ struct cam_cmd_probe {
* *
*/ */
struct cam_power_settings { struct cam_power_settings {
uint16_t power_seq_type; __u16 power_seq_type;
uint16_t reserved; __u16 reserved;
uint32_t config_val_low; __u32 config_val_low;
uint32_t config_val_high; __u32 config_val_high;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -192,10 +192,10 @@ struct cam_power_settings {
* @power_settings : Contains power setting info * @power_settings : Contains power setting info
*/ */
struct cam_cmd_power { struct cam_cmd_power {
uint32_t count; __u32 count;
uint8_t reserved; __u8 reserved;
uint8_t cmd_type; __u8 cmd_type;
uint16_t more_reserved; __u16 more_reserved;
struct cam_power_settings power_settings[1]; struct cam_power_settings power_settings[1];
} __attribute__((packed)); } __attribute__((packed));
@@ -210,11 +210,11 @@ struct cam_cmd_power {
* @ reserved * @ reserved
*/ */
struct i2c_rdwr_header { struct i2c_rdwr_header {
uint32_t count; __u32 count;
uint8_t op_code; __u8 op_code;
uint8_t cmd_type; __u8 cmd_type;
uint8_t data_type; __u8 data_type;
uint8_t addr_type; __u8 addr_type;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -225,8 +225,8 @@ struct i2c_rdwr_header {
* *
*/ */
struct i2c_random_wr_payload { struct i2c_random_wr_payload {
uint32_t reg_addr; __u32 reg_addr;
uint32_t reg_data; __u32 reg_data;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -245,8 +245,8 @@ struct cam_cmd_i2c_random_wr {
* @ reserved * @ reserved
*/ */
struct cam_cmd_read { struct cam_cmd_read {
uint32_t reg_data; __u32 reg_data;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -256,9 +256,9 @@ struct cam_cmd_read {
* @ data_read : I2C read command * @ data_read : I2C read command
*/ */
struct cam_cmd_i2c_continuous_wr { struct cam_cmd_i2c_continuous_wr {
struct i2c_rdwr_header header; struct i2c_rdwr_header header;
uint32_t reg_addr; __u32 reg_addr;
struct cam_cmd_read data_read[1]; struct cam_cmd_read data_read[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -267,8 +267,8 @@ struct cam_cmd_i2c_continuous_wr {
* @ data_read : I2C read command * @ data_read : I2C read command
*/ */
struct cam_cmd_i2c_random_rd { struct cam_cmd_i2c_random_rd {
struct i2c_rdwr_header header; struct i2c_rdwr_header header;
struct cam_cmd_read data_read[1]; struct cam_cmd_read data_read[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -278,8 +278,8 @@ struct cam_cmd_i2c_random_rd {
* *
*/ */
struct cam_cmd_i2c_continuous_rd { struct cam_cmd_i2c_continuous_rd {
struct i2c_rdwr_header header; struct i2c_rdwr_header header;
uint32_t reg_addr; __u32 reg_addr;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -298,15 +298,15 @@ struct cam_cmd_i2c_continuous_rd {
* *
*/ */
struct cam_cmd_conditional_wait { struct cam_cmd_conditional_wait {
uint8_t data_type; __u8 data_type;
uint8_t addr_type; __u8 addr_type;
uint16_t reserved; __u16 reserved;
uint8_t op_code; __u8 op_code;
uint8_t cmd_type; __u8 cmd_type;
uint16_t timeout; __u16 timeout;
uint32_t reg_addr; __u32 reg_addr;
uint32_t reg_data; __u32 reg_data;
uint32_t data_mask; __u32 data_mask;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -316,11 +316,11 @@ struct cam_cmd_conditional_wait {
* @cmd_type : Explains type of command * @cmd_type : Explains type of command
*/ */
struct cam_cmd_unconditional_wait { struct cam_cmd_unconditional_wait {
int16_t delay; __s16 delay;
int16_t reserved; __s16 reserved;
uint8_t op_code; __u8 op_code;
uint8_t cmd_type; __u8 cmd_type;
uint16_t reserved1; __u16 reserved1;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -337,14 +337,14 @@ struct cam_cmd_unconditional_wait {
* *
*/ */
struct cam_csiphy_info { struct cam_csiphy_info {
uint16_t lane_mask; __u16 lane_mask;
uint16_t lane_assign; __u16 lane_assign;
uint8_t csiphy_3phase; __u8 csiphy_3phase;
uint8_t combo_mode; __u8 combo_mode;
uint8_t lane_cnt; __u8 lane_cnt;
uint8_t secure_mode; __u8 secure_mode;
uint64_t settle_time; __u64 settle_time;
uint64_t data_rate; __u64 data_rate;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -355,8 +355,8 @@ struct cam_csiphy_info {
* *
*/ */
struct cam_csiphy_acquire_dev_info { struct cam_csiphy_acquire_dev_info {
uint32_t combo_mode; __u32 combo_mode;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -370,11 +370,11 @@ struct cam_csiphy_acquire_dev_info {
* *
*/ */
struct cam_sensor_acquire_dev { struct cam_sensor_acquire_dev {
uint32_t session_handle; __u32 session_handle;
uint32_t device_handle; __u32 device_handle;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t info_handle; __u64 info_handle;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -387,11 +387,11 @@ struct cam_sensor_acquire_dev {
* *
*/ */
struct cam_sensor_streamon_dev { struct cam_sensor_streamon_dev {
uint32_t session_handle; __u32 session_handle;
uint32_t device_handle; __u32 device_handle;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t info_handle; __u64 info_handle;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -401,10 +401,10 @@ struct cam_sensor_streamon_dev {
* @cmd_type : command buffer type * @cmd_type : command buffer type
*/ */
struct cam_flash_init { struct cam_flash_init {
uint32_t flash_type; __u32 flash_type;
uint8_t reserved; __u8 reserved;
uint8_t cmd_type; __u8 cmd_type;
uint16_t reserved1; __u16 reserved1;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -422,13 +422,13 @@ struct cam_flash_init {
* *
*/ */
struct cam_flash_set_rer { struct cam_flash_set_rer {
uint32_t count; __u32 count;
uint8_t opcode; __u8 opcode;
uint8_t cmd_type; __u8 cmd_type;
uint16_t num_iteration; __u16 num_iteration;
uint32_t led_on_delay_ms; __u32 led_on_delay_ms;
uint32_t led_off_delay_ms; __u32 led_off_delay_ms;
uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS]; __u32 led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -445,12 +445,12 @@ struct cam_flash_set_rer {
* *
*/ */
struct cam_flash_set_on_off { struct cam_flash_set_on_off {
uint32_t count; __u32 count;
uint8_t opcode; __u8 opcode;
uint8_t cmd_type; __u8 cmd_type;
uint16_t reserved; __u16 reserved;
uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS]; __u32 led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
uint64_t time_on_duration_ns; __u64 time_on_duration_ns;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -463,10 +463,10 @@ struct cam_flash_set_on_off {
* *
*/ */
struct cam_flash_query_curr { struct cam_flash_query_curr {
uint16_t reserved; __u16 reserved;
uint8_t opcode; __u8 opcode;
uint8_t cmd_type; __u8 cmd_type;
uint32_t query_current_ma; __u32 query_current_ma;
} __attribute__ ((packed)); } __attribute__ ((packed));
/** /**
@@ -479,10 +479,10 @@ struct cam_flash_query_curr {
* *
*/ */
struct cam_flash_query_cap_info { struct cam_flash_query_cap_info {
uint32_t slot_info; __u32 slot_info;
uint32_t max_current_flash[CAM_FLASH_MAX_LED_TRIGGERS]; __u32 max_current_flash[CAM_FLASH_MAX_LED_TRIGGERS];
uint32_t max_duration_flash[CAM_FLASH_MAX_LED_TRIGGERS]; __u32 max_duration_flash[CAM_FLASH_MAX_LED_TRIGGERS];
uint32_t max_current_torch[CAM_FLASH_MAX_LED_TRIGGERS]; __u32 max_current_torch[CAM_FLASH_MAX_LED_TRIGGERS];
} __attribute__ ((packed)); } __attribute__ ((packed));
#endif #endif

View File

@@ -1,6 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. * Copyright (c) 2016-2018, 2020 The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_SYNC_H__ #ifndef __UAPI_CAM_SYNC_H__
@@ -43,8 +43,8 @@
* @status: Status of the object * @status: Status of the object
*/ */
struct cam_sync_ev_header { struct cam_sync_ev_header {
int32_t sync_obj; __s32 sync_obj;
int32_t status; __s32 status;
}; };
/** /**
@@ -54,8 +54,8 @@ struct cam_sync_ev_header {
* @sync_obj: Sync object returned after creation in kernel * @sync_obj: Sync object returned after creation in kernel
*/ */
struct cam_sync_info { struct cam_sync_info {
char name[64]; char name[64];
int32_t sync_obj; __s32 sync_obj;
}; };
/** /**
@@ -65,8 +65,8 @@ struct cam_sync_info {
* @sync_state: State of the sync object to which it should be signaled * @sync_state: State of the sync object to which it should be signaled
*/ */
struct cam_sync_signal { struct cam_sync_signal {
int32_t sync_obj; __s32 sync_obj;
uint32_t sync_state; __u32 sync_state;
}; };
/** /**
@@ -78,8 +78,8 @@ struct cam_sync_signal {
*/ */
struct cam_sync_merge { struct cam_sync_merge {
__u64 sync_objs; __u64 sync_objs;
uint32_t num_objs; __u32 num_objs;
int32_t merged; __s32 merged;
}; };
/** /**
@@ -90,8 +90,8 @@ struct cam_sync_merge {
* @payload: Pointer to user payload * @payload: Pointer to user payload
*/ */
struct cam_sync_userpayload_info { struct cam_sync_userpayload_info {
int32_t sync_obj; __s32 sync_obj;
uint32_t reserved; __u32 reserved;
__u64 payload[CAM_SYNC_USER_PAYLOAD_SIZE]; __u64 payload[CAM_SYNC_USER_PAYLOAD_SIZE];
}; };
@@ -103,8 +103,8 @@ struct cam_sync_userpayload_info {
* @timeout_ms: Timeout in milliseconds * @timeout_ms: Timeout in milliseconds
*/ */
struct cam_sync_wait { struct cam_sync_wait {
int32_t sync_obj; __s32 sync_obj;
uint32_t reserved; __u32 reserved;
uint64_t timeout_ms; uint64_t timeout_ms;
}; };

View File

@@ -1,14 +1,14 @@
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
/* /*
* Copyright (c) 2019, The Linux Foundation. All rights reserved. * Copyright (c) 2019-2020, The Linux Foundation. All rights reserved.
*/ */
#ifndef __UAPI_CAM_TFE_H__ #ifndef __UAPI_CAM_TFE_H__
#define __UAPI_CAM_TFE_H__ #define __UAPI_CAM_TFE_H__
#include "cam_defs.h" #include <camera/media/cam_defs.h>
#include "cam_isp_tfe.h" #include <camera/media/cam_isp_tfe.h>
#include "cam_cpas.h" #include <camera/media/cam_cpas.h>
/* ISP TFE driver name */ /* ISP TFE driver name */
@@ -93,8 +93,8 @@
* *
*/ */
struct cam_isp_tfe_dev_cap_info { struct cam_isp_tfe_dev_cap_info {
uint32_t hw_type; __u32 hw_type;
uint32_t reserved; __u32 reserved;
struct cam_hw_version hw_version; struct cam_hw_version hw_version;
}; };
@@ -110,11 +110,11 @@ struct cam_isp_tfe_dev_cap_info {
* *
*/ */
struct cam_isp_tfe_query_cap_cmd { struct cam_isp_tfe_query_cap_cmd {
struct cam_iommu_handle device_iommu; struct cam_iommu_handle device_iommu;
struct cam_iommu_handle cdm_iommu; struct cam_iommu_handle cdm_iommu;
int32_t num_dev; __s32 num_dev;
uint32_t reserved; __u32 reserved;
struct cam_isp_tfe_dev_cap_info dev_caps[CAM_ISP_TFE_HW_MAX]; struct cam_isp_tfe_dev_cap_info dev_caps[CAM_ISP_TFE_HW_MAX];
}; };
/* Acquire Device */ /* Acquire Device */
@@ -135,15 +135,15 @@ struct cam_isp_tfe_query_cap_cmd {
* *
*/ */
struct cam_isp_tfe_out_port_info { struct cam_isp_tfe_out_port_info {
uint32_t res_id; __u32 res_id;
uint32_t format; __u32 format;
uint32_t width; __u32 width;
uint32_t height; __u32 height;
uint32_t stride; __u32 stride;
uint32_t comp_grp_id; __u32 comp_grp_id;
uint32_t secure_mode; __u32 secure_mode;
uint32_t wm_mode; __u32 wm_mode;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -185,34 +185,34 @@ struct cam_isp_tfe_out_port_info {
* *
*/ */
struct cam_isp_tfe_in_port_info { struct cam_isp_tfe_in_port_info {
uint32_t res_id; __u32 res_id;
uint32_t lane_type; __u32 lane_type;
uint32_t lane_num; __u32 lane_num;
uint32_t lane_cfg; __u32 lane_cfg;
uint32_t vc; __u32 vc;
uint32_t dt; __u32 dt;
uint32_t format; __u32 format;
uint32_t pix_pattern; __u32 pix_pattern;
uint32_t usage_type; __u32 usage_type;
uint32_t left_start; __u32 left_start;
uint32_t left_end; __u32 left_end;
uint32_t left_width; __u32 left_width;
uint32_t right_start; __u32 right_start;
uint32_t right_end; __u32 right_end;
uint32_t right_width; __u32 right_width;
uint32_t line_start; __u32 line_start;
uint32_t line_end; __u32 line_end;
uint32_t height; __u32 height;
uint32_t batch_size; __u32 batch_size;
uint32_t dsp_mode; __u32 dsp_mode;
uint32_t sensor_width; __u32 sensor_width;
uint32_t sensor_height; __u32 sensor_height;
uint32_t sensor_hbi; __u32 sensor_hbi;
uint32_t sensor_vbi; __u32 sensor_vbi;
uint32_t sensor_fps; __u32 sensor_fps;
uint32_t init_frame_drop; __u32 init_frame_drop;
uint32_t num_out_res; __u32 num_out_res;
struct cam_isp_tfe_out_port_info data[1]; struct cam_isp_tfe_out_port_info data[1];
}; };
/** /**
@@ -227,11 +227,11 @@ struct cam_isp_tfe_in_port_info {
* *
*/ */
struct cam_isp_tfe_resource { struct cam_isp_tfe_resource {
uint32_t resource_id; __u32 resource_id;
uint32_t length; __u32 length;
uint32_t handle_type; __u32 handle_type;
uint32_t reserved; __u32 reserved;
uint64_t res_hdl; __u64 res_hdl;
}; };
/** /**
@@ -250,12 +250,12 @@ struct cam_isp_tfe_resource {
* @reserved: Reserved for alignment * @reserved: Reserved for alignment
*/ */
struct cam_isp_tfe_port_hfr_config { struct cam_isp_tfe_port_hfr_config {
uint32_t resource_type; __u32 resource_type;
uint32_t subsample_pattern; __u32 subsample_pattern;
uint32_t subsample_period; __u32 subsample_period;
uint32_t framedrop_pattern; __u32 framedrop_pattern;
uint32_t framedrop_period; __u32 framedrop_period;
uint32_t reserved; __u32 reserved;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -267,8 +267,8 @@ struct cam_isp_tfe_port_hfr_config {
* @port_hfr_config: HFR configuration for each IO port * @port_hfr_config: HFR configuration for each IO port
*/ */
struct cam_isp_tfe_resource_hfr_config { struct cam_isp_tfe_resource_hfr_config {
uint32_t num_ports; __u32 num_ports;
uint32_t reserved; __u32 reserved;
struct cam_isp_tfe_port_hfr_config port_hfr_config[1]; struct cam_isp_tfe_port_hfr_config port_hfr_config[1];
} __attribute__((packed)); } __attribute__((packed));
@@ -284,10 +284,10 @@ struct cam_isp_tfe_resource_hfr_config {
* *
*/ */
struct cam_isp_tfe_dual_stripe_config { struct cam_isp_tfe_dual_stripe_config {
uint32_t offset; __u32 offset;
uint32_t width; __u32 width;
uint32_t port_id; __u32 port_id;
uint32_t reserved; __u32 reserved;
}; };
/** /**
@@ -299,9 +299,9 @@ struct cam_isp_tfe_dual_stripe_config {
* *
*/ */
struct cam_isp_tfe_dual_config { struct cam_isp_tfe_dual_config {
uint32_t num_ports; __u32 num_ports;
uint32_t reserved; __u32 reserved;
struct cam_isp_tfe_dual_stripe_config stripes[1]; struct cam_isp_tfe_dual_stripe_config stripes[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -320,11 +320,11 @@ struct cam_isp_tfe_dual_config {
* clock and let KMD decide. * clock and let KMD decide.
*/ */
struct cam_isp_tfe_clock_config { struct cam_isp_tfe_clock_config {
uint32_t usage_type; __u32 usage_type;
uint32_t num_rdi; __u32 num_rdi;
uint64_t left_pix_hz; __u64 left_pix_hz;
uint64_t right_pix_hz; __u64 right_pix_hz;
uint64_t rdi_hz[1]; __u64 rdi_hz[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -335,8 +335,8 @@ struct cam_isp_tfe_clock_config {
* @csi_phy_clock Phy clock valid if tpg is selected * @csi_phy_clock Phy clock valid if tpg is selected
*/ */
struct cam_isp_tfe_csid_clock_config { struct cam_isp_tfe_csid_clock_config {
uint64_t csid_clock; __u64 csid_clock;
uint64_t phy_clock; __u64 phy_clock;
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -347,9 +347,9 @@ struct cam_isp_tfe_csid_clock_config {
* @axi_path Per path vote info * @axi_path Per path vote info
*/ */
struct cam_isp_tfe_bw_config_v2 { struct cam_isp_tfe_bw_config_v2 {
uint32_t usage_type; __u32 usage_type;
uint32_t num_paths; __u32 num_paths;
struct cam_axi_per_path_bw_vote axi_path[1]; struct cam_axi_per_path_bw_vote axi_path[1];
} __attribute__((packed)); } __attribute__((packed));
/** /**
@@ -366,14 +366,14 @@ struct cam_isp_tfe_bw_config_v2 {
* structure * structure
*/ */
struct cam_isp_tfe_acquire_hw_info { struct cam_isp_tfe_acquire_hw_info {
uint16_t common_info_version; __u16 common_info_version;
uint16_t common_info_size; __u16 common_info_size;
uint32_t common_info_offset; __u32 common_info_offset;
uint32_t num_inputs; __u32 num_inputs;
uint32_t input_info_version; __u32 input_info_version;
uint32_t input_info_size; __u32 input_info_size;
uint32_t input_info_offset; __u32 input_info_offset;
uint64_t data; __u64 data;
}; };
#define CAM_TFE_ACQUIRE_COMMON_VER0 0x1000 #define CAM_TFE_ACQUIRE_COMMON_VER0 0x1000