Loading drivers/media/platform/msm/Kconfig +3 −3 Original line number Diff line number Diff line Loading @@ -34,13 +34,13 @@ config MSMB_CAMERA_DEBUG Enable printk() debug for msm camera 2.0 if MSMB_CAMERA if SEC_FORTUNA_PROJECT source "drivers/media/platform/msm/camera_v2_fortuna/Kconfig" if SEC_J5_PROJECT || SEC_J5N_PROJECT || SEC_J5X_PROJECT source "drivers/media/platform/msm/camera_v2_j5/Kconfig" endif # SEC_J5_PROJECT if SEC_GTEL_PROJECT || SEC_GTES_PROJECT source "drivers/media/platform/msm/camera_v2_gte/Kconfig" endif # SEC_GTEL_PROJECT if !(SEC_GTEL_PROJECT || SEC_GTES_PROJECT || SEC_FORTUNA_PROJECT) if !(SEC_GTEL_PROJECT || SEC_GTES_PROJECT || SEC_J5_PROJECT || SEC_J5N_PROJECT || SEC_J5X_PROJECT) source "drivers/media/platform/msm/camera_v2/Kconfig" endif # SEC_FORTUNA_PROJECT endif # MSMB_CAMERA Loading drivers/media/platform/msm/Makefile +6 −2 Original line number Diff line number Diff line Loading @@ -7,8 +7,12 @@ obj-$(CONFIG_MSM_VIDC_V4L2) += vidc/ obj-y += broadcast/ obj-$(CONFIG_DVB_MPQ) += dvb/ ifeq ($(CONFIG_SEC_FORTUNA_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_fortuna/ ifeq ($(CONFIG_SEC_J5_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_J5N_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_J5X_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_GTEL_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_gte/ else ifeq ($(CONFIG_SEC_GTES_PROJECT),y) Loading drivers/media/platform/msm/camera_v2/Kconfig +27 −80 Original line number Diff line number Diff line Loading @@ -128,12 +128,6 @@ config MSM_ISPIF_V1 of any CID of MSM_CSI22_HEADER can be routed to of pixel or raw data interface in VFE. config SENSOR_8_BPP bool "8 bits per pixel YUV sensor output" depends on MSMB_CAMERA ---help--- 8 bits per pixel YUV sensor output. config IMX134 bool "Sensor IMX134 (BAYER 8M)" depends on MSMB_CAMERA Loading @@ -152,21 +146,12 @@ config IMX132 snapshot config = 1920 x 1080 at 30 fps, Video HDR support. config SR352 bool "Sensor for front camera" depends on MSMB_CAMERA default n ---help--- Siliconfile 3MP sensor, Rear sensor. config SR130PC20 bool "Sensor for front camera" config IMX219 bool "Sensor IMX219 (BAYER 8M)" depends on MSMB_CAMERA default n ---help--- Siliconfile 1.3MP sensor, Front sensor. Sony 8 MP Bayer Sensor with auto focus, uses 4 mipi lanes full resolution @30fps. config OV9724 bool "Sensor OV9724 (BAYER 2M)" Loading Loading @@ -219,6 +204,14 @@ config SR200PC20 ---help--- Siliconfile 2.0MP sensor, Front sensor. config SR030PC50 bool "Sensor for front camera" depends on MSMB_CAMERA default n ---help--- Siliconfile VGA sensor, Front sensor. config SR544 bool "Sensor for back camera" depends on MSMB_CAMERA Loading @@ -245,6 +238,15 @@ config GC0339 Preview and snapshot resolution shall be 640*480 at 30 fps, It does not support auto focus. config GC0310 bool "Sensor GC0310 (YUV .3M)" depends on MSMB_CAMERA ---help--- 0310 is a Galaxycore .3 MP YUV Sensor. It supports 1 mipi lane. Preview and snapshot resolution shall be 640*480 at 30 fps, It does not support auto focus. config OV8825 bool "OmniVision OV8825 (BAYER 8MP)" depends on MSMB_CAMERA Loading Loading @@ -315,13 +317,6 @@ config S5K5E3YX S.LSI. 5MP Bayer Sensor with auto focus, uses 2 mipi lanes full resolution @30fps config SR552 bool "Sensor SR552 (BAYER 5M)" depends on MSMB_CAMERA ---help--- S.LSI. 5MP Bayer Sensor with auto focus, uses 2 mipi lanes full resolution @30fps config S5K4ECGX bool "Sensor s5k4ecgx (SOC 5MP)" depends on MSMB_CAMERA Loading Loading @@ -371,38 +366,12 @@ config CAM_USE_EXT_VANA_GPIO depends on MSMB_CAMERA ---help--- Board use external LDO controlled by GPIO. config CAM_DISABLE_LPM_MODE bool "Camera is Disabled in LPM mode." depends on NFC_PN547 default n ---help--- Because NFC HW limitation which should not be turned on L16. config CAM_PN547_PVDD_EN_CONTROL bool "PN547 NFC PVDD EN CONTROL" depends on NFC_PN547 default n help SAMSUNG PN547 NFC PVDD EN CONTROL feature. This feature provides support for NXP PN547 products. You should select this feature if your NFC product uses pvdd en pin. Say Y here to compile support for NXP PN547 PVDD EN CONTROL feature into the kernel. config SW_LANDING_FOR_MULTI_TASKING bool "SW Landing is applied during multi tasking" depends on ACTUATOR default n help If Camera exit while multi tasking with call, actuator makes big noise. SW landing is applied during multi tasking only. config CAMERA_SYSFS_V2 bool "CAMERA SYS" config SR130PC20 bool "Sensor s5k4e1 (SOC 1.3MP)" depends on MSMB_CAMERA ---help--- CAMERA SYS. Samsung 1.3 MP SOC Sensor. It uses 1 mipi lanes, Does not support auto focus, and flash config DB8221A bool "Sensor for front camera" Loading @@ -412,30 +381,8 @@ config DB8221A Dongbu HiTek 2.0MP sensor, Front sensor. config OIS tristate "External ois support" depends on MSMB_CAMERA default n ---help--- Enables support for external ois module. config CAM_DUAL_POWER_SEQ bool "Dual power up sequence enable" depends on MSMB_CAMERA ---help--- This flag will allow us to write dual power up sequence. config FRONT_FLASH bool "Rear LEd and Front LED both USING" depends on MSMB_CAMERA ---help--- ONLY for Front FLASH Model using. Front LED for LM3632 or KTD2692 Rear LED SM5703. config EEPROM_CAMERA_QUP_I2C bool "Read EEPROM data in camera module" depends on MSMB_CAMERA default n ---help--- If the eeprom data in camera module is not read successfully, it causes actuator to move lens to 0x00 position, which causes actuator noise. drivers/media/platform/msm/camera_v2/camera/camera.c +8 −21 Original line number Diff line number Diff line Loading @@ -35,8 +35,6 @@ #define fh_to_private(__fh) \ container_of(__fh, struct camera_v4l2_private, fh) extern struct task_struct *qdaemon_task; #define QDAEMON "mm-qcamera" struct camera_v4l2_private { struct v4l2_fh fh; unsigned int stream_id; Loading Loading @@ -210,9 +208,9 @@ static int camera_v4l2_reqbufs(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_reqbufs(&sp->vb2_q, req); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading @@ -233,9 +231,9 @@ static int camera_v4l2_qbuf(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_qbuf(&sp->vb2_q, pb); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading @@ -250,9 +248,9 @@ static int camera_v4l2_dqbuf(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_dqbuf(&sp->vb2_q, pb, filep->f_flags & O_NONBLOCK); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading Loading @@ -561,7 +559,7 @@ static int camera_v4l2_open(struct file *filep) if (!atomic_read(&pvdev->opened)) { pm_stay_awake(&pvdev->vdev->dev); #if !defined(CONFIG_ARCH_MSM8939) && !defined(CONFIG_ARCH_MSM8929) #ifndef CONFIG_ARCH_MSM8939 /* Disable power collapse latency */ msm_pm_qos_update_request(CAMERA_DISABLE_PC_LATENCY); #endif Loading Loading @@ -589,17 +587,6 @@ static int camera_v4l2_open(struct file *filep) if (rc < 0) { pr_err("%s : posting of NEW_SESSION event failed\n", __func__); if (qdaemon_task) { if (!strncmp(qdaemon_task->comm, QDAEMON, strlen(QDAEMON))) { pr_err("%s, kill daemon", __func__); send_sig(SIGKILL, qdaemon_task, 0); pr_err("%s, kill this", __func__); send_sig(SIGKILL, current, 0); } else pr_err("%s, now (%s : %d)", __func__, qdaemon_task->comm, task_pid_nr(qdaemon_task)); } else pr_err("error!! can't look for daemon"); pr_err("%s : Line %d rc %d\n", __func__, __LINE__, rc); goto post_fail; } Loading Loading @@ -687,7 +674,7 @@ static int camera_v4l2_close(struct file *filep) * and application crashes */ msm_destroy_session(pvdev->vdev->num); #if !defined(CONFIG_ARCH_MSM8939) && !defined(CONFIG_ARCH_MSM8929) #ifndef CONFIG_ARCH_MSM8939 /* Enable power collapse latency */ msm_pm_qos_update_request(CAMERA_ENABLE_PC_LATENCY); #endif Loading drivers/media/platform/msm/camera_v2/isp/msm_buf_mgr.c +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ static int msm_isp_prepare_v4l2_buf(struct msm_isp_buf_mgr *buf_mgr, } mapped_info->paddr += v4l2_buf->m.planes[i].data_offset; CDBG("%s: plane: %d addr:%lu\n", __func__, i, (unsigned long int)(mapped_info->paddr)); __func__, i, mapped_info->paddr); buf_pending = kzalloc(sizeof(struct buffer_cmd), GFP_ATOMIC); if (!buf_pending) { Loading Loading
drivers/media/platform/msm/Kconfig +3 −3 Original line number Diff line number Diff line Loading @@ -34,13 +34,13 @@ config MSMB_CAMERA_DEBUG Enable printk() debug for msm camera 2.0 if MSMB_CAMERA if SEC_FORTUNA_PROJECT source "drivers/media/platform/msm/camera_v2_fortuna/Kconfig" if SEC_J5_PROJECT || SEC_J5N_PROJECT || SEC_J5X_PROJECT source "drivers/media/platform/msm/camera_v2_j5/Kconfig" endif # SEC_J5_PROJECT if SEC_GTEL_PROJECT || SEC_GTES_PROJECT source "drivers/media/platform/msm/camera_v2_gte/Kconfig" endif # SEC_GTEL_PROJECT if !(SEC_GTEL_PROJECT || SEC_GTES_PROJECT || SEC_FORTUNA_PROJECT) if !(SEC_GTEL_PROJECT || SEC_GTES_PROJECT || SEC_J5_PROJECT || SEC_J5N_PROJECT || SEC_J5X_PROJECT) source "drivers/media/platform/msm/camera_v2/Kconfig" endif # SEC_FORTUNA_PROJECT endif # MSMB_CAMERA Loading
drivers/media/platform/msm/Makefile +6 −2 Original line number Diff line number Diff line Loading @@ -7,8 +7,12 @@ obj-$(CONFIG_MSM_VIDC_V4L2) += vidc/ obj-y += broadcast/ obj-$(CONFIG_DVB_MPQ) += dvb/ ifeq ($(CONFIG_SEC_FORTUNA_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_fortuna/ ifeq ($(CONFIG_SEC_J5_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_J5N_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_J5X_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_j5/ else ifeq ($(CONFIG_SEC_GTEL_PROJECT),y) obj-$(CONFIG_MSMB_CAMERA) += camera_v2_gte/ else ifeq ($(CONFIG_SEC_GTES_PROJECT),y) Loading
drivers/media/platform/msm/camera_v2/Kconfig +27 −80 Original line number Diff line number Diff line Loading @@ -128,12 +128,6 @@ config MSM_ISPIF_V1 of any CID of MSM_CSI22_HEADER can be routed to of pixel or raw data interface in VFE. config SENSOR_8_BPP bool "8 bits per pixel YUV sensor output" depends on MSMB_CAMERA ---help--- 8 bits per pixel YUV sensor output. config IMX134 bool "Sensor IMX134 (BAYER 8M)" depends on MSMB_CAMERA Loading @@ -152,21 +146,12 @@ config IMX132 snapshot config = 1920 x 1080 at 30 fps, Video HDR support. config SR352 bool "Sensor for front camera" depends on MSMB_CAMERA default n ---help--- Siliconfile 3MP sensor, Rear sensor. config SR130PC20 bool "Sensor for front camera" config IMX219 bool "Sensor IMX219 (BAYER 8M)" depends on MSMB_CAMERA default n ---help--- Siliconfile 1.3MP sensor, Front sensor. Sony 8 MP Bayer Sensor with auto focus, uses 4 mipi lanes full resolution @30fps. config OV9724 bool "Sensor OV9724 (BAYER 2M)" Loading Loading @@ -219,6 +204,14 @@ config SR200PC20 ---help--- Siliconfile 2.0MP sensor, Front sensor. config SR030PC50 bool "Sensor for front camera" depends on MSMB_CAMERA default n ---help--- Siliconfile VGA sensor, Front sensor. config SR544 bool "Sensor for back camera" depends on MSMB_CAMERA Loading @@ -245,6 +238,15 @@ config GC0339 Preview and snapshot resolution shall be 640*480 at 30 fps, It does not support auto focus. config GC0310 bool "Sensor GC0310 (YUV .3M)" depends on MSMB_CAMERA ---help--- 0310 is a Galaxycore .3 MP YUV Sensor. It supports 1 mipi lane. Preview and snapshot resolution shall be 640*480 at 30 fps, It does not support auto focus. config OV8825 bool "OmniVision OV8825 (BAYER 8MP)" depends on MSMB_CAMERA Loading Loading @@ -315,13 +317,6 @@ config S5K5E3YX S.LSI. 5MP Bayer Sensor with auto focus, uses 2 mipi lanes full resolution @30fps config SR552 bool "Sensor SR552 (BAYER 5M)" depends on MSMB_CAMERA ---help--- S.LSI. 5MP Bayer Sensor with auto focus, uses 2 mipi lanes full resolution @30fps config S5K4ECGX bool "Sensor s5k4ecgx (SOC 5MP)" depends on MSMB_CAMERA Loading Loading @@ -371,38 +366,12 @@ config CAM_USE_EXT_VANA_GPIO depends on MSMB_CAMERA ---help--- Board use external LDO controlled by GPIO. config CAM_DISABLE_LPM_MODE bool "Camera is Disabled in LPM mode." depends on NFC_PN547 default n ---help--- Because NFC HW limitation which should not be turned on L16. config CAM_PN547_PVDD_EN_CONTROL bool "PN547 NFC PVDD EN CONTROL" depends on NFC_PN547 default n help SAMSUNG PN547 NFC PVDD EN CONTROL feature. This feature provides support for NXP PN547 products. You should select this feature if your NFC product uses pvdd en pin. Say Y here to compile support for NXP PN547 PVDD EN CONTROL feature into the kernel. config SW_LANDING_FOR_MULTI_TASKING bool "SW Landing is applied during multi tasking" depends on ACTUATOR default n help If Camera exit while multi tasking with call, actuator makes big noise. SW landing is applied during multi tasking only. config CAMERA_SYSFS_V2 bool "CAMERA SYS" config SR130PC20 bool "Sensor s5k4e1 (SOC 1.3MP)" depends on MSMB_CAMERA ---help--- CAMERA SYS. Samsung 1.3 MP SOC Sensor. It uses 1 mipi lanes, Does not support auto focus, and flash config DB8221A bool "Sensor for front camera" Loading @@ -412,30 +381,8 @@ config DB8221A Dongbu HiTek 2.0MP sensor, Front sensor. config OIS tristate "External ois support" depends on MSMB_CAMERA default n ---help--- Enables support for external ois module. config CAM_DUAL_POWER_SEQ bool "Dual power up sequence enable" depends on MSMB_CAMERA ---help--- This flag will allow us to write dual power up sequence. config FRONT_FLASH bool "Rear LEd and Front LED both USING" depends on MSMB_CAMERA ---help--- ONLY for Front FLASH Model using. Front LED for LM3632 or KTD2692 Rear LED SM5703. config EEPROM_CAMERA_QUP_I2C bool "Read EEPROM data in camera module" depends on MSMB_CAMERA default n ---help--- If the eeprom data in camera module is not read successfully, it causes actuator to move lens to 0x00 position, which causes actuator noise.
drivers/media/platform/msm/camera_v2/camera/camera.c +8 −21 Original line number Diff line number Diff line Loading @@ -35,8 +35,6 @@ #define fh_to_private(__fh) \ container_of(__fh, struct camera_v4l2_private, fh) extern struct task_struct *qdaemon_task; #define QDAEMON "mm-qcamera" struct camera_v4l2_private { struct v4l2_fh fh; unsigned int stream_id; Loading Loading @@ -210,9 +208,9 @@ static int camera_v4l2_reqbufs(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_reqbufs(&sp->vb2_q, req); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading @@ -233,9 +231,9 @@ static int camera_v4l2_qbuf(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_qbuf(&sp->vb2_q, pb); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading @@ -250,9 +248,9 @@ static int camera_v4l2_dqbuf(struct file *filep, void *fh, session = msm_session_find(session_id); if (WARN_ON(!session)) return -EIO; mutex_lock(&session->lock_q); mutex_lock(&session->lock); ret = vb2_dqbuf(&sp->vb2_q, pb, filep->f_flags & O_NONBLOCK); mutex_unlock(&session->lock_q); mutex_unlock(&session->lock); return ret; } Loading Loading @@ -561,7 +559,7 @@ static int camera_v4l2_open(struct file *filep) if (!atomic_read(&pvdev->opened)) { pm_stay_awake(&pvdev->vdev->dev); #if !defined(CONFIG_ARCH_MSM8939) && !defined(CONFIG_ARCH_MSM8929) #ifndef CONFIG_ARCH_MSM8939 /* Disable power collapse latency */ msm_pm_qos_update_request(CAMERA_DISABLE_PC_LATENCY); #endif Loading Loading @@ -589,17 +587,6 @@ static int camera_v4l2_open(struct file *filep) if (rc < 0) { pr_err("%s : posting of NEW_SESSION event failed\n", __func__); if (qdaemon_task) { if (!strncmp(qdaemon_task->comm, QDAEMON, strlen(QDAEMON))) { pr_err("%s, kill daemon", __func__); send_sig(SIGKILL, qdaemon_task, 0); pr_err("%s, kill this", __func__); send_sig(SIGKILL, current, 0); } else pr_err("%s, now (%s : %d)", __func__, qdaemon_task->comm, task_pid_nr(qdaemon_task)); } else pr_err("error!! can't look for daemon"); pr_err("%s : Line %d rc %d\n", __func__, __LINE__, rc); goto post_fail; } Loading Loading @@ -687,7 +674,7 @@ static int camera_v4l2_close(struct file *filep) * and application crashes */ msm_destroy_session(pvdev->vdev->num); #if !defined(CONFIG_ARCH_MSM8939) && !defined(CONFIG_ARCH_MSM8929) #ifndef CONFIG_ARCH_MSM8939 /* Enable power collapse latency */ msm_pm_qos_update_request(CAMERA_ENABLE_PC_LATENCY); #endif Loading
drivers/media/platform/msm/camera_v2/isp/msm_buf_mgr.c +1 −1 Original line number Diff line number Diff line Loading @@ -145,7 +145,7 @@ static int msm_isp_prepare_v4l2_buf(struct msm_isp_buf_mgr *buf_mgr, } mapped_info->paddr += v4l2_buf->m.planes[i].data_offset; CDBG("%s: plane: %d addr:%lu\n", __func__, i, (unsigned long int)(mapped_info->paddr)); __func__, i, mapped_info->paddr); buf_pending = kzalloc(sizeof(struct buffer_cmd), GFP_ATOMIC); if (!buf_pending) { Loading