msm: cpp: Adding null check for regulator disable

Adding null check before regulator enable and also
resetting regulator variable to NULL after regulator disable.
This will avoid using previously disabled regulator in next
session.

Change-Id: I0e8f2f71152064972128f707653e3a2295e1d408
Signed-off-by: Shilpa Mamidi <shilpam@codeaurora.org>
This commit is contained in:
Shilpa Mamidi 2016-01-12 14:06:32 +05:30 committed by David Keitel
parent 1cad27b269
commit 5d4f42608e

View file

@ -1189,17 +1189,22 @@ remap_failed:
msm_cam_clk_enable(&cpp_dev->pdev->dev, cpp_clk_info,
cpp_dev->cpp_clk, cpp_dev->num_clk, 0);
clk_failed:
regulator_disable(cpp_dev->fs_cpp);
regulator_put(cpp_dev->fs_cpp);
if (cpp_dev->fs_cpp) {
regulator_disable(cpp_dev->fs_cpp);
regulator_put(cpp_dev->fs_cpp);
cpp_dev->fs_cpp = NULL;
}
fs_failed:
if (cpp_dev->fs_camss) {
regulator_disable(cpp_dev->fs_camss);
regulator_put(cpp_dev->fs_camss);
cpp_dev->fs_camss = NULL;
}
fs_camss_failed:
if (cpp_dev->fs_mmagic_camss) {
regulator_disable(cpp_dev->fs_mmagic_camss);
regulator_put(cpp_dev->fs_mmagic_camss);
cpp_dev->fs_mmagic_camss = NULL;
}
fs_mmagic_failed:
if (cpp_dev->bus_master_flag)
@ -4332,6 +4337,9 @@ static int cpp_probe(struct platform_device *pdev)
setup_timer(&cpp_timer.cpp_timer,
cpp_timer_callback, (unsigned long)&cpp_timer);
cpp_dev->fw_name_bin = NULL;
cpp_dev->fs_cpp = NULL;
cpp_dev->fs_camss = NULL;
cpp_dev->fs_mmagic_camss = NULL;
cpp_dev->max_timeout_trial_cnt = MSM_CPP_MAX_TIMEOUT_TRIAL;
if (rc == 0)
CPP_DBG("SUCCESS.");