diff options
author | Jason Kridner <jkridner@beagleboard.org> | 2010-08-05 09:21:22 +0000 |
---|---|---|
committer | Koen Kooi <koen@openembedded.org> | 2010-08-05 22:08:20 +0200 |
commit | 7058b8b5dda8a6ce31e79c5253bb38789077c3ef (patch) | |
tree | 7a9408e35f8aa1432aa2c454074c3b2db95a12ef /recipes/linux/linux-omap-psp-2.6.32 | |
parent | 7d4247c9d8c8e54eb4ac174c7843c645a3f39bf6 (diff) |
linux-omap-psp_2.6.32: Move camera sensor reset
Camera reset needed to be done after applying power.
Signed-off-by: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Koen Kooi <koen@beagleboard.org>
Diffstat (limited to 'recipes/linux/linux-omap-psp-2.6.32')
-rw-r--r-- | recipes/linux/linux-omap-psp-2.6.32/cam/0001-Move-sensor-rest-to-after-applying-power.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/recipes/linux/linux-omap-psp-2.6.32/cam/0001-Move-sensor-rest-to-after-applying-power.patch b/recipes/linux/linux-omap-psp-2.6.32/cam/0001-Move-sensor-rest-to-after-applying-power.patch new file mode 100644 index 0000000000..4bb327e802 --- /dev/null +++ b/recipes/linux/linux-omap-psp-2.6.32/cam/0001-Move-sensor-rest-to-after-applying-power.patch @@ -0,0 +1,65 @@ +From f3fdd3fb4e45b75722d68e5e380c0c71f83fffcf Mon Sep 17 00:00:00 2001 +From: Steve Kipisz <s-kipisz2@ti.com> +Date: Thu, 5 Aug 2010 10:51:11 -0500 +Subject: [PATCH] Move sensor rest to after applying power. + +--- + arch/arm/mach-omap2/board-omap3beagle-camera.c | 12 ++++++++---- + 1 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/arch/arm/mach-omap2/board-omap3beagle-camera.c b/arch/arm/mach-omap2/board-omap3beagle-camera.c +index 520e1d8..39ac4b7 100644 +--- a/arch/arm/mach-omap2/board-omap3beagle-camera.c ++++ b/arch/arm/mach-omap2/board-omap3beagle-camera.c +@@ -160,8 +160,6 @@ static int mt9v113_power_set(struct v4l2_int_device *s, enum v4l2_power power) + case V4L2_POWER_ON: + + isp_configure_interface(vdev->cam->isp, &mt9v113_if_config); +- /* Set RESET_BAR to 0 */ +- gpio_set_value(LEOPARD_RESET_GPIO, 0); + + /* turn on VDD */ + regulator_enable(cam_1v8_reg); +@@ -170,6 +168,9 @@ static int mt9v113_power_set(struct v4l2_int_device *s, enum v4l2_power power) + regulator_enable(cam_2v8_reg); + mdelay(50); + ++ /* Set RESET_BAR to 0 */ ++ gpio_set_value(LEOPARD_RESET_GPIO, 0); ++ + /* Enable EXTCLK */ + isp_set_xclk(vdev->cam->isp, MT9V113_CLK_MIN*2, CAM_USE_XCLKA); + /* +@@ -177,8 +178,10 @@ static int mt9v113_power_set(struct v4l2_int_device *s, enum v4l2_power power) + * ((1000000 * 70) / 6000000) = aprox 12 us. + */ + udelay(12); ++ + /* Set RESET_BAR to 1 */ + gpio_set_value(LEOPARD_RESET_GPIO, 1); ++ + /* + * Wait at least 100 CLK cycles (w/EXTCLK = 6MHz, or CLK_MIN): + * ((1000000 * 100) / 6000000) = aprox 17 us. +@@ -317,8 +320,6 @@ static int mt9t112_power_set(struct v4l2_int_device *s, enum v4l2_power power) + isp_configure_interface(vdev->cam->isp, &mt9t112_if_config); + #endif + +- /* Set RESET_BAR to 0 */ +- gpio_set_value(LEOPARD_RESET_GPIO, 0); + + /* turn on VDD */ + regulator_enable(cam_1v8_reg); +@@ -330,6 +331,9 @@ static int mt9t112_power_set(struct v4l2_int_device *s, enum v4l2_power power) + + mdelay(50); + ++ /* Set RESET_BAR to 0 */ ++ gpio_set_value(LEOPARD_RESET_GPIO, 0); ++ + /* Enable EXTCLK */ + isp_set_xclk(vdev->cam->isp, 24000000, CAM_USE_XCLKA); + +-- +1.6.6.1 + |