[PATCH 07/14] Add Samsung S3C CAMIF driver
Ben Dooks
ben at fluff.org
Thu Mar 5 12:35:10 CET 2009
On Thu, Mar 05, 2009 at 11:43:18AM +0800, Werner Almesberger wrote:
> Add Samsung S3C camera interface driver.
> Original code is from Samsung's BSP and was written for 2.6.21.
hmm, do you really need to say this, it looks like completely new
code to me.
> Only tested on S3C6410.
> Signed-off-by: Werner Almesberger <werner at openmoko.org>
>
> ---
>
> Index: cam/arch/arm/plat-s3c/dev-camif.c
> ===================================================================
> --- /dev/null 1970-01-01 00:00:00.000000000 +0000
> +++ cam/arch/arm/plat-s3c/dev-camif.c 2009-03-03 19:06:20.000000000 +0800
> @@ -0,0 +1,64 @@
> +/* linux/arch/arm/plat-s3c/dev-camif.c
> + *
> + * Copyright 2009 Openmoko, Inc.
> + * Werner Almesberger <werner at openmoko.org>
> + *
> + * based on dev-hsmmc.c which is
> + *
> + * Copyright (c) 2008 Simtec Electronics
> + * Ben Dooks <ben at simtec.co.uk>
> + * http://armlinux.simtec.co.uk/
> + *
> + * S3C series device definition for camera interface devices
> + *
> + * 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.
> +*/
> +
> +#include <linux/kernel.h>
> +#include <linux/platform_device.h>
> +#include <linux/mmc/host.h>
> +
> +#include <mach/map.h>
> +#include <plat/devs.h>
> +#include <plat/cpu.h>
> +
> +
> +#define S3C6400_PA_CAMIF 0x78000000
> +#define S3C24XX_SZ_CAMIF (0x1000)
> +
> +
> +static struct resource s3c_camif_resource[] = {
> + [0] = {
> + .start = S3C6400_PA_CAMIF,
> + .end = S3C6400_PA_CAMIF + S3C24XX_SZ_CAMIF - 1,
> + .flags = IORESOURCE_MEM,
> + },
> + [1] = {
> + .start = IRQ_CAMIF_C,
> + .end = IRQ_CAMIF_C,
> + .flags = IORESOURCE_IRQ,
> + },
> + [2] = {
> + .start = IRQ_CAMIF_P,
> + .end = IRQ_CAMIF_P,
> + .flags = IORESOURCE_IRQ,
> + }
> +
> +};
> +
> +static u64 s3c_device_camif_dmamask = 0xffffffffUL;
> +
> +struct platform_device s3c_device_camif = {
> + .name = "s3c-camif",
> + .id = -1,
> + .num_resources = ARRAY_SIZE(s3c_camif_resource),
> + .resource = s3c_camif_resource,
> + .dev = {
> + .dma_mask = &s3c_device_camif_dmamask,
> + .coherent_dma_mask = 0xffffffffUL
> + }
> +};
> +
> +EXPORT_SYMBOL(s3c_device_camif);
> Index: cam/arch/arm/plat-s3c/Kconfig
> ===================================================================
> --- cam.orig/arch/arm/plat-s3c/Kconfig 2009-03-03 16:50:36.000000000 +0800
> +++ cam/arch/arm/plat-s3c/Kconfig 2009-03-03 19:06:20.000000000 +0800
> @@ -193,4 +193,9 @@
> help
> Compile in platform device definition for framebuffer
>
> +config S3C_DEV_CAMIF
> + bool
> + help
> + Compile in platform device definitions for camera interface code
> +
> endif
> Index: cam/arch/arm/plat-s3c/Makefile
> ===================================================================
> --- cam.orig/arch/arm/plat-s3c/Makefile 2009-03-03 16:50:36.000000000 +0800
> +++ cam/arch/arm/plat-s3c/Makefile 2009-03-03 19:06:20.000000000 +0800
> @@ -35,6 +35,7 @@
> obj-y += dev-i2c0.o
> obj-$(CONFIG_S3C_DEV_I2C1) += dev-i2c1.o
> obj-$(CONFIG_S3C_DEV_FB) += dev-fb.o
> +obj-$(CONFIG_S3C_DEV_CAMIF) += dev-camif.o
>
> obj-$(CONFIG_S3C_PWM) += pwm.o
> obj-$(CONFIG_S3C_DMA) += dma.o
>
> --
>
--
--
Ben
Q: What's a light-year?
A: One-third less calories than a regular year.
More information about the openmoko-kernel
mailing list