diff options
Diffstat (limited to 'extras/recipes-kernel/linux/linux-omap/media/0041-omap3-Add-function-to-register-omap3isp-platform-dev.patch')
-rw-r--r-- | extras/recipes-kernel/linux/linux-omap/media/0041-omap3-Add-function-to-register-omap3isp-platform-dev.patch | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/extras/recipes-kernel/linux/linux-omap/media/0041-omap3-Add-function-to-register-omap3isp-platform-dev.patch b/extras/recipes-kernel/linux/linux-omap/media/0041-omap3-Add-function-to-register-omap3isp-platform-dev.patch new file mode 100644 index 00000000..8bcbd73c --- /dev/null +++ b/extras/recipes-kernel/linux/linux-omap/media/0041-omap3-Add-function-to-register-omap3isp-platform-dev.patch @@ -0,0 +1,91 @@ +From d59f7c080e1c0d35a71f788350b619e76cee5033 Mon Sep 17 00:00:00 2001 +From: Laurent Pinchart <laurent.pinchart@ideasonboard.com> +Date: Mon, 14 Dec 2009 13:09:07 +0200 +Subject: [PATCH 41/43] omap3: Add function to register omap3isp platform device structure + +The omap3isp platform device requires platform data. Instead of +registering the device in omap2_init_devices(), export an +omap3_init_camera() function to fill the device structure with the +platform data pointer and register the device. + +Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> +Acked-by: Tony Lindgren <tony@atomide.com> +--- + arch/arm/mach-omap2/devices.c | 20 +++++++++++--------- + arch/arm/mach-omap2/devices.h | 17 +++++++++++++++++ + 2 files changed, 28 insertions(+), 9 deletions(-) + create mode 100644 arch/arm/mach-omap2/devices.h + +diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c +index 60cb86f..9b243be 100644 +--- a/arch/arm/mach-omap2/devices.c ++++ b/arch/arm/mach-omap2/devices.c +@@ -34,6 +34,8 @@ + #include "mux.h" + #include "control.h" + ++#include "devices.h" ++ + #if defined(CONFIG_VIDEO_OMAP2) || defined(CONFIG_VIDEO_OMAP2_MODULE) + + static struct resource cam_resources[] = { +@@ -59,8 +61,11 @@ static inline void omap_init_camera(void) + { + platform_device_register(&omap_cam_device); + } +- +-#elif defined(CONFIG_VIDEO_OMAP3) || defined(CONFIG_VIDEO_OMAP3_MODULE) ++#else ++static inline void omap_init_camera(void) ++{ ++} ++#endif + + static struct resource omap3isp_resources[] = { + { +@@ -146,15 +151,12 @@ static struct platform_device omap3isp_device = { + .resource = omap3isp_resources, + }; + +-static inline void omap_init_camera(void) +-{ +- platform_device_register(&omap3isp_device); +-} +-#else +-static inline void omap_init_camera(void) ++int omap3_init_camera(void *pdata) + { ++ omap3isp_device.dev.platform_data = pdata; ++ return platform_device_register(&omap3isp_device); + } +-#endif ++EXPORT_SYMBOL_GPL(omap3_init_camera); + + #if defined(CONFIG_OMAP_MBOX_FWK) || defined(CONFIG_OMAP_MBOX_FWK_MODULE) + +diff --git a/arch/arm/mach-omap2/devices.h b/arch/arm/mach-omap2/devices.h +new file mode 100644 +index 0000000..12ddb8a +--- /dev/null ++++ b/arch/arm/mach-omap2/devices.h +@@ -0,0 +1,17 @@ ++/* ++ * arch/arm/mach-omap2/devices.h ++ * ++ * OMAP2 platform device setup/initialization ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ */ ++ ++#ifndef __ARCH_ARM_MACH_OMAP_DEVICES_H ++#define __ARCH_ARM_MACH_OMAP_DEVICES_H ++ ++int omap3_init_camera(void *pdata); ++ ++#endif +-- +1.6.6.1 + |