From: Jiyoung Shin <idon.shin@samsung.com> Date: Fri, 1 Jun 2012 23:08:20 +0000 (-0700) Subject: hardware: samsung_slsi: include: update camera header file X-Git-Tag: cm-10.1-M1~332 X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=48bac8e5ed7f9f782d18774414cdc706f9e5b56a;p=GitHub%2FLineageOS%2Fandroid_hardware_samsung_slsi_exynos5.git hardware: samsung_slsi: include: update camera header file for stabilization, update header file Change-Id: I9e2accb97292dd68e49c465b781c8f010926437d Signed-off-by: Jiyoung Shin <idon.shin@samsung.com> --- diff --git a/include/ExynosCamera.h b/include/ExynosCamera.h index 7b5c36b..0d28021 100644 --- a/include/ExynosCamera.h +++ b/include/ExynosCamera.h @@ -71,9 +71,12 @@ #include "ExynosExif.h" #include "exynos_v4l2.h" +#define ALIGN(x, a) (((x) + (a) - 1) & ~((a) - 1)) namespace android { #define GAIA_FW_BETA 1 +/* FIXME: This is for test. We remove this after test */ +#define USE_DIGITAL_ZOOM //! struct for Camera sensor information /*! @@ -89,8 +92,6 @@ public: int previewColorFormat; int videoW; int videoH; - int prefVideoPreviewW; - int prefVideoPreviewH; int videoColorFormat; int pictureW; int pictureH; @@ -189,6 +190,12 @@ public: ExynosCameraInfoS5K4E5(); }; +struct ExynosCameraInfoS5K3H7 : public ExynosCameraInfo +{ +public: + ExynosCameraInfoS5K3H7(); +}; + //! ExynosCamera /*! * \ingroup Exynos @@ -236,7 +243,7 @@ public: FLASH_MODE_TORCH = (1 << 4), //!< \n }; - //! Flash mode + //! Focus mode enum { FOCUS_MODE_AUTO = (1 << 0), //!< \n FOCUS_MODE_INFINITY = (1 << 1), //!< \n @@ -532,9 +539,6 @@ public: //! Gets the supported video frame sizes that can be used by MediaRecorder. bool getSupportedVideoSizes(int *w, int *h); - //! Gets the preferred Preview size for the video recording. - bool getPreferredPreivewSizeForVideo(int *w, int *h); - //! Gets the supported white balance. int getSupportedWhiteBalance(void); @@ -637,6 +641,9 @@ public: //! Sets metering areas.(Using ExynosRect2) bool setMeteringAreas(int num, ExynosRect2 *rect2s, int *weights); + //! Cancel metering areas. + bool cancelMeteringAreas(); + //! Sets the image format for pictures. bool setPictureFormat(int colorFormat); @@ -712,6 +719,11 @@ private: devInfo m_gscVideoDev; devInfo m_gscPictureDev; +#ifdef USE_DIGITAL_ZOOM + devInfo m_gscBayerDev; + devInfo *m_bayerDev; +#endif + devInfo *m_previewDev; devInfo *m_videoDev; devInfo *m_pictureDev; @@ -726,6 +738,9 @@ private: char m_cameraName[32]; bool m_internalISP; bool m_touchAFMode; + bool m_isTouchMetering; + + bool m_focusIdle; // media controller variable struct media_device *m_media; @@ -738,6 +753,7 @@ private: struct media_entity *m_ispSensorEntity; struct media_entity *m_ispFrontEntity; struct media_entity *m_ispBackEntity; + struct media_entity *m_ispBayerEntity; struct media_entity *m_ispScalercEntity; struct media_entity *m_ispScalerpEntity; struct media_entity *m_isp3dnrEntity; @@ -779,6 +795,11 @@ private: // Additional API. /////////////////////////////////////////////////// public: + //! Focus mode + enum { + FOCUS_MODE_CONTINUOUS_PICTURE_MACRO = (1 << 8), //!< \n + }; + //! Metering enum { METERING_MODE_AVERAGE = (1 << 0), //!< \n diff --git a/include/videodev2_exynos_camera.h b/include/videodev2_exynos_camera.h index 596407f..c455810 100644 --- a/include/videodev2_exynos_camera.h +++ b/include/videodev2_exynos_camera.h @@ -931,9 +931,10 @@ enum v4l2_focusmode { FOCUS_MODE_FACEDETECT_DEFAULT, FOCUS_MODE_INFINITY, FOCUS_MODE_FIXED, - FOCUS_MODE_CONTINOUS, - FOCUS_MODE_CONTINOUS_PICTURE, - FOCUS_MODE_CONTINOUS_VIDEO, + FOCUS_MODE_CONTINUOUS, + FOCUS_MODE_CONTINUOUS_PICTURE, + FOCUS_MODE_CONTINUOUS_PICTURE_MACRO, + FOCUS_MODE_CONTINUOUS_VIDEO, FOCUS_MODE_TOUCH, FOCUS_MODE_MAX, FOCUS_MODE_DEFAULT = (1 << 8), @@ -1044,6 +1045,12 @@ typedef enum { #define V4L2_CID_CAMERA_BUSFREQ_LOCK (V4L2_CID_PRIVATE_BASE+125) #define V4L2_CID_CAMERA_BUSFREQ_UNLOCK (V4L2_CID_PRIVATE_BASE+126) +#define V4L2_CID_CAMERA_FACE_ZOOM (V4L2_CID_PRIVATE_BASE + 132) +enum v4l2_face_zoom { + FACE_ZOOM_STOP = 0, + FACE_ZOOM_START +}; + /* control for post processing block in ISP */ #define V4L2_CID_CAMERA_SET_ODC (V4L2_CID_PRIVATE_BASE+127) enum set_odc_mode {