diff options
author | Anton Kondratenko <akondratenko@nvidia.com> | 2014-03-12 11:15:16 -0700 |
---|---|---|
committer | Thomas Cherry <tcherry@nvidia.com> | 2014-04-03 18:28:08 -0700 |
commit | f6df6fd7409b89d1a283aa6a142bf978d771ba2b (patch) | |
tree | a0ef6209c2195458faa1d65af3886db1cb324124 /Documentation | |
parent | 928a2479e7e2018897377e7b63a9a6912894da7a (diff) |
Documentation:tegra: tegra camera ioctls
Provide initial documentation for tegra
camera ioctls
Bug 1466413
Change-Id: I5d460ec3e98f10ea03f0f0a452d20e93d5c19c7a
Signed-off-by: Anton Kondratenko <akondratenko@nvidia.com>
Reviewed-on: http://git-master/r/390380
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Thomas Cherry <tcherry@nvidia.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/ioctl/ov5693.txt | 207 | ||||
-rw-r--r-- | Documentation/ioctl/tegra_camera.txt | 69 | ||||
-rw-r--r-- | Documentation/ioctl/tegra_vi.txt | 27 |
3 files changed, 303 insertions, 0 deletions
diff --git a/Documentation/ioctl/ov5693.txt b/Documentation/ioctl/ov5693.txt new file mode 100644 index 000000000000..eab2166b33c8 --- /dev/null +++ b/Documentation/ioctl/ov5693.txt @@ -0,0 +1,207 @@ +OV5693_IOCTL_SET_MODE: set sensor mode +usage: + +struct ov5693_mode { + int res_x; + int res_y; + int fps; + __u32 frame_length; + __u32 coarse_time; + __u32 coarse_time_short; + __u16 gain; + __u8 hdr_en; +}; + + struct ov5693_mode mode; + ioctl(fd, OV5693_IOCTL_SET_MODE , &mode); + + inputs: + + parameters of the mode to set + + outputs: none + + error return: + + EINVAL - out of range input data + + +OV5693_IOCTL_GET_STATUS: get module status +usage: + + u8 status; + ioctl(fd, OV5693_IOCTL_GET_STATUS , &status); + + inputs: + + outputs: always returns 0 + + error return: + + +OV5693_IOCTL_SET_GROUP_HOLD: set group parameters +usage: + +struct ov5693_ae { + __u32 frame_length; + __u8 frame_length_enable; + __u32 coarse_time; + __u32 coarse_time_short; + __u8 coarse_time_enable; + __s32 gain; + __u8 gain_enable; +}; + + struct ov5693_ae ar; + ioctl(fd, OV5693_IOCTL_SET_GROUP_HOLD , &ae); + + inputs: + + outputs: always returns 0 + + error return: + + +OV5693_IOCTL_SET_FRAME_LENGTH: set sensor frame length +usage: + + u32 len; + ioctl(fd, OV5693_IOCTL_SET_FRAME_LENGTH , len); + + inputs: + + sensor frame length + + outputs: none + + error return: + + +OV5693_IOCTL_SET_COARSE_TIME: set coarse time +usage: + + u32 param; + ioctl(fd, OV5693_IOCTL_SET_COARSE_TIME , param); + + inputs: + + coarse time + + outputs: none + + error return: + + +OV5693_IOCTL_SET_HDR_COARSE_TIME: set hdr coarse time +usage: + +struct ov5693_hdr { + __u32 coarse_time_long; + __u32 coarse_time_short; +}; + + struct ov5693_hdr param; + ioctl(fd, OV5693_IOCTL_SET_HDR_COARSE_TIME , ¶m); + + inputs: + + coarse time + + outputs: none + + error return: + + +OV5693_IOCTL_SET_GAIN: set gain value +usage: + + u32 gain; + ioctl(fd, OV5693_IOCTL_SET_GAIN , gain); + + inputs: + + value of the gain to set + + outputs: none + + error return: + + +OV5693_IOCTL_GET_FUSEID: get fuse id +usage: + +struct nvc_fuseid { + __u32 size; + __u8 data[16]; +}; + + struct nvc_fuseid fuseid; + ioctl(fd, OV5693_IOCTL_GET_FUSEID , &fuseid); + + inputs: none + + outputs: fuse id + + error return: + + +OV5693_IOCTL_READ_OTP_BANK: read otp bank data +usage: + +struct ov5693_otp_bank { + __u32 id; + __u8 buf[16]; +}; + + struct ov5693_otp_bank data; + ioctl(fd, OV5693_IOCTL_READ_OTP_BANK , &data); + + inputs: none + + outputs: otp bank data + + error return: + + +OV5693_IOCTL_SET_CAL_DATA: write calibration data +usage: + +struct ov5693_cal_data { + int loaded; + int rg_ratio; + int bg_ratio; + int rg_ratio_typical; + int bg_ratio_typical; + __u8 lenc[62]; +}; + + struct ov5693_cal_data data; + ioctl(fd, OV5693_IOCTL_SET_CAL_DATA , &data); + + inputs: calibration data + + outputs: none + + error return: + + +OV5693_IOCTL_GET_CAL_DATA: read calibration data +usage: + +struct ov5693_cal_data { + int loaded; + int rg_ratio; + int bg_ratio; + int rg_ratio_typical; + int bg_ratio_typical; + __u8 lenc[62]; +}; + + struct ov5693_cal_data data; + ioctl(fd, OV5693_IOCTL_GET_CAL_DATA , &data); + + inputs: none + + outputs: calibration data + + error return: diff --git a/Documentation/ioctl/tegra_camera.txt b/Documentation/ioctl/tegra_camera.txt new file mode 100644 index 000000000000..77dd66f404bb --- /dev/null +++ b/Documentation/ioctl/tegra_camera.txt @@ -0,0 +1,69 @@ +TEGRA_CAMERA_IOCTL_ENABLE: enable clock +usage: + uint clock_id; + ioctl(fd, TEGRA_CAMERA_IOCTL_ENABLE , &clock_id); + + inputs: + + Clock ID + + outputs: none + + error return: + + notes: a dummy ioctl for backward compatibility. Doesn't do anything. + + + +TEGRA_CAMERA_IOCTL_DISABLE: disable clock +usage: + uint clock_id; + ioctl(fd, TEGRA_CAMERA_IOCTL_DISABLE , &clock_id); + + inputs: + + Clock ID + + outputs: none + + error return: + + notes: a dummy ioctl for backward compatibility. Doesn't do anything. + +TEGRA_CAMERA_IOCTL_RESET: reset clock +usage: + uint clock_id; + ioctl(fd, TEGRA_CAMERA_IOCTL_RESET , &clock_id); + + inputs: + + Clock ID + + outputs: none + + error return: + + notes: a dummy ioctl for backward compatibility. Doesn't do anything. + + +TEGRA_CAMERA_IOCTL_CLK_SET_RATE: set clock rate + +struct tegra_camera_clk_info { + uint id; + uint clk_id; + unsigned long rate; + uint flag; +}; + +usage: + tegra_camera_clk_info clock_info; + ioctl(fd, TEGRA_CAMERA_IOCTL_CLK_SET_RATE , &clock_info); + + inputs: + + Information about the clock and new rate + + outputs: none + + error return: + EINVAL - out of range input data diff --git a/Documentation/ioctl/tegra_vi.txt b/Documentation/ioctl/tegra_vi.txt new file mode 100644 index 000000000000..d15dd6792dc8 --- /dev/null +++ b/Documentation/ioctl/tegra_vi.txt @@ -0,0 +1,27 @@ +NVHOST_VI_IOCTL_ENABLE_TPG enable TPG +usage: + uint enable; + ioctl(fd, NVHOST_VI_IOCTL_ENABLE_TPG, &enable); + + inputs: + + Enable/disable TPG + + outputs: none + + error return: + EINVAL Couldn't get clocks value + +NVHOST_VI_IOCTL_SET_EMC_INFO set memory controller bandwith info +usage: + uint vi_bw; + ioctl(fd, NVHOST_VI_IOCTL_SET_EMC_INFO , &vi_bw); + + inputs: + + Provide EMC bandwith info + + outputs: none + + error return: + ENOMEM Failed to set la for this bandwith
\ No newline at end of file |