.. | .. |
---|
4 | 4 | #ifndef RK_VCM_HEAD_H |
---|
5 | 5 | #define RK_VCM_HEAD_H |
---|
6 | 6 | |
---|
| 7 | +#include <linux/types.h> |
---|
| 8 | +#include <linux/time_types.h> |
---|
| 9 | + |
---|
7 | 10 | #define RK_VCM_HEAD_VERSION KERNEL_VERSION(0, 0x02, 0x0) |
---|
8 | 11 | /* |
---|
9 | 12 | * Focus position values: |
---|
.. | .. |
---|
11 | 14 | * where 64 is the setting for infinity and 0 for macro |
---|
12 | 15 | */ |
---|
13 | 16 | #define VCMDRV_MAX_LOG 64U |
---|
| 17 | +#define VCMDRV_SETZOOM_MAXCNT 300U |
---|
14 | 18 | |
---|
15 | 19 | #define OF_CAMERA_VCMDRV_MAX_CURRENT "rockchip,vcm-max-current" |
---|
16 | 20 | #define OF_CAMERA_VCMDRV_START_CURRENT "rockchip,vcm-start-current" |
---|
.. | .. |
---|
19 | 23 | #define OF_CAMERA_VCMDRV_DLC_ENABLE "rockchip,vcm-dlc-enable" |
---|
20 | 24 | #define OF_CAMERA_VCMDRV_MCLK "rockchip,vcm-mclk" |
---|
21 | 25 | #define OF_CAMERA_VCMDRV_T_SRC "rockchip,vcm-t-src" |
---|
22 | | -#define VCMDRV_SETZOOM_MAXCNT 300U |
---|
| 26 | +#define OF_CAMERA_VCMDRV_T_DIV "rockchip,vcm-t-div" |
---|
| 27 | +#define OF_CAMERA_VCMDRV_ADVANCED_MODE "rockchip,vcm-adcanced-mode" |
---|
| 28 | +#define OF_CAMERA_VCMDRV_SAC_MODE "rockchip,vcm-sac-mode" |
---|
| 29 | +#define OF_CAMERA_VCMDRV_SAC_TIME "rockchip,vcm-sac-time" |
---|
| 30 | +#define OF_CAMERA_VCMDRV_PRESC "rockchip,vcm-prescl" |
---|
| 31 | +#define OF_CAMERA_VCMDRV_NRC_EN "rockchip,vcm-nrc-en" |
---|
| 32 | +#define OF_CAMERA_VCMDRV_NRC_MODE "rockchip,vcm-nrc-mode" |
---|
| 33 | +#define OF_CAMERA_VCMDRV_NRC_PRESET "rockchip,vcm-nrc-preset" |
---|
| 34 | +#define OF_CAMERA_VCMDRV_NRC_INFL "rockchip,vcm-nrc-infl" |
---|
| 35 | +#define OF_CAMERA_VCMDRV_NRC_TIME "rockchip,vcm-nrc-time" |
---|
| 36 | +#define VCMDRV_SETZOOM_MAXCNT 300U |
---|
23 | 37 | |
---|
24 | 38 | #define RK_VIDIOC_VCM_TIMEINFO \ |
---|
25 | 39 | _IOR('V', BASE_VIDIOC_PRIVATE + 0, struct rk_cam_vcm_tim) |
---|
.. | .. |
---|
61 | 75 | #define RK_VIDIOC_MODIFY_POSITION \ |
---|
62 | 76 | _IOW('V', BASE_VIDIOC_PRIVATE + 16, struct rk_cam_modify_pos) |
---|
63 | 77 | |
---|
64 | | -#ifdef CONFIG_COMPAT |
---|
| 78 | +#define RK_VIDIOC_SET_VCM_MAX_LOGICALPOS \ |
---|
| 79 | + _IOW('V', BASE_VIDIOC_PRIVATE + 17, unsigned int) |
---|
| 80 | + |
---|
65 | 81 | #define RK_VIDIOC_COMPAT_VCM_TIMEINFO \ |
---|
66 | 82 | _IOR('V', BASE_VIDIOC_PRIVATE + 0, struct rk_cam_compat_vcm_tim) |
---|
67 | 83 | #define RK_VIDIOC_COMPAT_IRIS_TIMEINFO \ |
---|
.. | .. |
---|
70 | 86 | _IOR('V', BASE_VIDIOC_PRIVATE + 2, struct rk_cam_compat_vcm_tim) |
---|
71 | 87 | #define RK_VIDIOC_COMPAT_ZOOM1_TIMEINFO \ |
---|
72 | 88 | _IOR('V', BASE_VIDIOC_PRIVATE + 11, struct rk_cam_compat_vcm_tim) |
---|
73 | | -#endif |
---|
74 | 89 | |
---|
75 | 90 | struct rk_cam_modify_pos { |
---|
76 | | - s32 focus_pos; |
---|
77 | | - s32 zoom_pos; |
---|
78 | | - s32 zoom1_pos; |
---|
| 91 | + __s32 focus_pos; |
---|
| 92 | + __s32 zoom_pos; |
---|
| 93 | + __s32 zoom1_pos; |
---|
79 | 94 | }; |
---|
80 | 95 | |
---|
81 | 96 | struct rk_cam_set_focus { |
---|
82 | | - bool is_need_reback; |
---|
83 | | - s32 focus_pos; |
---|
| 97 | + _Bool is_need_reback; |
---|
| 98 | + __s32 focus_pos; |
---|
84 | 99 | }; |
---|
85 | 100 | |
---|
86 | 101 | struct rk_cam_zoom_pos { |
---|
87 | | - s32 zoom_pos; |
---|
88 | | - s32 focus_pos; |
---|
| 102 | + __s32 zoom_pos; |
---|
| 103 | + __s32 focus_pos; |
---|
89 | 104 | }; |
---|
90 | 105 | |
---|
91 | 106 | struct rk_cam_set_zoom { |
---|
92 | | - bool is_need_zoom_reback; |
---|
93 | | - bool is_need_focus_reback; |
---|
94 | | - u32 setzoom_cnt; |
---|
| 107 | + _Bool is_need_zoom_reback; |
---|
| 108 | + _Bool is_need_focus_reback; |
---|
| 109 | + __u32 setzoom_cnt; |
---|
95 | 110 | struct rk_cam_zoom_pos zoom_pos[VCMDRV_SETZOOM_MAXCNT]; |
---|
96 | 111 | }; |
---|
97 | 112 | |
---|
98 | 113 | struct rk_cam_vcm_tim { |
---|
99 | | - struct timeval vcm_start_t; |
---|
100 | | - struct timeval vcm_end_t; |
---|
| 114 | + struct __kernel_old_timeval vcm_start_t; |
---|
| 115 | + struct __kernel_old_timeval vcm_end_t; |
---|
101 | 116 | }; |
---|
102 | 117 | |
---|
103 | | -#ifdef CONFIG_COMPAT |
---|
104 | | -struct rk_cam_compat_vcm_tim { |
---|
105 | | - struct compat_timeval vcm_start_t; |
---|
106 | | - struct compat_timeval vcm_end_t; |
---|
| 118 | +#ifndef __kernel_old_timeval32 |
---|
| 119 | +struct __kernel_old_timeval32 { |
---|
| 120 | + __s32 tv_sec; |
---|
| 121 | + __s32 tv_usec; |
---|
107 | 122 | }; |
---|
108 | 123 | #endif |
---|
109 | 124 | |
---|
| 125 | +struct rk_cam_compat_vcm_tim { |
---|
| 126 | + struct __kernel_old_timeval32 vcm_start_t; |
---|
| 127 | + struct __kernel_old_timeval32 vcm_end_t; |
---|
| 128 | +}; |
---|
| 129 | + |
---|
110 | 130 | struct rk_cam_vcm_cfg { |
---|
111 | 131 | int start_ma; |
---|
112 | 132 | int rated_ma; |
---|