diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2018-06-28 23:54:19 -0700 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-06-28 23:54:18 -0700 |
| commit | ee11b4113eca4e67a0e37bb237bb45d589b01390 (patch) | |
| tree | eeefff528671056469931d59ffc5ad7605feab00 | |
| parent | 66ba612839ce4f2267c5f906c792165cf0cf9876 (diff) | |
| parent | afcb8304af9333a63b1dff246fc758817a44aa19 (diff) | |
Merge "msm: ais: Corrected sensor state in power up"
| -rw-r--r-- | drivers/media/platform/msm/ais/common/cam_soc_api.c | 3 | ||||
| -rw-r--r-- | drivers/media/platform/msm/ais/sensor/msm_sensor.c | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/platform/msm/ais/common/cam_soc_api.c b/drivers/media/platform/msm/ais/common/cam_soc_api.c index 520940c74d69..46738a1ca381 100644 --- a/drivers/media/platform/msm/ais/common/cam_soc_api.c +++ b/drivers/media/platform/msm/ais/common/cam_soc_api.c @@ -26,6 +26,7 @@ #include <linux/msm-bus.h> #include "cam_soc_api.h" #include "msm_camera_diag_util.h" +#include <linux/clk/msm-clock-generic.h> struct msm_cam_bus_pscale_data { struct msm_bus_scale_pdata *pdata; @@ -362,6 +363,7 @@ int msm_camera_clk_enable(struct device *dev, clk_info[i].clk_name); goto cam_clk_set_err; } + clk_ptr[i]->flags |= CLKFLAG_NO_RATE_CACHE; rc = clk_set_rate(clk_ptr[i], clk_rate); if (rc < 0) { @@ -383,6 +385,7 @@ int msm_camera_clk_enable(struct device *dev, goto cam_clk_set_err; } } + clk_ptr[i]->flags |= CLKFLAG_NO_RATE_CACHE; rc = clk_set_rate(clk_ptr[i], clk_rate); if (rc < 0) { diff --git a/drivers/media/platform/msm/ais/sensor/msm_sensor.c b/drivers/media/platform/msm/ais/sensor/msm_sensor.c index 7434ba49fb8d..657c6ee7c0b6 100644 --- a/drivers/media/platform/msm/ais/sensor/msm_sensor.c +++ b/drivers/media/platform/msm/ais/sensor/msm_sensor.c @@ -842,7 +842,8 @@ static int msm_sensor_config32(struct msm_sensor_ctrl_t *s_ctrl, if (s_ctrl->is_csid_tg_mode) goto DONE; - if (s_ctrl->sensor_state != MSM_SENSOR_POWER_DOWN) { + if ((s_ctrl->sensor_state != MSM_SENSOR_POWER_DOWN) && + (s_ctrl->sensor_state != MSM_SENSOR_CCI_DOWN)) { pr_err("%s:%d failed: invalid state %d\n", __func__, __LINE__, s_ctrl->sensor_state); rc = -EFAULT; @@ -1403,7 +1404,8 @@ int msm_sensor_config(struct msm_sensor_ctrl_t *s_ctrl, void *argp) if (s_ctrl->is_csid_tg_mode) goto DONE; - if (s_ctrl->sensor_state != MSM_SENSOR_POWER_DOWN) { + if ((s_ctrl->sensor_state != MSM_SENSOR_POWER_DOWN) && + (s_ctrl->sensor_state != MSM_SENSOR_CCI_DOWN)) { pr_err("%s:%d failed: invalid state %d\n", __func__, __LINE__, s_ctrl->sensor_state); rc = -EFAULT; |
