diff options
Diffstat (limited to 'arch/arm/mach-omap2/devices.c')
| -rw-r--r-- | arch/arm/mach-omap2/devices.c | 62 | 
1 files changed, 38 insertions, 24 deletions
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c index 0d2d6a9c303..e9785149284 100644 --- a/arch/arm/mach-omap2/devices.c +++ b/arch/arm/mach-omap2/devices.c @@ -35,6 +35,7 @@  #include "mux.h"  #include "control.h" +#include "devices.h"  #define L3_MODULES_MAX_LEN 12  #define L3_MODULES 3 @@ -102,7 +103,7 @@ postcore_initcall(omap4_l3_init);  #if defined(CONFIG_VIDEO_OMAP2) || defined(CONFIG_VIDEO_OMAP2_MODULE) -static struct resource cam_resources[] = { +static struct resource omap2cam_resources[] = {  	{  		.start		= OMAP24XX_CAMERA_BASE,  		.end		= OMAP24XX_CAMERA_BASE + 0xfff, @@ -114,19 +115,13 @@ static struct resource cam_resources[] = {  	}  }; -static struct platform_device omap_cam_device = { +static struct platform_device omap2cam_device = {  	.name		= "omap24xxcam",  	.id		= -1, -	.num_resources	= ARRAY_SIZE(cam_resources), -	.resource	= cam_resources, +	.num_resources	= ARRAY_SIZE(omap2cam_resources), +	.resource	= omap2cam_resources,  }; - -static inline void omap_init_camera(void) -{ -	platform_device_register(&omap_cam_device); -} - -#elif defined(CONFIG_VIDEO_OMAP3) || defined(CONFIG_VIDEO_OMAP3_MODULE) +#endif  static struct resource omap3isp_resources[] = {  	{ @@ -135,11 +130,6 @@ static struct resource omap3isp_resources[] = {  		.flags		= IORESOURCE_MEM,  	},  	{ -		.start		= OMAP3430_ISP_CBUFF_BASE, -		.end		= OMAP3430_ISP_CBUFF_END, -		.flags		= IORESOURCE_MEM, -	}, -	{  		.start		= OMAP3430_ISP_CCP2_BASE,  		.end		= OMAP3430_ISP_CCP2_END,  		.flags		= IORESOURCE_MEM, @@ -175,13 +165,33 @@ static struct resource omap3isp_resources[] = {  		.flags		= IORESOURCE_MEM,  	},  	{ -		.start		= OMAP3430_ISP_CSI2A_BASE, -		.end		= OMAP3430_ISP_CSI2A_END, +		.start		= OMAP3430_ISP_CSI2A_REGS1_BASE, +		.end		= OMAP3430_ISP_CSI2A_REGS1_END, +		.flags		= IORESOURCE_MEM, +	}, +	{ +		.start		= OMAP3430_ISP_CSIPHY2_BASE, +		.end		= OMAP3430_ISP_CSIPHY2_END, +		.flags		= IORESOURCE_MEM, +	}, +	{ +		.start		= OMAP3630_ISP_CSI2A_REGS2_BASE, +		.end		= OMAP3630_ISP_CSI2A_REGS2_END, +		.flags		= IORESOURCE_MEM, +	}, +	{ +		.start		= OMAP3630_ISP_CSI2C_REGS1_BASE, +		.end		= OMAP3630_ISP_CSI2C_REGS1_END, +		.flags		= IORESOURCE_MEM, +	}, +	{ +		.start		= OMAP3630_ISP_CSIPHY1_BASE, +		.end		= OMAP3630_ISP_CSIPHY1_END,  		.flags		= IORESOURCE_MEM,  	},  	{ -		.start		= OMAP3430_ISP_CSI2PHY_BASE, -		.end		= OMAP3430_ISP_CSI2PHY_END, +		.start		= OMAP3630_ISP_CSI2C_REGS2_BASE, +		.end		= OMAP3630_ISP_CSI2C_REGS2_END,  		.flags		= IORESOURCE_MEM,  	},  	{ @@ -197,15 +207,19 @@ static struct platform_device omap3isp_device = {  	.resource	= omap3isp_resources,  }; -static inline void omap_init_camera(void) +int omap3_init_camera(struct isp_platform_data *pdata)  { -	platform_device_register(&omap3isp_device); +	omap3isp_device.dev.platform_data = pdata; +	return platform_device_register(&omap3isp_device);  } -#else +  static inline void omap_init_camera(void)  { -} +#if defined(CONFIG_VIDEO_OMAP2) || defined(CONFIG_VIDEO_OMAP2_MODULE) +	if (cpu_is_omap24xx()) +		platform_device_register(&omap2cam_device);  #endif +}  struct omap_device_pm_latency omap_keyboard_latency[] = {  	{  |