diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/media/nvc_focus.h | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/include/media/nvc_focus.h b/include/media/nvc_focus.h index c6ff1fa792c1..e37d897d8323 100644 --- a/include/media/nvc_focus.h +++ b/include/media/nvc_focus.h @@ -33,6 +33,8 @@ #define NVC_FOCUS_CAP_VER2 2 #define NVC_FOCUS_CAP_VER 2 /* latest version */ +#define AF_POS_INVALID_VALUE INT_MAX + enum nvc_focus_sts { NVC_FOCUS_STS_UNKNOWN = 1, NVC_FOCUS_STS_NO_DEVICE, @@ -52,11 +54,13 @@ struct nvc_focus_nvc { struct nvc_focus_cap { __u32 version; - __u32 actuator_range; + __s32 actuator_range; __u32 settle_time; - __u32 focus_macro; - __u32 focus_hyper; - __u32 focus_infinity; + __s32 focus_macro; + __s32 focus_hyper; + __s32 focus_infinity; + __u32 slew_rate; + __u32 position_translate; } __packed; @@ -66,7 +70,7 @@ struct nvc_focus_cap { struct nv_focuser_set_dist_pairs { __s32 fdn; __s32 distance; -}; +} __packed; struct nv_focuser_set { __s32 posture; @@ -78,23 +82,26 @@ struct nv_focuser_set { __s32 macro_offset; __s32 inf_offset; __u32 num_dist_pairs; - struct nv_focuser_set_dist_pairs dist_pair[NV_FOCUSER_SET_DISTANCE_PAIR]; -}; + struct nv_focuser_set_dist_pairs + dist_pair[NV_FOCUSER_SET_DISTANCE_PAIR]; +} __packed; struct nv_focuser_config { __u32 focal_length; __u32 fnumber; __u32 max_aperture; - __u32 actuator_range; + __s32 actuator_range; __u32 settle_time; + __u32 range_ends_reversed; __s32 pos_working_low; __s32 pos_working_high; __s32 pos_actual_low; __s32 pos_actual_high; __u32 slew_rate; __u32 circle_of_confusion; + __u32 num_focuser_sets; struct nv_focuser_set focuser_set[NV_FOCUSER_SET_MAX]; -}; +} __packed; #endif /* __NVC_FOCUS_H__ */ |