On 02/26/2012 05:57 PM, Sylwester Nawrocki wrote: > rather painful in use. After changing V4L2_CID_AUTO_FOCUS_SELECTION to > > #define V4L2_CID_AUTO_FOCUS_AREA (V4L2_CID_CAMERA_CLASS_BASE+23) Oops, of course each occurence of "SELECTION" below should be replaced with "AREA". Sorry for the confusion. > enum v4l2_auto_focus_selection { > V4L2_AUTO_FOCUS_SELECTION_ALL = 0, > V4L2_AUTO_FOCUS_SELECTION_SPOT = 1, > V4L2_AUTO_FOCUS_SELECTION_RECTANGLE = 2, > }; > > I tried use them with the M-5MOLS sensor driver where there is only > one register for setting following automatic focus modes: > > NORMAL AUTO (single-shot), > MACRO, > INFINITY, > SPOT, > FACE_DETECTION > > The issue is that when V4L2_CID_AUTO_FOCUS_AREA is set to for example > V4L2_AUTO_FOCUS_SELECTION_SPOT, none of the menu entries of > V4L2_CID_AUTO_FOCUS_DISTANCE is valid. > > So it would really be better to use single control for automatic focus > mode. A private control could handle that. But there will be more than > one sensor driver needing such a control, so I thought about an > additional header, e.g. samsung_camera.h in include/linux/ that would > define reguired control IDs and menus in the camera class private id > range. > > What do you think about it ? > > >> +#define V4L2_CID_AUTO_FOCUS_X_POSITION (V4L2_CID_CAMERA_CLASS_BASE+24) >> +#define V4L2_CID_AUTO_FOCUS_Y_POSITION (V4L2_CID_CAMERA_CLASS_BASE+25) > ... > > -- > > Regards, > Sylwester -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html