From 585e1cd09eb5a13991d907832b853e4c1fd7411b Mon Sep 17 00:00:00 2001 From: Guennadi Liakhovetski Date: Fri, 3 Apr 2009 15:33:35 +0200 Subject: sync: add files needed for the following two commits Signed-off-by: Guennadi Liakhovetski kernel-sync: --- linux/arch/arm/plat-mxc/include/mach/memory.h | 28 +++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 linux/arch/arm/plat-mxc/include/mach/memory.h (limited to 'linux/arch/arm/plat-mxc/include/mach') diff --git a/linux/arch/arm/plat-mxc/include/mach/memory.h b/linux/arch/arm/plat-mxc/include/mach/memory.h new file mode 100644 index 000000000..cee836dfc --- /dev/null +++ b/linux/arch/arm/plat-mxc/include/mach/memory.h @@ -0,0 +1,28 @@ +/* + * Copyright 2004-2007 Freescale Semiconductor, Inc. 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 as + * published by the Free Software Foundation. + */ + +#ifndef __ASM_ARCH_MXC_MEMORY_H__ +#define __ASM_ARCH_MXC_MEMORY_H__ + +#if defined CONFIG_ARCH_MX1 +#define PHYS_OFFSET UL(0x08000000) +#elif defined CONFIG_ARCH_MX2 +#ifdef CONFIG_MACH_MX21 +#define PHYS_OFFSET UL(0xC0000000) +#endif +#ifdef CONFIG_MACH_MX27 +#define PHYS_OFFSET UL(0xA0000000) +#endif +#elif defined CONFIG_ARCH_MX3 +#define PHYS_OFFSET UL(0x80000000) +#define CONSISTENT_DMA_SIZE SZ_8M +#endif + +#endif /* __ASM_ARCH_MXC_MEMORY_H__ */ -- cgit v1.2.3 From 71bde24b27b74e98e8c4a4b253994b5e05ca42bf Mon Sep 17 00:00:00 2001 From: Guennadi Liakhovetski Date: Fri, 3 Apr 2009 15:34:05 +0200 Subject: Add camera (CSI) driver for MX1 From: Paulius Zaleckas Add support for CMOS Sensor Interface on i.MX1 and i.MXL SoCs. Signed-off-by: Paulius Zaleckas Signed-off-by: Darius Augulis Acked-by: Sascha Hauer Signed-off-by: Guennadi Liakhovetski --- arch/arm/mach-mx1/Makefile | 5 +- arch/arm/mach-mx1/devices.c | 2 +- arch/arm/mach-mx1/ksym_mx1.c | 18 + arch/arm/mach-mx1/mx1_camera_fiq.S | 35 ++ arch/arm/plat-mxc/include/mach/memory.h | 8 + arch/arm/plat-mxc/include/mach/mx1_camera.h | 35 ++ drivers/media/video/Kconfig | 13 +- drivers/media/video/Makefile | 1 + drivers/media/video/mx1_camera.c | 827 +++++++++++++++++++++++++++ 9 files changed, 941 insertions(+), 3 deletions(-) create mode 100644 arch/arm/mach-mx1/ksym_mx1.c create mode 100644 arch/arm/mach-mx1/mx1_camera_fiq.S create mode 100644 arch/arm/plat-mxc/include/mach/mx1_camera.h create mode 100644 drivers/media/video/mx1_camera.c --- linux/arch/arm/plat-mxc/include/mach/memory.h | 8 ++++++ linux/arch/arm/plat-mxc/include/mach/mx1_camera.h | 35 +++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 linux/arch/arm/plat-mxc/include/mach/mx1_camera.h (limited to 'linux/arch/arm/plat-mxc/include/mach') diff --git a/linux/arch/arm/plat-mxc/include/mach/memory.h b/linux/arch/arm/plat-mxc/include/mach/memory.h index cee836dfc..33bed2326 100644 --- a/linux/arch/arm/plat-mxc/include/mach/memory.h +++ b/linux/arch/arm/plat-mxc/include/mach/memory.h @@ -25,4 +25,12 @@ #define CONSISTENT_DMA_SIZE SZ_8M #endif +#if defined(CONFIG_MX1_VIDEO) +/* + * Increase size of DMA-consistent memory region. + * This is required for i.MX camera driver to capture at least four VGA frames. + */ +#define CONSISTENT_DMA_SIZE SZ_4M +#endif /* CONFIG_MX1_VIDEO */ + #endif /* __ASM_ARCH_MXC_MEMORY_H__ */ diff --git a/linux/arch/arm/plat-mxc/include/mach/mx1_camera.h b/linux/arch/arm/plat-mxc/include/mach/mx1_camera.h new file mode 100644 index 000000000..4fd6c7031 --- /dev/null +++ b/linux/arch/arm/plat-mxc/include/mach/mx1_camera.h @@ -0,0 +1,35 @@ +/* + * mx1_camera.h - i.MX1/i.MXL camera driver header file + * + * Copyright (c) 2008, Paulius Zaleckas + * Copyright (C) 2009, Darius Augulis + * + * Based on PXA camera.h file: + * Copyright (C) 2003, Intel Corporation + * Copyright (C) 2008, Guennadi Liakhovetski + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef __ASM_ARCH_CAMERA_H_ +#define __ASM_ARCH_CAMERA_H_ + +#define MX1_CAMERA_DATA_HIGH 1 +#define MX1_CAMERA_PCLK_RISING 2 +#define MX1_CAMERA_VSYNC_HIGH 4 + +extern unsigned char mx1_camera_sof_fiq_start, mx1_camera_sof_fiq_end; + +/** + * struct mx1_camera_pdata - i.MX1/i.MXL camera platform data + * @mclk_10khz: master clock frequency in 10kHz units + * @flags: MX1 camera platform flags + */ +struct mx1_camera_pdata { + unsigned long mclk_10khz; + unsigned long flags; +}; + +#endif /* __ASM_ARCH_CAMERA_H_ */ -- cgit v1.2.3