summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/board-cardhu-sensors.c
diff options
context:
space:
mode:
authorFrank Chen <frankc@nvidia.com>2011-08-24 18:04:52 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:48:45 -0800
commitf237f2f6f25be739efaacc254a74d1a97b942d62 (patch)
tree4623c61c3544082a41aabb7cf450617b2b960eb6 /arch/arm/mach-tegra/board-cardhu-sensors.c
parent461752aa97ee2ea894c4c130171d16baf26d2d36 (diff)
arm: tegra: PM269: Fix focuser I2C timeout issue.
Fix regulator_get error and reset the sensor/focuser properly in the camera power on routine for PM269. Bug 842713 Original-Change-Id: Ia3820ec9e7bcca850b090a48963606af855f5ad2 Reviewed-on: http://git-master/r/49101 Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com> Rebase-Id: R5623445c753a3e8ffaaef38a5b105c8330e21b49
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-sensors.c')
-rw-r--r--arch/arm/mach-tegra/board-cardhu-sensors.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-sensors.c b/arch/arm/mach-tegra/board-cardhu-sensors.c
index c3ef960d673d..d0b72958d50a 100644
--- a/arch/arm/mach-tegra/board-cardhu-sensors.c
+++ b/arch/arm/mach-tegra/board-cardhu-sensors.c
@@ -171,6 +171,13 @@ static int cardhu_left_ov5650_power_on(void)
mdelay(100);
gpio_direction_output(OV5650_RESETN_GPIO, 1);
}
+
+ if (board_info.board_id == BOARD_PM269) {
+ gpio_direction_output(CAM1_RST_L_GPIO, 0);
+ mdelay(100);
+ gpio_direction_output(CAM1_RST_L_GPIO, 1);
+ }
+
return 0;
reg_alloc_fail:
@@ -245,6 +252,13 @@ static int cardhu_right_ov5650_power_on(void)
regulator_enable(cardhu_1v8_cam2);
mdelay(5);
+
+ if (board_info.board_id == BOARD_PM269) {
+ gpio_direction_output(CAM2_RST_L_GPIO, 0);
+ mdelay(100);
+ gpio_direction_output(CAM2_RST_L_GPIO, 1);
+ }
+
return 0;
reg_alloc_fail: