From 8bd14f97bebba4755cfa09258ade67b491bb092c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= Date: Wed, 30 Jun 2010 12:16:24 +0200 Subject: [PATCH] --- yaml --- r: 201659 b: refs/heads/master c: 2dcf78c0eeae3bd07082821557014f25f02ca2e9 h: refs/heads/master i: 201657: 5dd488c8dd63822dfc35686216ecdcbc9a678271 201655: 42399a1604df9eeaeec2ac89dfb286109d4d7781 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-imx/Kconfig | 9 +- trunk/arch/arm/mach-imx/Makefile | 2 +- trunk/arch/arm/mach-imx/clock-imx27.c | 2 +- trunk/arch/arm/mach-imx/devices.c | 52 ++ trunk/arch/arm/mach-imx/devices.h | 2 + .../arm/mach-imx/eukrea_mbimx27-baseboard.c | 180 +++++- trunk/arch/arm/mach-imx/mach-cpuimx27.c | 95 ++- trunk/arch/arm/mach-imx/mach-pca100.c | 91 ++- trunk/arch/arm/mach-imx/pm-imx27.c | 46 ++ trunk/arch/arm/mach-mx25/Kconfig | 21 + trunk/arch/arm/mach-mx25/Makefile | 2 + trunk/arch/arm/mach-mx25/clock.c | 63 +- trunk/arch/arm/mach-mx25/devices.c | 82 ++- trunk/arch/arm/mach-mx25/devices.h | 4 + .../arm/mach-mx25/eukrea_mbimxsd-baseboard.c | 261 +++++++++ trunk/arch/arm/mach-mx25/mach-cpuimx25.c | 173 ++++++ trunk/arch/arm/mach-mx25/mach-mx25_3ds.c | 37 ++ trunk/arch/arm/mach-mx3/Kconfig | 25 + trunk/arch/arm/mach-mx3/Makefile | 2 + trunk/arch/arm/mach-mx3/clock-imx35.c | 2 +- .../arm/mach-mx3/eukrea_mbimxsd-baseboard.c | 264 +++++++++ trunk/arch/arm/mach-mx3/mach-cpuimx35.c | 227 +++++++ trunk/arch/arm/mach-mx3/mach-mx31_3ds.c | 23 +- trunk/arch/arm/mach-mx3/mach-mx31lilly.c | 1 + trunk/arch/arm/mach-mx3/mach-pcm037.c | 3 +- trunk/arch/arm/mach-mx3/mach-pcm043.c | 2 + trunk/arch/arm/mach-mx5/board-mx51_babbage.c | 28 +- trunk/arch/arm/mach-mx5/clock-mx51.c | 11 + trunk/arch/arm/mach-mx5/devices.c | 58 ++ trunk/arch/arm/mach-mx5/devices.h | 3 + trunk/arch/arm/plat-mxc/Kconfig | 1 + trunk/arch/arm/plat-mxc/audmux-v2.c | 15 +- trunk/arch/arm/plat-mxc/clock.c | 37 +- trunk/arch/arm/plat-mxc/ehci.c | 46 +- .../include/mach/board-eukrea_cpuimx25.h | 40 ++ .../include/mach/board-eukrea_cpuimx35.h | 40 ++ .../arm/plat-mxc/include/mach/iomux-mx25.h | 28 +- .../arm/plat-mxc/include/mach/iomux-mx51.h | 553 +++++++++--------- .../arch/arm/plat-mxc/include/mach/iomux-v3.h | 15 + trunk/arch/arm/plat-mxc/include/mach/mmc.h | 3 + trunk/arch/arm/plat-mxc/include/mach/mx25.h | 10 + .../arch/arm/plat-mxc/include/mach/mxc_nand.h | 4 + trunk/drivers/mmc/host/mxcmmc.c | 16 +- trunk/drivers/mtd/nand/mxc_nand.c | 33 +- trunk/drivers/usb/gadget/fsl_mxc_udc.c | 2 +- trunk/drivers/usb/host/ehci-mxc.c | 2 +- 47 files changed, 2233 insertions(+), 385 deletions(-) create mode 100644 trunk/arch/arm/mach-imx/pm-imx27.c create mode 100644 trunk/arch/arm/mach-mx25/eukrea_mbimxsd-baseboard.c create mode 100644 trunk/arch/arm/mach-mx25/mach-cpuimx25.c create mode 100644 trunk/arch/arm/mach-mx3/eukrea_mbimxsd-baseboard.c create mode 100644 trunk/arch/arm/mach-mx3/mach-cpuimx35.c create mode 100644 trunk/arch/arm/plat-mxc/include/mach/board-eukrea_cpuimx25.h create mode 100644 trunk/arch/arm/plat-mxc/include/mach/board-eukrea_cpuimx35.h diff --git a/[refs] b/[refs] index 8641951d5a8f..4bea23947fec 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5109a4597f7e758b8d20694392d0361a0b4c43b1 +refs/heads/master: 2dcf78c0eeae3bd07082821557014f25f02ca2e9 diff --git a/trunk/arch/arm/mach-imx/Kconfig b/trunk/arch/arm/mach-imx/Kconfig index 3da53557c665..c5c0369bb481 100644 --- a/trunk/arch/arm/mach-imx/Kconfig +++ b/trunk/arch/arm/mach-imx/Kconfig @@ -130,9 +130,16 @@ config MACH_EUKREA_CPUIMX27_USESDHC2 bool "CPUIMX27 integrates SDHC2 module" depends on MACH_CPUIMX27 help - This adds support for the internal SDHC2 used on CPUIMX27 used + This adds support for the internal SDHC2 used on CPUIMX27 for wifi or eMMC. +config MACH_EUKREA_CPUIMX27_USEUART4 + bool "CPUIMX27 integrates UART4 module" + depends on MACH_CPUIMX27 + help + This adds support for the internal UART4 used on CPUIMX27 + for bluetooth. + choice prompt "Baseboard" depends on MACH_CPUIMX27 diff --git a/trunk/arch/arm/mach-imx/Makefile b/trunk/arch/arm/mach-imx/Makefile index 86b53e6bc94e..46a9fdfbbd15 100644 --- a/trunk/arch/arm/mach-imx/Makefile +++ b/trunk/arch/arm/mach-imx/Makefile @@ -11,7 +11,7 @@ obj-$(CONFIG_IMX_HAVE_DMA_V1) += dma-v1.o obj-$(CONFIG_ARCH_MX1) += clock-imx1.o mm-imx1.o obj-$(CONFIG_MACH_MX21) += clock-imx21.o mm-imx21.o -obj-$(CONFIG_MACH_MX27) += cpu-imx27.o +obj-$(CONFIG_MACH_MX27) += cpu-imx27.o pm-imx27.o obj-$(CONFIG_MACH_MX27) += clock-imx27.o mm-imx27.o # Support for CMOS sensor interface diff --git a/trunk/arch/arm/mach-imx/clock-imx27.c b/trunk/arch/arm/mach-imx/clock-imx27.c index 0f0823c8b170..5a1aa15c8a16 100644 --- a/trunk/arch/arm/mach-imx/clock-imx27.c +++ b/trunk/arch/arm/mach-imx/clock-imx27.c @@ -644,7 +644,7 @@ static struct clk_lookup lookups[] = { _REGISTER_CLOCK("spi_imx.1", NULL, cspi2_clk) _REGISTER_CLOCK("spi_imx.2", NULL, cspi3_clk) _REGISTER_CLOCK("imx-fb.0", NULL, lcdc_clk) - _REGISTER_CLOCK(NULL, "csi", csi_clk) + _REGISTER_CLOCK("mx2-camera.0", NULL, csi_clk) _REGISTER_CLOCK("fsl-usb2-udc", "usb", usb_clk) _REGISTER_CLOCK("fsl-usb2-udc", "usb_ahb", usb_clk1) _REGISTER_CLOCK("mxc-ehci.0", "usb", usb_clk) diff --git a/trunk/arch/arm/mach-imx/devices.c b/trunk/arch/arm/mach-imx/devices.c index 9510687c4be3..9c271a752b84 100644 --- a/trunk/arch/arm/mach-imx/devices.c +++ b/trunk/arch/arm/mach-imx/devices.c @@ -187,6 +187,38 @@ int __init imx1_register_gpios(void) #endif #if defined(CONFIG_MACH_MX21) || defined(CONFIG_MACH_MX27) + +#ifdef CONFIG_MACH_MX27 +static struct resource mx27_camera_resources[] = { + { + .start = MX27_CSI_BASE_ADDR, + .end = MX27_CSI_BASE_ADDR + 0x1f, + .flags = IORESOURCE_MEM, + }, { + .start = MX27_EMMA_PRP_BASE_ADDR, + .end = MX27_EMMA_PRP_BASE_ADDR + 0x1f, + .flags = IORESOURCE_MEM, + }, { + .start = MX27_INT_CSI, + .end = MX27_INT_CSI, + .flags = IORESOURCE_IRQ, + },{ + .start = MX27_INT_EMMAPRP, + .end = MX27_INT_EMMAPRP, + .flags = IORESOURCE_IRQ, + }, +}; +struct platform_device mx27_camera_device = { + .name = "mx2-camera", + .id = 0, + .num_resources = ARRAY_SIZE(mx27_camera_resources), + .resource = mx27_camera_resources, + .dev = { + .coherent_dma_mask = 0xffffffff, + }, +}; +#endif + /* * General Purpose Timer * - i.MX21: 3 timers @@ -554,4 +586,24 @@ struct platform_device mx21_usbhc_device = { .resource = mx21_usbhc_resources, }; #endif + +static struct resource imx_kpp_resources[] = { + { + .start = MX2x_KPP_BASE_ADDR, + .end = MX2x_KPP_BASE_ADDR + 0xf, + .flags = IORESOURCE_MEM + }, { + .start = MX2x_INT_KPP, + .end = MX2x_INT_KPP, + .flags = IORESOURCE_IRQ, + }, +}; + +struct platform_device imx_kpp_device = { + .name = "imx-keypad", + .id = -1, + .num_resources = ARRAY_SIZE(imx_kpp_resources), + .resource = imx_kpp_resources, +}; + #endif diff --git a/trunk/arch/arm/mach-imx/devices.h b/trunk/arch/arm/mach-imx/devices.h index 109f26cd3b1b..efd4527506a5 100644 --- a/trunk/arch/arm/mach-imx/devices.h +++ b/trunk/arch/arm/mach-imx/devices.h @@ -21,10 +21,12 @@ extern struct platform_device mxc_pwm_device; extern struct platform_device mxc_sdhc_device0; extern struct platform_device mxc_sdhc_device1; extern struct platform_device mxc_otg_udc_device; +extern struct platform_device mx27_camera_device; extern struct platform_device mxc_otg_host; extern struct platform_device mxc_usbh1; extern struct platform_device mxc_usbh2; extern struct platform_device mx21_usbhc_device; extern struct platform_device imx_ssi_device0; extern struct platform_device imx_ssi_device1; +extern struct platform_device imx_kpp_device; #endif diff --git a/trunk/arch/arm/mach-imx/eukrea_mbimx27-baseboard.c b/trunk/arch/arm/mach-imx/eukrea_mbimx27-baseboard.c index 1fb34f375b22..27e7226ec9d4 100644 --- a/trunk/arch/arm/mach-imx/eukrea_mbimx27-baseboard.c +++ b/trunk/arch/arm/mach-imx/eukrea_mbimx27-baseboard.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009 Eric Benard - eric@eukrea.com + * Copyright (C) 2009-2010 Eric Benard - eric@eukrea.com * * Based on pcm970-baseboard.c which is : * Copyright (C) 2008 Juergen Beisert (kernel@pengutronix.de) @@ -24,6 +24,9 @@ #include #include #include +#include +#include