camera: backward compatibility for old s3ve3g(ds) camera mm modules

Allow the camera driver to load old libmmcamera2* modules without the support of flicker_type and new frame_id.
This commit is contained in:
xXPR0T0TYPEXx 2019-08-15 19:34:00 +02:00 committed by Francescodario Cuzzocrea
parent 80fd13cd72
commit c94ec77c40
3 changed files with 10 additions and 0 deletions

View File

@ -703,17 +703,21 @@ int msm_isp_proc_cmd(struct vfe_device *vfe_dev, void *arg)
goto copy_cmd_failed;
}
#if !defined(CONFIG_MACH_S3VE3G_EUR)
if( (vfe_dev->frame_id == proc_cmd->frame_id && vfe_dev->eof_event_occur != 1)
|| proc_cmd->frame_id == 0) {
#endif
for (i = 0; i < proc_cmd->num_cfg; i++)
msm_isp_send_hw_cmd(vfe_dev, &reg_cfg_cmd[i],
cfg_data, proc_cmd->cmd_len);
#if !defined(CONFIG_MACH_S3VE3G_EUR)
}
else{
rc = MSM_VFE_REG_CFG_FRAME_ID_NOT_MATCH_ERROR;
pr_err("%s: not match platform_id=%u, kernel_id=%u, eof_event_occur=%u\n",
__func__,proc_cmd->frame_id, vfe_dev->frame_id, vfe_dev->eof_event_occur);
}
#endif
if (copy_to_user(proc_cmd->cfg_data,
cfg_data, proc_cmd->cmd_len)) {
rc = -EFAULT;

View File

@ -448,7 +448,9 @@ enum camerab_mode_t {
struct sensorb_cfg_data {
int cfgtype;
#if defined(CONFIG_S5K4ECGX) || defined(CONFIG_SR030PC50) || defined(CONFIG_SR352) || defined(CONFIG_SR200PC20) || defined(CONFIG_SR130PC20)
int flicker_type;
#endif
union {
struct msm_sensor_info_t sensor_info;
void *setting;

View File

@ -14,7 +14,9 @@
#define ISP_META_CHANNEL_BIT 0x80000
#define ISP_STATS_STREAM_BIT 0x80000000
#if !defined(CONFIG_MACH_S3VE3G_EUR)
#define MSM_VFE_REG_CFG_FRAME_ID_NOT_MATCH_ERROR 0xCACFC
#endif
enum ISP_START_PIXEL_PATTERN {
ISP_BAYER_RGRGRG,
ISP_BAYER_GRGRGR,
@ -247,7 +249,9 @@ struct msm_vfe_cfg_cmd2 {
uint16_t num_cfg;
uint16_t cmd_len;
void __user *cfg_data;
#if !defined(CONFIG_MACH_S3VE3G_EUR)
uint32_t frame_id;
#endif
void __user *cfg_cmd;
};