summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@quicinc.com>2017-08-24 06:14:32 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2017-08-24 06:14:32 -0700
commitd7e5337d56cdcb44a47dc7cdfd4e1861d2e3ba09 (patch)
tree5ab3645cf418f998fec2a43e4b4383893c79c3a8
parentd4a8f9c9cafbcfcb305cb7fce83d708d644750a5 (diff)
parent59361de692f4b1394529b1dc3873352a58fc6094 (diff)
Merge "msm: camera: Fix null pointer exception in regulator disable"
-rw-r--r--drivers/media/platform/msm/camera_v2/common/msm_camera_io_util.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/drivers/media/platform/msm/camera_v2/common/msm_camera_io_util.c b/drivers/media/platform/msm/camera_v2/common/msm_camera_io_util.c
index 90edadaed1ef..f6d7f5fb8d32 100644
--- a/drivers/media/platform/msm/camera_v2/common/msm_camera_io_util.c
+++ b/drivers/media/platform/msm/camera_v2/common/msm_camera_io_util.c
@@ -1,4 +1,4 @@
-/* Copyright (c) 2011-2014, The Linux Foundataion. All rights reserved.
+/* Copyright (c) 2011-2014, 2017, The Linux Foundataion. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -556,12 +556,16 @@ int msm_camera_enable_vreg(struct device *dev, struct camera_vreg_t *cam_vreg,
continue;
} else
j = i;
- regulator_disable(reg_ptr[j]);
- if (cam_vreg[j].delay > 20)
- msleep(cam_vreg[j].delay);
- else if (cam_vreg[j].delay)
- usleep_range(cam_vreg[j].delay * 1000,
- (cam_vreg[j].delay * 1000) + 1000);
+ if (reg_ptr[j]) {
+ regulator_disable(reg_ptr[j]);
+ if (cam_vreg[j].delay > 20)
+ msleep(cam_vreg[j].delay);
+ else if (cam_vreg[j].delay)
+ usleep_range(
+ cam_vreg[j].delay * 1000,
+ (cam_vreg[j].delay * 1000)
+ + 1000);
+ }
}
}
return rc;