ARM: imx: move platform_data definitions
authorArnd Bergmann <arnd@arndb.de>
Fri, 24 Aug 2012 13:14:29 +0000 (15:14 +0200)
committerArnd Bergmann <arnd@arndb.de>
Fri, 14 Sep 2012 09:17:21 +0000 (11:17 +0200)
Platform data for device drivers should be defined in
include/linux/platform_data/*.h, not in the architecture
and platform specific directories.

This moves such data out of the imx include directories

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Acked-by: Sascha Hauer <kernel@pengutronix.de>
Acked-by: Vinod Koul <vinod.koul@linux.intel.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Dan Williams <djbw@fb.com>
Cc: "Ben Dooks (embedded platforms)" <ben-linux@fluff.org>
Cc: "Wolfram Sang (embedded platforms)" <w.sang@pengutronix.de>
Cc: Chris Ball <cjb@laptop.org>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Alan Cox <alan@linux.intel.com>
Cc: Felipe Balbi <balbi@ti.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Cc: Liam Girdwood <lrg@ti.com>
Cc: Javier Martin <javier.martin@vista-silicon.com>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
64 files changed:
arch/arm/mach-imx/ehci-imx25.c
arch/arm/mach-imx/ehci-imx27.c
arch/arm/mach-imx/ehci-imx31.c
arch/arm/mach-imx/ehci-imx35.c
arch/arm/mach-imx/ehci-imx5.c
arch/arm/mach-imx/mach-mx31moboard.c
arch/arm/mach-imx/mx1-camera-fiq-ksym.c
arch/arm/plat-mxc/devices/platform-sdhci-esdhc-imx.c
arch/arm/plat-mxc/include/mach/devices-common.h
arch/arm/plat-mxc/include/mach/dma.h [deleted file]
arch/arm/plat-mxc/include/mach/esdhc.h [deleted file]
arch/arm/plat-mxc/include/mach/i2c.h [deleted file]
arch/arm/plat-mxc/include/mach/imx-uart.h [deleted file]
arch/arm/plat-mxc/include/mach/imxfb.h [deleted file]
arch/arm/plat-mxc/include/mach/mmc.h [deleted file]
arch/arm/plat-mxc/include/mach/mx1_camera.h [deleted file]
arch/arm/plat-mxc/include/mach/mx21-usbhost.h [deleted file]
arch/arm/plat-mxc/include/mach/mx2_cam.h [deleted file]
arch/arm/plat-mxc/include/mach/mx3_camera.h [deleted file]
arch/arm/plat-mxc/include/mach/mx3fb.h [deleted file]
arch/arm/plat-mxc/include/mach/mxc_ehci.h [deleted file]
arch/arm/plat-mxc/include/mach/mxc_nand.h [deleted file]
arch/arm/plat-mxc/include/mach/sdma.h [deleted file]
arch/arm/plat-mxc/include/mach/spi.h [deleted file]
arch/arm/plat-mxc/include/mach/ssi.h [deleted file]
arch/arm/plat-mxc/include/mach/usb.h [deleted file]
arch/arm/plat-mxc/ssi-fiq-ksym.c
drivers/dma/imx-dma.c
drivers/dma/imx-sdma.c
drivers/i2c/busses/i2c-imx.c
drivers/media/video/mx1_camera.c
drivers/media/video/mx2_camera.c
drivers/media/video/mx3_camera.c
drivers/mmc/host/mxcmmc.c
drivers/mmc/host/sdhci-esdhc-imx.c
drivers/mtd/nand/mxc_nand.c
drivers/spi/spi-imx.c
drivers/tty/serial/imx.c
drivers/usb/gadget/imx_udc.c
drivers/usb/host/ehci-mxc.c
drivers/usb/host/imx21-hcd.h
drivers/video/imxfb.c
drivers/video/mx3fb.c
include/linux/platform_data/asoc-imx-ssi.h [new file with mode: 0644]
include/linux/platform_data/camera-mx1.h [new file with mode: 0644]
include/linux/platform_data/camera-mx2.h [new file with mode: 0644]
include/linux/platform_data/camera-mx3.h [new file with mode: 0644]
include/linux/platform_data/dma-imx-sdma.h [new file with mode: 0644]
include/linux/platform_data/dma-imx.h [new file with mode: 0644]
include/linux/platform_data/i2c-imx.h [new file with mode: 0644]
include/linux/platform_data/mmc-esdhc-imx.h [new file with mode: 0644]
include/linux/platform_data/mmc-mxcmmc.h [new file with mode: 0644]
include/linux/platform_data/mtd-mxc_nand.h [new file with mode: 0644]
include/linux/platform_data/serial-imx.h [new file with mode: 0644]
include/linux/platform_data/spi-imx.h [new file with mode: 0644]
include/linux/platform_data/usb-ehci-mxc.h [new file with mode: 0644]
include/linux/platform_data/usb-imx_udc.h [new file with mode: 0644]
include/linux/platform_data/usb-mx2.h [new file with mode: 0644]
include/linux/platform_data/video-imxfb.h [new file with mode: 0644]
include/linux/platform_data/video-mx3fb.h [new file with mode: 0644]
sound/soc/fsl/imx-pcm-dma.c
sound/soc/fsl/imx-pcm-fiq.c
sound/soc/fsl/imx-ssi.c
sound/soc/fsl/imx-ssi.h

index 05bb41d99728b3911ea6cfb8203a08cece9bdba7..412c583a24b01a7e35fc976572cdafc50e08e13e 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #define USBCTRL_OTGBASE_OFFSET 0x600
 
index fa69419eabdd2c4c5dc5c0bc5d7e902f091f6be8..cd6e1f81508d2351152094f9c7d24a95fce4a848 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #define USBCTRL_OTGBASE_OFFSET 0x600
 
index faad0f15ac7f0684787dc1e8247cba06d87ec770..9a880c78af34081bdca578f8da106d86770054bf 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #define USBCTRL_OTGBASE_OFFSET 0x600
 
index 73574c30cf50ca97c337eaa4ec9bd58d7a2c9dab..779e16eb65cb49aeaa58af79b19aac4e08b9bb47 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #define USBCTRL_OTGBASE_OFFSET 0x600
 
index a6a4afb0ad62d8a6738d70cc81137b5a2f014571..cf8d00e5cce13a778af20eded054b75aa9427c09 100644 (file)
@@ -17,7 +17,7 @@
 #include <linux/io.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #define MXC_OTG_OFFSET                 0
 #define MXC_H1_OFFSET                  0x200
index d46290b288eda7a6d6b0f26d5ed3f89c8f9195b6..459e754ef8c9162accb2d6b5c698af67cc52fa4d 100644 (file)
@@ -47,7 +47,7 @@
 #include <mach/hardware.h>
 #include <mach/iomux-mx3.h>
 #include <mach/ulpi.h>
-#include <mach/ssi.h>
+#include <linux/platform_data/asoc-imx-ssi.h>
 
 #include "devices-imx31.h"
 
index b09ee12a4ff0b7af7976d9c6967b519253ed8d33..fb38436ca67fe6c03b28a61818f76fb04a73e4b4 100644 (file)
@@ -11,7 +11,7 @@
 #include <linux/platform_device.h>
 #include <linux/module.h>
 
-#include <mach/mx1_camera.h>
+#include <linux/platform_data/camera-mx1.h>
 
 /* IMX camera FIQ handler */
 EXPORT_SYMBOL(mx1_camera_sof_fiq_start);
index 5955f5da82ee8796e199cbe11f2473c9df718ca5..3793e475cd954c5c7a39011998a9b3d333ce8a37 100644 (file)
@@ -8,7 +8,7 @@
 
 #include <mach/hardware.h>
 #include <mach/devices-common.h>
-#include <mach/esdhc.h>
+#include <linux/platform_data/mmc-esdhc-imx.h>
 
 #define imx_sdhci_esdhc_imx_data_entry_single(soc, _devid, _id, hwid) \
        {                                                               \
index a7f5bb1084d72da97843fb73468cdd1c8f4a70fd..9e3e3d8ae8c24fd56c6ea45d8783697ce991b50b 100644 (file)
@@ -9,7 +9,7 @@
 #include <linux/kernel.h>
 #include <linux/platform_device.h>
 #include <linux/init.h>
-#include <mach/sdma.h>
+#include <linux/platform_data/dma-imx-sdma.h>
 
 extern struct device mxc_aips_bus;
 extern struct device mxc_ahb_bus;
@@ -74,7 +74,7 @@ struct platform_device *__init imx_add_fsl_usb2_udc(
 struct platform_device *__init imx_add_gpio_keys(
                const struct gpio_keys_platform_data *pdata);
 
-#include <mach/mx21-usbhost.h>
+#include <linux/platform_data/usb-mx2.h>
 struct imx_imx21_hcd_data {
        resource_size_t iobase;
        resource_size_t irq;
@@ -98,7 +98,7 @@ struct imx_imxdi_rtc_data {
 struct platform_device *__init imx_add_imxdi_rtc(
                const struct imx_imxdi_rtc_data *data);
 
-#include <mach/imxfb.h>
+#include <linux/platform_data/video-imxfb.h>
 struct imx_imx_fb_data {
        resource_size_t iobase;
        resource_size_t iosize;
@@ -108,7 +108,7 @@ struct platform_device *__init imx_add_imx_fb(
                const struct imx_imx_fb_data *data,
                const struct imx_fb_platform_data *pdata);
 
-#include <mach/i2c.h>
+#include <linux/platform_data/i2c-imx.h>
 struct imx_imx_i2c_data {
        int id;
        resource_size_t iobase;
@@ -129,7 +129,7 @@ struct platform_device *__init imx_add_imx_keypad(
                const struct imx_imx_keypad_data *data,
                const struct matrix_keymap_data *pdata);
 
-#include <mach/ssi.h>
+#include <linux/platform_data/asoc-imx-ssi.h>
 struct imx_imx_ssi_data {
        int id;
        resource_size_t iobase;
@@ -144,7 +144,7 @@ struct platform_device *__init imx_add_imx_ssi(
                const struct imx_imx_ssi_data *data,
                const struct imx_ssi_platform_data *pdata);
 
-#include <mach/imx-uart.h>
+#include <linux/platform_data/serial-imx.h>
 struct imx_imx_uart_3irq_data {
        int id;
        resource_size_t iobase;
@@ -167,7 +167,7 @@ struct platform_device *__init imx_add_imx_uart_1irq(
                const struct imx_imx_uart_1irq_data *data,
                const struct imxuart_platform_data *pdata);
 
-#include <mach/usb.h>
+#include <linux/platform_data/usb-imx_udc.h>
 struct imx_imx_udc_data {
        resource_size_t iobase;
        resource_size_t iosize;
@@ -183,8 +183,8 @@ struct platform_device *__init imx_add_imx_udc(
                const struct imx_imx_udc_data *data,
                const struct imxusb_platform_data *pdata);
 
-#include <mach/mx3fb.h>
-#include <mach/mx3_camera.h>
+#include <linux/platform_data/video-mx3fb.h>
+#include <linux/platform_data/camera-mx3.h>
 struct imx_ipu_core_data {
        resource_size_t iobase;
        resource_size_t synirq;
@@ -199,7 +199,7 @@ struct platform_device *__init imx_add_mx3_sdc_fb(
                const struct imx_ipu_core_data *data,
                struct mx3fb_platform_data *pdata);
 
-#include <mach/mx1_camera.h>
+#include <linux/platform_data/camera-mx1.h>
 struct imx_mx1_camera_data {
        resource_size_t iobase;
        resource_size_t iosize;
@@ -209,7 +209,7 @@ struct platform_device *__init imx_add_mx1_camera(
                const struct imx_mx1_camera_data *data,
                const struct mx1_camera_pdata *pdata);
 
-#include <mach/mx2_cam.h>
+#include <linux/platform_data/camera-mx2.h>
 struct imx_mx2_camera_data {
        resource_size_t iobasecsi;
        resource_size_t iosizecsi;
@@ -224,7 +224,7 @@ struct platform_device *__init imx_add_mx2_camera(
 struct platform_device *__init imx_add_mx2_emmaprp(
                const struct imx_mx2_camera_data *data);
 
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 struct imx_mxc_ehci_data {
        int id;
        resource_size_t iobase;
@@ -234,7 +234,7 @@ struct platform_device *__init imx_add_mxc_ehci(
                const struct imx_mxc_ehci_data *data,
                const struct mxc_usbh_platform_data *pdata);
 
-#include <mach/mmc.h>
+#include <linux/platform_data/mmc-mxcmmc.h>
 struct imx_mxc_mmc_data {
        int id;
        resource_size_t iobase;
@@ -246,7 +246,7 @@ struct platform_device *__init imx_add_mxc_mmc(
                const struct imx_mxc_mmc_data *data,
                const struct imxmmc_platform_data *pdata);
 
-#include <mach/mxc_nand.h>
+#include <linux/platform_data/mtd-mxc_nand.h>
 struct imx_mxc_nand_data {
        /*
         * id is traditionally 0, but -1 is more appropriate.  We use -1 for new
@@ -295,7 +295,7 @@ struct imx_mxc_w1_data {
 struct platform_device *__init imx_add_mxc_w1(
                const struct imx_mxc_w1_data *data);
 
-#include <mach/esdhc.h>
+#include <linux/platform_data/mmc-esdhc-imx.h>
 struct imx_sdhci_esdhc_imx_data {
        const char *devid;
        int id;
@@ -306,7 +306,7 @@ struct platform_device *__init imx_add_sdhci_esdhc_imx(
                const struct imx_sdhci_esdhc_imx_data *data,
                const struct esdhc_platform_data *pdata);
 
-#include <mach/spi.h>
+#include <linux/platform_data/spi-imx.h>
 struct imx_spi_imx_data {
        const char *devid;
        int id;
diff --git a/arch/arm/plat-mxc/include/mach/dma.h b/arch/arm/plat-mxc/include/mach/dma.h
deleted file mode 100644 (file)
index 1b90803..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/*
- * Copyright 2004-2009 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_DMA_H__
-#define __ASM_ARCH_MXC_DMA_H__
-
-#include <linux/scatterlist.h>
-#include <linux/device.h>
-#include <linux/dmaengine.h>
-
-/*
- * This enumerates peripheral types. Used for SDMA.
- */
-enum sdma_peripheral_type {
-       IMX_DMATYPE_SSI,        /* MCU domain SSI */
-       IMX_DMATYPE_SSI_SP,     /* Shared SSI */
-       IMX_DMATYPE_MMC,        /* MMC */
-       IMX_DMATYPE_SDHC,       /* SDHC */
-       IMX_DMATYPE_UART,       /* MCU domain UART */
-       IMX_DMATYPE_UART_SP,    /* Shared UART */
-       IMX_DMATYPE_FIRI,       /* FIRI */
-       IMX_DMATYPE_CSPI,       /* MCU domain CSPI */
-       IMX_DMATYPE_CSPI_SP,    /* Shared CSPI */
-       IMX_DMATYPE_SIM,        /* SIM */
-       IMX_DMATYPE_ATA,        /* ATA */
-       IMX_DMATYPE_CCM,        /* CCM */
-       IMX_DMATYPE_EXT,        /* External peripheral */
-       IMX_DMATYPE_MSHC,       /* Memory Stick Host Controller */
-       IMX_DMATYPE_MSHC_SP,    /* Shared Memory Stick Host Controller */
-       IMX_DMATYPE_DSP,        /* DSP */
-       IMX_DMATYPE_MEMORY,     /* Memory */
-       IMX_DMATYPE_FIFO_MEMORY,/* FIFO type Memory */
-       IMX_DMATYPE_SPDIF,      /* SPDIF */
-       IMX_DMATYPE_IPU_MEMORY, /* IPU Memory */
-       IMX_DMATYPE_ASRC,       /* ASRC */
-       IMX_DMATYPE_ESAI,       /* ESAI */
-};
-
-enum imx_dma_prio {
-       DMA_PRIO_HIGH = 0,
-       DMA_PRIO_MEDIUM = 1,
-       DMA_PRIO_LOW = 2
-};
-
-struct imx_dma_data {
-       int dma_request; /* DMA request line */
-       enum sdma_peripheral_type peripheral_type;
-       int priority;
-};
-
-static inline int imx_dma_is_ipu(struct dma_chan *chan)
-{
-       return !strcmp(dev_name(chan->device->dev), "ipu-core");
-}
-
-static inline int imx_dma_is_general_purpose(struct dma_chan *chan)
-{
-       return strstr(dev_name(chan->device->dev), "sdma") ||
-               !strcmp(dev_name(chan->device->dev), "imx-dma");
-}
-
-#endif
diff --git a/arch/arm/plat-mxc/include/mach/esdhc.h b/arch/arm/plat-mxc/include/mach/esdhc.h
deleted file mode 100644 (file)
index aaf9748..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright 2010 Wolfram Sang <w.sang@pengutronix.de>
- *
- * 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; version 2
- * of the License.
- */
-
-#ifndef __ASM_ARCH_IMX_ESDHC_H
-#define __ASM_ARCH_IMX_ESDHC_H
-
-enum wp_types {
-       ESDHC_WP_NONE,          /* no WP, neither controller nor gpio */
-       ESDHC_WP_CONTROLLER,    /* mmc controller internal WP */
-       ESDHC_WP_GPIO,          /* external gpio pin for WP */
-};
-
-enum cd_types {
-       ESDHC_CD_NONE,          /* no CD, neither controller nor gpio */
-       ESDHC_CD_CONTROLLER,    /* mmc controller internal CD */
-       ESDHC_CD_GPIO,          /* external gpio pin for CD */
-       ESDHC_CD_PERMANENT,     /* no CD, card permanently wired to host */
-};
-
-/**
- * struct esdhc_platform_data - platform data for esdhc on i.MX
- *
- * ESDHC_WP(CD)_CONTROLLER type is not available on i.MX25/35.
- *
- * @wp_gpio:   gpio for write_protect
- * @cd_gpio:   gpio for card_detect interrupt
- * @wp_type:   type of write_protect method (see wp_types enum above)
- * @cd_type:   type of card_detect method (see cd_types enum above)
- */
-
-struct esdhc_platform_data {
-       unsigned int wp_gpio;
-       unsigned int cd_gpio;
-       enum wp_types wp_type;
-       enum cd_types cd_type;
-};
-#endif /* __ASM_ARCH_IMX_ESDHC_H */
diff --git a/arch/arm/plat-mxc/include/mach/i2c.h b/arch/arm/plat-mxc/include/mach/i2c.h
deleted file mode 100644 (file)
index 8289d91..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-/*
- * i2c.h - i.MX I2C driver header file
- *
- * Copyright (c) 2008, Darius Augulis <augulis.darius@gmail.com>
- *
- * This file is released under the GPLv2
- */
-
-#ifndef __ASM_ARCH_I2C_H_
-#define __ASM_ARCH_I2C_H_
-
-/**
- * struct imxi2c_platform_data - structure of platform data for MXC I2C driver
- * @bitrate:   Bus speed measured in Hz
- *
- **/
-struct imxi2c_platform_data {
-       u32 bitrate;
-};
-
-#endif /* __ASM_ARCH_I2C_H_ */
diff --git a/arch/arm/plat-mxc/include/mach/imx-uart.h b/arch/arm/plat-mxc/include/mach/imx-uart.h
deleted file mode 100644 (file)
index 4adec9b..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright (C) 2008 by Sascha Hauer <kernel@pengutronix.de>
- *
- * 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.
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-
-#ifndef ASMARM_ARCH_UART_H
-#define ASMARM_ARCH_UART_H
-
-#define IMXUART_HAVE_RTSCTS (1<<0)
-#define IMXUART_IRDA        (1<<1)
-
-struct imxuart_platform_data {
-       int (*init)(struct platform_device *pdev);
-       void (*exit)(struct platform_device *pdev);
-       unsigned int flags;
-       void (*irda_enable)(int enable);
-       unsigned int irda_inv_rx:1;
-       unsigned int irda_inv_tx:1;
-       unsigned short transceiver_delay;
-};
-
-#endif
diff --git a/arch/arm/plat-mxc/include/mach/imxfb.h b/arch/arm/plat-mxc/include/mach/imxfb.h
deleted file mode 100644 (file)
index 9de8f06..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * This structure describes the machine which we are running on.
- */
-#ifndef __MACH_IMXFB_H__
-#define __MACH_IMXFB_H__
-
-#include <linux/fb.h>
-
-#define PCR_TFT                (1 << 31)
-#define PCR_COLOR      (1 << 30)
-#define PCR_PBSIZ_1    (0 << 28)
-#define PCR_PBSIZ_2    (1 << 28)
-#define PCR_PBSIZ_4    (2 << 28)
-#define PCR_PBSIZ_8    (3 << 28)
-#define PCR_BPIX_1     (0 << 25)
-#define PCR_BPIX_2     (1 << 25)
-#define PCR_BPIX_4     (2 << 25)
-#define PCR_BPIX_8     (3 << 25)
-#define PCR_BPIX_12    (4 << 25)
-#define PCR_BPIX_16    (5 << 25)
-#define PCR_BPIX_18    (6 << 25)
-#define PCR_PIXPOL     (1 << 24)
-#define PCR_FLMPOL     (1 << 23)
-#define PCR_LPPOL      (1 << 22)
-#define PCR_CLKPOL     (1 << 21)
-#define PCR_OEPOL      (1 << 20)
-#define PCR_SCLKIDLE   (1 << 19)
-#define PCR_END_SEL    (1 << 18)
-#define PCR_END_BYTE_SWAP (1 << 17)
-#define PCR_REV_VS     (1 << 16)
-#define PCR_ACD_SEL    (1 << 15)
-#define PCR_ACD(x)     (((x) & 0x7f) << 8)
-#define PCR_SCLK_SEL   (1 << 7)
-#define PCR_SHARP      (1 << 6)
-#define PCR_PCD(x)     ((x) & 0x3f)
-
-#define PWMR_CLS(x)    (((x) & 0x1ff) << 16)
-#define PWMR_LDMSK     (1 << 15)
-#define PWMR_SCR1      (1 << 10)
-#define PWMR_SCR0      (1 << 9)
-#define PWMR_CC_EN     (1 << 8)
-#define PWMR_PW(x)     ((x) & 0xff)
-
-#define LSCR1_PS_RISE_DELAY(x)    (((x) & 0x7f) << 26)
-#define LSCR1_CLS_RISE_DELAY(x)   (((x) & 0x3f) << 16)
-#define LSCR1_REV_TOGGLE_DELAY(x) (((x) & 0xf) << 8)
-#define LSCR1_GRAY2(x)            (((x) & 0xf) << 4)
-#define LSCR1_GRAY1(x)            (((x) & 0xf))
-
-#define DMACR_BURST    (1 << 31)
-#define DMACR_HM(x)    (((x) & 0xf) << 16)
-#define DMACR_TM(x)    ((x) & 0xf)
-
-struct imx_fb_videomode {
-       struct fb_videomode mode;
-       u32 pcr;
-       unsigned char   bpp;
-};
-
-struct imx_fb_platform_data {
-       struct imx_fb_videomode *mode;
-       int             num_modes;
-
-       u_int           cmap_greyscale:1,
-                       cmap_inverse:1,
-                       cmap_static:1,
-                       unused:29;
-
-       u_int           pwmr;
-       u_int           lscr1;
-       u_int           dmacr;
-
-       u_char * fixed_screen_cpu;
-       dma_addr_t fixed_screen_dma;
-
-       int (*init)(struct platform_device *);
-       void (*exit)(struct platform_device *);
-
-       void (*lcd_power)(int);
-       void (*backlight_power)(int);
-};
-
-void set_imx_fb_info(struct imx_fb_platform_data *);
-#endif /* ifndef __MACH_IMXFB_H__ */
diff --git a/arch/arm/plat-mxc/include/mach/mmc.h b/arch/arm/plat-mxc/include/mach/mmc.h
deleted file mode 100644 (file)
index 29115f4..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef ASMARM_ARCH_MMC_H
-#define ASMARM_ARCH_MMC_H
-
-#include <linux/mmc/host.h>
-
-struct device;
-
-/* board specific SDHC data, optional.
- * If not present, a writable card with 3,3V is assumed.
- */
-struct imxmmc_platform_data {
-       /* Return values for the get_ro callback should be:
-        *   0 for a read/write card
-        *   1 for a read-only card
-        *   -ENOSYS when not supported (equal to NULL callback)
-        *   or a negative errno value when something bad happened
-        */
-       int (*get_ro)(struct device *);
-
-       /* board specific hook to (de)initialize the SD slot.
-        * The board code can call 'handler' on a card detection
-        * change giving data as argument.
-        */
-       int (*init)(struct device *dev, irq_handler_t handler, void *data);
-       void (*exit)(struct device *dev, void *data);
-
-       /* available voltages. If not given, assume
-        * MMC_VDD_32_33 | MMC_VDD_33_34
-        */
-       unsigned int ocr_avail;
-
-       /* adjust slot voltage */
-       void (*setpower)(struct device *, unsigned int vdd);
-
-       /* enable card detect using DAT3 */
-       int dat3_card_detect;
-};
-
-#endif
diff --git a/arch/arm/plat-mxc/include/mach/mx1_camera.h b/arch/arm/plat-mxc/include/mach/mx1_camera.h
deleted file mode 100644 (file)
index 4fd6c70..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * mx1_camera.h - i.MX1/i.MXL camera driver header file
- *
- * Copyright (c) 2008, Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
- * Copyright (C) 2009, Darius Augulis <augulis.darius@gmail.com>
- *
- * Based on PXA camera.h file:
- * Copyright (C) 2003, Intel Corporation
- * Copyright (C) 2008, Guennadi Liakhovetski <kernel@pengutronix.de>
- *
- * 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_ */
diff --git a/arch/arm/plat-mxc/include/mach/mx21-usbhost.h b/arch/arm/plat-mxc/include/mach/mx21-usbhost.h
deleted file mode 100644 (file)
index 22d0b59..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- *     Copyright (C) 2009 Martin Fuzzey <mfuzzey@gmail.com>
- *
- *     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.
- *
- *     This program is distributed in the hope that it will be useful,
- *     but WITHOUT ANY WARRANTY; without even the implied warranty of
- *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *     GNU General Public License for more details.
- */
-
-#ifndef __ASM_ARCH_MX21_USBH
-#define __ASM_ARCH_MX21_USBH
-
-enum mx21_usbh_xcvr {
-       /* Values below as used by hardware (HWMODE register) */
-       MX21_USBXCVR_TXDIF_RXDIF = 0,
-       MX21_USBXCVR_TXDIF_RXSE = 1,
-       MX21_USBXCVR_TXSE_RXDIF = 2,
-       MX21_USBXCVR_TXSE_RXSE = 3,
-};
-
-struct mx21_usbh_platform_data {
-       enum mx21_usbh_xcvr host_xcvr; /* tranceiver mode host 1,2 ports */
-       enum mx21_usbh_xcvr otg_xcvr; /* tranceiver mode otg (as host) port */
-       u16     enable_host1:1,
-               enable_host2:1,
-               enable_otg_host:1, /* enable "OTG" port (as host) */
-               host1_xcverless:1, /* traceiverless host1 port */
-               host1_txenoe:1, /* output enable host1 transmit enable */
-               otg_ext_xcvr:1, /* external tranceiver for OTG port */
-               unused:10;
-};
-
-#endif /* __ASM_ARCH_MX21_USBH */
diff --git a/arch/arm/plat-mxc/include/mach/mx2_cam.h b/arch/arm/plat-mxc/include/mach/mx2_cam.h
deleted file mode 100644 (file)
index 3c080a3..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * mx2-cam.h - i.MX27/i.MX25 camera driver header file
- *
- * Copyright (C) 2003, Intel Corporation
- * Copyright (C) 2008, Sascha Hauer <s.hauer@pengutronix.de>
- * Copyright (C) 2010, Baruch Siach <baruch@tkos.co.il>
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#ifndef __MACH_MX2_CAM_H_
-#define __MACH_MX2_CAM_H_
-
-#define MX2_CAMERA_SWAP16              (1 << 0)
-#define MX2_CAMERA_EXT_VSYNC           (1 << 1)
-#define MX2_CAMERA_CCIR                        (1 << 2)
-#define MX2_CAMERA_CCIR_INTERLACE      (1 << 3)
-#define MX2_CAMERA_HSYNC_HIGH          (1 << 4)
-#define MX2_CAMERA_GATED_CLOCK         (1 << 5)
-#define MX2_CAMERA_INV_DATA            (1 << 6)
-#define MX2_CAMERA_PCLK_SAMPLE_RISING  (1 << 7)
-#define MX2_CAMERA_PACK_DIR_MSB                (1 << 8)
-
-/**
- * struct mx2_camera_platform_data - optional platform data for mx2_camera
- * @flags: any combination of MX2_CAMERA_*
- * @clk: clock rate of the csi block / 2
- */
-struct mx2_camera_platform_data {
-       unsigned long flags;
-       unsigned long clk;
-};
-
-#endif /* __MACH_MX2_CAM_H_ */
diff --git a/arch/arm/plat-mxc/include/mach/mx3_camera.h b/arch/arm/plat-mxc/include/mach/mx3_camera.h
deleted file mode 100644 (file)
index f226ee3..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * mx3_camera.h - i.MX3x camera driver header file
- *
- * Copyright (C) 2008, Guennadi Liakhovetski, DENX Software Engineering, <lg@denx.de>
- *
- * 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.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- */
-
-#ifndef _MX3_CAMERA_H_
-#define _MX3_CAMERA_H_
-
-#include <linux/device.h>
-
-#define MX3_CAMERA_CLK_SRC     1
-#define MX3_CAMERA_EXT_VSYNC   2
-#define MX3_CAMERA_DP          4
-#define MX3_CAMERA_PCP         8
-#define MX3_CAMERA_HSP         0x10
-#define MX3_CAMERA_VSP         0x20
-#define MX3_CAMERA_DATAWIDTH_4 0x40
-#define MX3_CAMERA_DATAWIDTH_8 0x80
-#define MX3_CAMERA_DATAWIDTH_10        0x100
-#define MX3_CAMERA_DATAWIDTH_15        0x200
-
-#define MX3_CAMERA_DATAWIDTH_MASK (MX3_CAMERA_DATAWIDTH_4 | MX3_CAMERA_DATAWIDTH_8 | \
-                                  MX3_CAMERA_DATAWIDTH_10 | MX3_CAMERA_DATAWIDTH_15)
-
-/**
- * struct mx3_camera_pdata - i.MX3x camera platform data
- * @flags:     MX3_CAMERA_* flags
- * @mclk_10khz:        master clock frequency in 10kHz units
- * @dma_dev:   IPU DMA device to match against in channel allocation
- */
-struct mx3_camera_pdata {
-       unsigned long flags;
-       unsigned long mclk_10khz;
-       struct device *dma_dev;
-};
-
-#endif
diff --git a/arch/arm/plat-mxc/include/mach/mx3fb.h b/arch/arm/plat-mxc/include/mach/mx3fb.h
deleted file mode 100644 (file)
index fdbe600..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2008
- * Guennadi Liakhovetski, DENX Software Engineering, <lg@denx.de>
- *
- * 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_MX3FB_H__
-#define __ASM_ARCH_MX3FB_H__
-
-#include <linux/device.h>
-#include <linux/fb.h>
-
-/* Proprietary FB_SYNC_ flags */
-#define FB_SYNC_OE_ACT_HIGH    0x80000000
-#define FB_SYNC_CLK_INVERT     0x40000000
-#define FB_SYNC_DATA_INVERT    0x20000000
-#define FB_SYNC_CLK_IDLE_EN    0x10000000
-#define FB_SYNC_SHARP_MODE     0x08000000
-#define FB_SYNC_SWAP_RGB       0x04000000
-#define FB_SYNC_CLK_SEL_EN     0x02000000
-
-/*
- * Specify the way your display is connected. The IPU can arbitrarily
- * map the internal colors to the external data lines. We only support
- * the following mappings at the moment.
- */
-enum disp_data_mapping {
-       /* blue -> d[0..5], green -> d[6..11], red -> d[12..17] */
-       IPU_DISP_DATA_MAPPING_RGB666,
-       /* blue -> d[0..4], green -> d[5..10], red -> d[11..15] */
-       IPU_DISP_DATA_MAPPING_RGB565,
-       /* blue -> d[0..7], green -> d[8..15], red -> d[16..23] */
-       IPU_DISP_DATA_MAPPING_RGB888,
-};
-
-/**
- * struct mx3fb_platform_data - mx3fb platform data
- *
- * @dma_dev:   pointer to the dma-device, used for dma-slave connection
- * @mode:      pointer to a platform-provided per mxc_register_fb() videomode
- */
-struct mx3fb_platform_data {
-       struct device                   *dma_dev;
-       const char                      *name;
-       const struct fb_videomode       *mode;
-       int                             num_modes;
-       enum disp_data_mapping          disp_data_fmt;
-};
-
-#endif
diff --git a/arch/arm/plat-mxc/include/mach/mxc_ehci.h b/arch/arm/plat-mxc/include/mach/mxc_ehci.h
deleted file mode 100644 (file)
index 7eb9d13..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef __INCLUDE_ASM_ARCH_MXC_EHCI_H
-#define __INCLUDE_ASM_ARCH_MXC_EHCI_H
-
-/* values for portsc field */
-#define MXC_EHCI_PHY_LOW_POWER_SUSPEND (1 << 23)
-#define MXC_EHCI_FORCE_FS              (1 << 24)
-#define MXC_EHCI_UTMI_8BIT             (0 << 28)
-#define MXC_EHCI_UTMI_16BIT            (1 << 28)
-#define MXC_EHCI_SERIAL                        (1 << 29)
-#define MXC_EHCI_MODE_UTMI             (0 << 30)
-#define MXC_EHCI_MODE_PHILIPS          (1 << 30)
-#define MXC_EHCI_MODE_ULPI             (2 << 30)
-#define MXC_EHCI_MODE_SERIAL           (3 << 30)
-
-/* values for flags field */
-#define MXC_EHCI_INTERFACE_DIFF_UNI    (0 << 0)
-#define MXC_EHCI_INTERFACE_DIFF_BI     (1 << 0)
-#define MXC_EHCI_INTERFACE_SINGLE_UNI  (2 << 0)
-#define MXC_EHCI_INTERFACE_SINGLE_BI   (3 << 0)
-#define MXC_EHCI_INTERFACE_MASK                (0xf)
-
-#define MXC_EHCI_POWER_PINS_ENABLED    (1 << 5)
-#define MXC_EHCI_PWR_PIN_ACTIVE_HIGH   (1 << 6)
-#define MXC_EHCI_OC_PIN_ACTIVE_LOW     (1 << 7)
-#define MXC_EHCI_TTL_ENABLED           (1 << 8)
-
-#define MXC_EHCI_INTERNAL_PHY          (1 << 9)
-#define MXC_EHCI_IPPUE_DOWN            (1 << 10)
-#define MXC_EHCI_IPPUE_UP              (1 << 11)
-#define MXC_EHCI_WAKEUP_ENABLED                (1 << 12)
-#define MXC_EHCI_ITC_NO_THRESHOLD      (1 << 13)
-
-#define MXC_USBCTRL_OFFSET             0
-#define MXC_USB_PHY_CTR_FUNC_OFFSET    0x8
-#define MXC_USB_PHY_CTR_FUNC2_OFFSET   0xc
-#define MXC_USBH2CTRL_OFFSET           0x14
-
-#define MX5_USBOTHER_REGS_OFFSET       0x800
-
-/* USB_PHY_CTRL_FUNC2*/
-#define MX5_USB_UTMI_PHYCTRL1_PLLDIV_MASK              0x3
-#define MX5_USB_UTMI_PHYCTRL1_PLLDIV_SHIFT             0
-
-struct mxc_usbh_platform_data {
-       int (*init)(struct platform_device *pdev);
-       int (*exit)(struct platform_device *pdev);
-
-       unsigned int             portsc;
-       struct usb_phy          *otg;
-};
-
-int mx51_initialize_usb_hw(int port, unsigned int flags);
-int mx25_initialize_usb_hw(int port, unsigned int flags);
-int mx31_initialize_usb_hw(int port, unsigned int flags);
-int mx35_initialize_usb_hw(int port, unsigned int flags);
-int mx27_initialize_usb_hw(int port, unsigned int flags);
-
-#endif /* __INCLUDE_ASM_ARCH_MXC_EHCI_H */
-
diff --git a/arch/arm/plat-mxc/include/mach/mxc_nand.h b/arch/arm/plat-mxc/include/mach/mxc_nand.h
deleted file mode 100644 (file)
index 6bb96ef..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright 2004-2007 Freescale Semiconductor, Inc. All Rights Reserved.
- * Copyright 2008 Sascha Hauer, kernel@pengutronix.de
- *
- * 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.
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA 02110-1301, USA.
- */
-
-#ifndef __ASM_ARCH_NAND_H
-#define __ASM_ARCH_NAND_H
-
-#include <linux/mtd/partitions.h>
-
-struct mxc_nand_platform_data {
-       unsigned int width;     /* data bus width in bytes */
-       unsigned int hw_ecc:1;  /* 0 if suppress hardware ECC */
-       unsigned int flash_bbt:1; /* set to 1 to use a flash based bbt */
-       struct mtd_partition *parts;    /* partition table */
-       int nr_parts;                   /* size of parts */
-};
-#endif /* __ASM_ARCH_NAND_H */
diff --git a/arch/arm/plat-mxc/include/mach/sdma.h b/arch/arm/plat-mxc/include/mach/sdma.h
deleted file mode 100644 (file)
index 3a39428..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef __MACH_MXC_SDMA_H__
-#define __MACH_MXC_SDMA_H__
-
-/**
- * struct sdma_script_start_addrs - SDMA script start pointers
- *
- * start addresses of the different functions in the physical
- * address space of the SDMA engine.
- */
-struct sdma_script_start_addrs {
-       s32 ap_2_ap_addr;
-       s32 ap_2_bp_addr;
-       s32 ap_2_ap_fixed_addr;
-       s32 bp_2_ap_addr;
-       s32 loopback_on_dsp_side_addr;
-       s32 mcu_interrupt_only_addr;
-       s32 firi_2_per_addr;
-       s32 firi_2_mcu_addr;
-       s32 per_2_firi_addr;
-       s32 mcu_2_firi_addr;
-       s32 uart_2_per_addr;
-       s32 uart_2_mcu_addr;
-       s32 per_2_app_addr;
-       s32 mcu_2_app_addr;
-       s32 per_2_per_addr;
-       s32 uartsh_2_per_addr;
-       s32 uartsh_2_mcu_addr;
-       s32 per_2_shp_addr;
-       s32 mcu_2_shp_addr;
-       s32 ata_2_mcu_addr;
-       s32 mcu_2_ata_addr;
-       s32 app_2_per_addr;
-       s32 app_2_mcu_addr;
-       s32 shp_2_per_addr;
-       s32 shp_2_mcu_addr;
-       s32 mshc_2_mcu_addr;
-       s32 mcu_2_mshc_addr;
-       s32 spdif_2_mcu_addr;
-       s32 mcu_2_spdif_addr;
-       s32 asrc_2_mcu_addr;
-       s32 ext_mem_2_ipu_addr;
-       s32 descrambler_addr;
-       s32 dptc_dvfs_addr;
-       s32 utra_addr;
-       s32 ram_code_start_addr;
-};
-
-/**
- * struct sdma_platform_data - platform specific data for SDMA engine
- *
- * @fw_name            The firmware name
- * @script_addrs       SDMA scripts addresses in SDMA ROM
- */
-struct sdma_platform_data {
-       char *fw_name;
-       struct sdma_script_start_addrs *script_addrs;
-};
-
-#endif /* __MACH_MXC_SDMA_H__ */
diff --git a/arch/arm/plat-mxc/include/mach/spi.h b/arch/arm/plat-mxc/include/mach/spi.h
deleted file mode 100644 (file)
index 08be445..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-
-#ifndef __MACH_SPI_H_
-#define __MACH_SPI_H_
-
-/*
- * struct spi_imx_master - device.platform_data for SPI controller devices.
- * @chipselect: Array of chipselects for this master. Numbers >= 0 mean gpio
- *              pins, numbers < 0 mean internal CSPI chipselects according
- *              to MXC_SPI_CS(). Normally you want to use gpio based chip
- *              selects as the CSPI module tries to be intelligent about
- *              when to assert the chipselect: The CSPI module deasserts the
- *              chipselect once it runs out of input data. The other problem
- *              is that it is not possible to mix between high active and low
- *              active chipselects on one single bus using the internal
- *              chipselects. Unfortunately Freescale decided to put some
- *              chipselects on dedicated pins which are not usable as gpios,
- *              so we have to support the internal chipselects.
- * @num_chipselect: ARRAY_SIZE(chipselect)
- */
-struct spi_imx_master {
-       int     *chipselect;
-       int     num_chipselect;
-};
-
-#define MXC_SPI_CS(no) ((no) - 32)
-
-#endif /* __MACH_SPI_H_*/
diff --git a/arch/arm/plat-mxc/include/mach/ssi.h b/arch/arm/plat-mxc/include/mach/ssi.h
deleted file mode 100644 (file)
index 63f3c28..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-#ifndef __MACH_SSI_H
-#define __MACH_SSI_H
-
-struct snd_ac97;
-
-extern unsigned char imx_ssi_fiq_start, imx_ssi_fiq_end;
-extern unsigned long imx_ssi_fiq_base, imx_ssi_fiq_tx_buffer, imx_ssi_fiq_rx_buffer;
-
-struct imx_ssi_platform_data {
-       unsigned int flags;
-#define IMX_SSI_DMA            (1 << 0)
-#define IMX_SSI_USE_AC97       (1 << 1)
-#define IMX_SSI_NET            (1 << 2)
-#define IMX_SSI_SYN            (1 << 3)
-#define IMX_SSI_USE_I2S_SLAVE  (1 << 4)
-       void (*ac97_reset) (struct snd_ac97 *ac97);
-       void (*ac97_warm_reset)(struct snd_ac97 *ac97);
-};
-
-#endif /* __MACH_SSI_H */
-
diff --git a/arch/arm/plat-mxc/include/mach/usb.h b/arch/arm/plat-mxc/include/mach/usb.h
deleted file mode 100644 (file)
index be27337..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- *     Copyright (C) 2008 Darius Augulis <augulis.darius@gmail.com>
- *
- *     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.
- *
- *     This program is distributed in the hope that it will be useful,
- *     but WITHOUT ANY WARRANTY; without even the implied warranty of
- *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *     GNU General Public License for more details.
- */
-
-#ifndef __ASM_ARCH_MXC_USB
-#define __ASM_ARCH_MXC_USB
-
-struct imxusb_platform_data {
-       int (*init)(struct device *);
-       void (*exit)(struct device *);
-};
-
-#endif /* __ASM_ARCH_MXC_USB */
index b5fad454da784803434493d1feef75f61d781d64..792090f9a032b22b7bd5438a42aac1c0b0fe18e2 100644 (file)
@@ -10,7 +10,7 @@
 
 #include <linux/module.h>
 
-#include <mach/ssi.h>
+#include <linux/platform_data/asoc-imx-ssi.h>
 
 EXPORT_SYMBOL(imx_ssi_fiq_tx_buffer);
 EXPORT_SYMBOL(imx_ssi_fiq_rx_buffer);
index 5084975d793cd25949e62ae68f5932bd3c456763..b90aaec4ccc46112668afc100ce3f0f3715c193a 100644 (file)
@@ -28,7 +28,7 @@
 #include <linux/module.h>
 
 #include <asm/irq.h>
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx.h>
 #include <mach/hardware.h>
 
 #include "dmaengine.h"
index 1dc2a4ad0026d21c43720941a2670cf0518c60e0..1b781d6ac4254443dd4d03ab35318e918a93155d 100644 (file)
@@ -38,8 +38,8 @@
 #include <linux/of_device.h>
 
 #include <asm/irq.h>
-#include <mach/sdma.h>
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx-sdma.h>
+#include <linux/platform_data/dma-imx.h>
 #include <mach/hardware.h>
 
 #include "dmaengine.h"
index 0722f869465c3ba6e8904aa13c161abed412dbc9..b7907ba7448aad13ccaa399ffc8cd34b05e3f48d 100644 (file)
@@ -54,7 +54,7 @@
 #include <linux/pinctrl/consumer.h>
 
 #include <mach/hardware.h>
-#include <mach/i2c.h>
+#include <linux/platform_data/i2c-imx.h>
 
 /** Defines ********************************************************************
 *******************************************************************************/
index 560a65aa7038dd3cded8d08395958c70e3c537bb..bbe70991d30b6ac0b2ef598ccafba7519ab138b9 100644 (file)
@@ -44,7 +44,7 @@
 #include <mach/dma-mx1-mx2.h>
 #include <mach/hardware.h>
 #include <mach/irqs.h>
-#include <mach/mx1_camera.h>
+#include <linux/platform_data/camera-mx1.h>
 
 /*
  * CSI registers
index ac175406e582a0c12c2d62fe8de713f89a5353cc..965427f279a5b827c348a06f2cc7715f924482fd 100644 (file)
@@ -40,7 +40,7 @@
 
 #include <linux/videodev2.h>
 
-#include <mach/mx2_cam.h>
+#include <linux/platform_data/camera-mx2.h>
 #include <mach/hardware.h>
 
 #include <asm/dma.h>
index af2297dd49c8d7277000a03c2c4083ca0598aaa4..1481b0d419da8da4c8874c01cc26cd7d5703bac2 100644 (file)
@@ -25,8 +25,8 @@
 #include <media/soc_mediabus.h>
 
 #include <mach/ipu.h>
-#include <mach/mx3_camera.h>
-#include <mach/dma.h>
+#include <linux/platform_data/camera-mx3.h>
+#include <linux/platform_data/dma-imx.h>
 
 #define MX3_CAM_DRV_NAME "mx3-camera"
 
index 28ed52d58f7f5262d2ab9500095ee7ec478337f5..7b1161de01d60b0b68e26f2b7e6d9e41f79de82e 100644 (file)
@@ -38,9 +38,9 @@
 #include <asm/dma.h>
 #include <asm/irq.h>
 #include <asm/sizes.h>
-#include <mach/mmc.h>
+#include <linux/platform_data/mmc-mxcmmc.h>
 
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx.h>
 #include <mach/hardware.h>
 
 #define DRIVER_NAME "mxc-mmc"
index e23f8134591c7f5a080f73ffcacbf6fccb63516e..c4c504c4802bd5a4716a54d8ed7d12de170a5baf 100644 (file)
@@ -25,7 +25,7 @@
 #include <linux/of_device.h>
 #include <linux/of_gpio.h>
 #include <linux/pinctrl/consumer.h>
-#include <mach/esdhc.h>
+#include <linux/platform_data/mmc-esdhc-imx.h>
 #include "sdhci-pltfm.h"
 #include "sdhci-esdhc.h"
 
index 6acc790c2fbb96880ec29642a1d2e7e2528dbee9..5683604967d7687102bf97487d950a228ea8143a 100644 (file)
@@ -36,7 +36,7 @@
 #include <linux/of_mtd.h>
 
 #include <asm/mach/flash.h>
-#include <mach/mxc_nand.h>
+#include <linux/platform_data/mtd-mxc_nand.h>
 #include <mach/hardware.h>
 
 #define DRIVER_NAME "mxc_nand"
index e834ff8c0188281dc0fe25304c31df4294afde5f..63e7fc9801cd312c71a82ec70140e9357dfa6b3c 100644 (file)
@@ -39,7 +39,7 @@
 #include <linux/of_gpio.h>
 #include <linux/pinctrl/consumer.h>
 
-#include <mach/spi.h>
+#include <linux/platform_data/spi-imx.h>
 
 #define DRIVER_NAME "spi_imx"
 
index d5c689d6217e3a2eb46223fa1ffd01b77e15e0df..fc65ba2c2d5096d3a9b6d9a7905d4b9dab4a8c21 100644 (file)
@@ -51,7 +51,7 @@
 
 #include <asm/io.h>
 #include <asm/irq.h>
-#include <mach/imx-uart.h>
+#include <linux/platform_data/serial-imx.h>
 
 /* Register definitions */
 #define URXD0 0x0  /* Receiver Register */
index dc5334856afe7449745ff32c796c548eca772840..a0eb85794fd46a4853aa38c1609b6022bc9e4ebe 100644 (file)
@@ -35,7 +35,7 @@
 #include <linux/usb/ch9.h>
 #include <linux/usb/gadget.h>
 
-#include <mach/usb.h>
+#include <linux/platform_data/usb-imx_udc.h>
 #include <mach/hardware.h>
 
 #include "imx_udc.h"
index 34201372c85f57c799c13e4d8ceb7561629bb7e8..a6e2ea4ef8fd4fd08b74fa79a5b2af05ab94033d 100644 (file)
@@ -25,7 +25,7 @@
 #include <linux/slab.h>
 
 #include <mach/hardware.h>
-#include <mach/mxc_ehci.h>
+#include <linux/platform_data/usb-ehci-mxc.h>
 
 #include <asm/mach-types.h>
 
index 87b29fd971b40948eed24c424c7961516c6e8379..c005770a73e97e61f9ce7cdaaa40916c6f004234 100644 (file)
@@ -24,7 +24,7 @@
 #ifndef __LINUX_IMX21_HCD_H__
 #define __LINUX_IMX21_HCD_H__
 
-#include <mach/mx21-usbhost.h>
+#include <linux/platform_data/usb-mx2.h>
 
 #define NUM_ISO_ETDS   2
 #define USB_NUM_ETD    32
index caad3689b4e6fb4677a393c44a9373ff1543f851..53ffdfc82a75f18616b08b469cee6682595de989 100644 (file)
@@ -32,7 +32,7 @@
 #include <linux/io.h>
 #include <linux/math64.h>
 
-#include <mach/imxfb.h>
+#include <linux/platform_data/video-imxfb.h>
 #include <mach/hardware.h>
 
 /*
index c89f8a8d36d2b95c61c76f5c89ff53f8a01ac4e7..d7381088a180fc21bc655e1e63a2a0d431211021 100644 (file)
 #include <linux/clk.h>
 #include <linux/mutex.h>
 
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx.h>
 #include <mach/hardware.h>
 #include <mach/ipu.h>
-#include <mach/mx3fb.h>
+#include <linux/platform_data/video-mx3fb.h>
 
 #include <asm/io.h>
 #include <asm/uaccess.h>
diff --git a/include/linux/platform_data/asoc-imx-ssi.h b/include/linux/platform_data/asoc-imx-ssi.h
new file mode 100644 (file)
index 0000000..63f3c28
--- /dev/null
@@ -0,0 +1,21 @@
+#ifndef __MACH_SSI_H
+#define __MACH_SSI_H
+
+struct snd_ac97;
+
+extern unsigned char imx_ssi_fiq_start, imx_ssi_fiq_end;
+extern unsigned long imx_ssi_fiq_base, imx_ssi_fiq_tx_buffer, imx_ssi_fiq_rx_buffer;
+
+struct imx_ssi_platform_data {
+       unsigned int flags;
+#define IMX_SSI_DMA            (1 << 0)
+#define IMX_SSI_USE_AC97       (1 << 1)
+#define IMX_SSI_NET            (1 << 2)
+#define IMX_SSI_SYN            (1 << 3)
+#define IMX_SSI_USE_I2S_SLAVE  (1 << 4)
+       void (*ac97_reset) (struct snd_ac97 *ac97);
+       void (*ac97_warm_reset)(struct snd_ac97 *ac97);
+};
+
+#endif /* __MACH_SSI_H */
+
diff --git a/include/linux/platform_data/camera-mx1.h b/include/linux/platform_data/camera-mx1.h
new file mode 100644 (file)
index 0000000..4fd6c70
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * mx1_camera.h - i.MX1/i.MXL camera driver header file
+ *
+ * Copyright (c) 2008, Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
+ * Copyright (C) 2009, Darius Augulis <augulis.darius@gmail.com>
+ *
+ * Based on PXA camera.h file:
+ * Copyright (C) 2003, Intel Corporation
+ * Copyright (C) 2008, Guennadi Liakhovetski <kernel@pengutronix.de>
+ *
+ * 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_ */
diff --git a/include/linux/platform_data/camera-mx2.h b/include/linux/platform_data/camera-mx2.h
new file mode 100644 (file)
index 0000000..3c080a3
--- /dev/null
@@ -0,0 +1,46 @@
+/*
+ * mx2-cam.h - i.MX27/i.MX25 camera driver header file
+ *
+ * Copyright (C) 2003, Intel Corporation
+ * Copyright (C) 2008, Sascha Hauer <s.hauer@pengutronix.de>
+ * Copyright (C) 2010, Baruch Siach <baruch@tkos.co.il>
+ *
+ * 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifndef __MACH_MX2_CAM_H_
+#define __MACH_MX2_CAM_H_
+
+#define MX2_CAMERA_SWAP16              (1 << 0)
+#define MX2_CAMERA_EXT_VSYNC           (1 << 1)
+#define MX2_CAMERA_CCIR                        (1 << 2)
+#define MX2_CAMERA_CCIR_INTERLACE      (1 << 3)
+#define MX2_CAMERA_HSYNC_HIGH          (1 << 4)
+#define MX2_CAMERA_GATED_CLOCK         (1 << 5)
+#define MX2_CAMERA_INV_DATA            (1 << 6)
+#define MX2_CAMERA_PCLK_SAMPLE_RISING  (1 << 7)
+#define MX2_CAMERA_PACK_DIR_MSB                (1 << 8)
+
+/**
+ * struct mx2_camera_platform_data - optional platform data for mx2_camera
+ * @flags: any combination of MX2_CAMERA_*
+ * @clk: clock rate of the csi block / 2
+ */
+struct mx2_camera_platform_data {
+       unsigned long flags;
+       unsigned long clk;
+};
+
+#endif /* __MACH_MX2_CAM_H_ */
diff --git a/include/linux/platform_data/camera-mx3.h b/include/linux/platform_data/camera-mx3.h
new file mode 100644 (file)
index 0000000..f226ee3
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+ * mx3_camera.h - i.MX3x camera driver header file
+ *
+ * Copyright (C) 2008, Guennadi Liakhovetski, DENX Software Engineering, <lg@denx.de>
+ *
+ * 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.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef _MX3_CAMERA_H_
+#define _MX3_CAMERA_H_
+
+#include <linux/device.h>
+
+#define MX3_CAMERA_CLK_SRC     1
+#define MX3_CAMERA_EXT_VSYNC   2
+#define MX3_CAMERA_DP          4
+#define MX3_CAMERA_PCP         8
+#define MX3_CAMERA_HSP         0x10
+#define MX3_CAMERA_VSP         0x20
+#define MX3_CAMERA_DATAWIDTH_4 0x40
+#define MX3_CAMERA_DATAWIDTH_8 0x80
+#define MX3_CAMERA_DATAWIDTH_10        0x100
+#define MX3_CAMERA_DATAWIDTH_15        0x200
+
+#define MX3_CAMERA_DATAWIDTH_MASK (MX3_CAMERA_DATAWIDTH_4 | MX3_CAMERA_DATAWIDTH_8 | \
+                                  MX3_CAMERA_DATAWIDTH_10 | MX3_CAMERA_DATAWIDTH_15)
+
+/**
+ * struct mx3_camera_pdata - i.MX3x camera platform data
+ * @flags:     MX3_CAMERA_* flags
+ * @mclk_10khz:        master clock frequency in 10kHz units
+ * @dma_dev:   IPU DMA device to match against in channel allocation
+ */
+struct mx3_camera_pdata {
+       unsigned long flags;
+       unsigned long mclk_10khz;
+       struct device *dma_dev;
+};
+
+#endif
diff --git a/include/linux/platform_data/dma-imx-sdma.h b/include/linux/platform_data/dma-imx-sdma.h
new file mode 100644 (file)
index 0000000..3a39428
--- /dev/null
@@ -0,0 +1,59 @@
+#ifndef __MACH_MXC_SDMA_H__
+#define __MACH_MXC_SDMA_H__
+
+/**
+ * struct sdma_script_start_addrs - SDMA script start pointers
+ *
+ * start addresses of the different functions in the physical
+ * address space of the SDMA engine.
+ */
+struct sdma_script_start_addrs {
+       s32 ap_2_ap_addr;
+       s32 ap_2_bp_addr;
+       s32 ap_2_ap_fixed_addr;
+       s32 bp_2_ap_addr;
+       s32 loopback_on_dsp_side_addr;
+       s32 mcu_interrupt_only_addr;
+       s32 firi_2_per_addr;
+       s32 firi_2_mcu_addr;
+       s32 per_2_firi_addr;
+       s32 mcu_2_firi_addr;
+       s32 uart_2_per_addr;
+       s32 uart_2_mcu_addr;
+       s32 per_2_app_addr;
+       s32 mcu_2_app_addr;
+       s32 per_2_per_addr;
+       s32 uartsh_2_per_addr;
+       s32 uartsh_2_mcu_addr;
+       s32 per_2_shp_addr;
+       s32 mcu_2_shp_addr;
+       s32 ata_2_mcu_addr;
+       s32 mcu_2_ata_addr;
+       s32 app_2_per_addr;
+       s32 app_2_mcu_addr;
+       s32 shp_2_per_addr;
+       s32 shp_2_mcu_addr;
+       s32 mshc_2_mcu_addr;
+       s32 mcu_2_mshc_addr;
+       s32 spdif_2_mcu_addr;
+       s32 mcu_2_spdif_addr;
+       s32 asrc_2_mcu_addr;
+       s32 ext_mem_2_ipu_addr;
+       s32 descrambler_addr;
+       s32 dptc_dvfs_addr;
+       s32 utra_addr;
+       s32 ram_code_start_addr;
+};
+
+/**
+ * struct sdma_platform_data - platform specific data for SDMA engine
+ *
+ * @fw_name            The firmware name
+ * @script_addrs       SDMA scripts addresses in SDMA ROM
+ */
+struct sdma_platform_data {
+       char *fw_name;
+       struct sdma_script_start_addrs *script_addrs;
+};
+
+#endif /* __MACH_MXC_SDMA_H__ */
diff --git a/include/linux/platform_data/dma-imx.h b/include/linux/platform_data/dma-imx.h
new file mode 100644 (file)
index 0000000..1b90803
--- /dev/null
@@ -0,0 +1,67 @@
+/*
+ * Copyright 2004-2009 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_DMA_H__
+#define __ASM_ARCH_MXC_DMA_H__
+
+#include <linux/scatterlist.h>
+#include <linux/device.h>
+#include <linux/dmaengine.h>
+
+/*
+ * This enumerates peripheral types. Used for SDMA.
+ */
+enum sdma_peripheral_type {
+       IMX_DMATYPE_SSI,        /* MCU domain SSI */
+       IMX_DMATYPE_SSI_SP,     /* Shared SSI */
+       IMX_DMATYPE_MMC,        /* MMC */
+       IMX_DMATYPE_SDHC,       /* SDHC */
+       IMX_DMATYPE_UART,       /* MCU domain UART */
+       IMX_DMATYPE_UART_SP,    /* Shared UART */
+       IMX_DMATYPE_FIRI,       /* FIRI */
+       IMX_DMATYPE_CSPI,       /* MCU domain CSPI */
+       IMX_DMATYPE_CSPI_SP,    /* Shared CSPI */
+       IMX_DMATYPE_SIM,        /* SIM */
+       IMX_DMATYPE_ATA,        /* ATA */
+       IMX_DMATYPE_CCM,        /* CCM */
+       IMX_DMATYPE_EXT,        /* External peripheral */
+       IMX_DMATYPE_MSHC,       /* Memory Stick Host Controller */
+       IMX_DMATYPE_MSHC_SP,    /* Shared Memory Stick Host Controller */
+       IMX_DMATYPE_DSP,        /* DSP */
+       IMX_DMATYPE_MEMORY,     /* Memory */
+       IMX_DMATYPE_FIFO_MEMORY,/* FIFO type Memory */
+       IMX_DMATYPE_SPDIF,      /* SPDIF */
+       IMX_DMATYPE_IPU_MEMORY, /* IPU Memory */
+       IMX_DMATYPE_ASRC,       /* ASRC */
+       IMX_DMATYPE_ESAI,       /* ESAI */
+};
+
+enum imx_dma_prio {
+       DMA_PRIO_HIGH = 0,
+       DMA_PRIO_MEDIUM = 1,
+       DMA_PRIO_LOW = 2
+};
+
+struct imx_dma_data {
+       int dma_request; /* DMA request line */
+       enum sdma_peripheral_type peripheral_type;
+       int priority;
+};
+
+static inline int imx_dma_is_ipu(struct dma_chan *chan)
+{
+       return !strcmp(dev_name(chan->device->dev), "ipu-core");
+}
+
+static inline int imx_dma_is_general_purpose(struct dma_chan *chan)
+{
+       return strstr(dev_name(chan->device->dev), "sdma") ||
+               !strcmp(dev_name(chan->device->dev), "imx-dma");
+}
+
+#endif
diff --git a/include/linux/platform_data/i2c-imx.h b/include/linux/platform_data/i2c-imx.h
new file mode 100644 (file)
index 0000000..8289d91
--- /dev/null
@@ -0,0 +1,21 @@
+/*
+ * i2c.h - i.MX I2C driver header file
+ *
+ * Copyright (c) 2008, Darius Augulis <augulis.darius@gmail.com>
+ *
+ * This file is released under the GPLv2
+ */
+
+#ifndef __ASM_ARCH_I2C_H_
+#define __ASM_ARCH_I2C_H_
+
+/**
+ * struct imxi2c_platform_data - structure of platform data for MXC I2C driver
+ * @bitrate:   Bus speed measured in Hz
+ *
+ **/
+struct imxi2c_platform_data {
+       u32 bitrate;
+};
+
+#endif /* __ASM_ARCH_I2C_H_ */
diff --git a/include/linux/platform_data/mmc-esdhc-imx.h b/include/linux/platform_data/mmc-esdhc-imx.h
new file mode 100644 (file)
index 0000000..aaf9748
--- /dev/null
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2010 Wolfram Sang <w.sang@pengutronix.de>
+ *
+ * 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; version 2
+ * of the License.
+ */
+
+#ifndef __ASM_ARCH_IMX_ESDHC_H
+#define __ASM_ARCH_IMX_ESDHC_H
+
+enum wp_types {
+       ESDHC_WP_NONE,          /* no WP, neither controller nor gpio */
+       ESDHC_WP_CONTROLLER,    /* mmc controller internal WP */
+       ESDHC_WP_GPIO,          /* external gpio pin for WP */
+};
+
+enum cd_types {
+       ESDHC_CD_NONE,          /* no CD, neither controller nor gpio */
+       ESDHC_CD_CONTROLLER,    /* mmc controller internal CD */
+       ESDHC_CD_GPIO,          /* external gpio pin for CD */
+       ESDHC_CD_PERMANENT,     /* no CD, card permanently wired to host */
+};
+
+/**
+ * struct esdhc_platform_data - platform data for esdhc on i.MX
+ *
+ * ESDHC_WP(CD)_CONTROLLER type is not available on i.MX25/35.
+ *
+ * @wp_gpio:   gpio for write_protect
+ * @cd_gpio:   gpio for card_detect interrupt
+ * @wp_type:   type of write_protect method (see wp_types enum above)
+ * @cd_type:   type of card_detect method (see cd_types enum above)
+ */
+
+struct esdhc_platform_data {
+       unsigned int wp_gpio;
+       unsigned int cd_gpio;
+       enum wp_types wp_type;
+       enum cd_types cd_type;
+};
+#endif /* __ASM_ARCH_IMX_ESDHC_H */
diff --git a/include/linux/platform_data/mmc-mxcmmc.h b/include/linux/platform_data/mmc-mxcmmc.h
new file mode 100644 (file)
index 0000000..29115f4
--- /dev/null
@@ -0,0 +1,39 @@
+#ifndef ASMARM_ARCH_MMC_H
+#define ASMARM_ARCH_MMC_H
+
+#include <linux/mmc/host.h>
+
+struct device;
+
+/* board specific SDHC data, optional.
+ * If not present, a writable card with 3,3V is assumed.
+ */
+struct imxmmc_platform_data {
+       /* Return values for the get_ro callback should be:
+        *   0 for a read/write card
+        *   1 for a read-only card
+        *   -ENOSYS when not supported (equal to NULL callback)
+        *   or a negative errno value when something bad happened
+        */
+       int (*get_ro)(struct device *);
+
+       /* board specific hook to (de)initialize the SD slot.
+        * The board code can call 'handler' on a card detection
+        * change giving data as argument.
+        */
+       int (*init)(struct device *dev, irq_handler_t handler, void *data);
+       void (*exit)(struct device *dev, void *data);
+
+       /* available voltages. If not given, assume
+        * MMC_VDD_32_33 | MMC_VDD_33_34
+        */
+       unsigned int ocr_avail;
+
+       /* adjust slot voltage */
+       void (*setpower)(struct device *, unsigned int vdd);
+
+       /* enable card detect using DAT3 */
+       int dat3_card_detect;
+};
+
+#endif
diff --git a/include/linux/platform_data/mtd-mxc_nand.h b/include/linux/platform_data/mtd-mxc_nand.h
new file mode 100644 (file)
index 0000000..6bb96ef
--- /dev/null
@@ -0,0 +1,32 @@
+/*
+ * Copyright 2004-2007 Freescale Semiconductor, Inc. All Rights Reserved.
+ * Copyright 2008 Sascha Hauer, kernel@pengutronix.de
+ *
+ * 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.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+
+#ifndef __ASM_ARCH_NAND_H
+#define __ASM_ARCH_NAND_H
+
+#include <linux/mtd/partitions.h>
+
+struct mxc_nand_platform_data {
+       unsigned int width;     /* data bus width in bytes */
+       unsigned int hw_ecc:1;  /* 0 if suppress hardware ECC */
+       unsigned int flash_bbt:1; /* set to 1 to use a flash based bbt */
+       struct mtd_partition *parts;    /* partition table */
+       int nr_parts;                   /* size of parts */
+};
+#endif /* __ASM_ARCH_NAND_H */
diff --git a/include/linux/platform_data/serial-imx.h b/include/linux/platform_data/serial-imx.h
new file mode 100644 (file)
index 0000000..4adec9b
--- /dev/null
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2008 by Sascha Hauer <kernel@pengutronix.de>
+ *
+ * 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.
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ */
+
+#ifndef ASMARM_ARCH_UART_H
+#define ASMARM_ARCH_UART_H
+
+#define IMXUART_HAVE_RTSCTS (1<<0)
+#define IMXUART_IRDA        (1<<1)
+
+struct imxuart_platform_data {
+       int (*init)(struct platform_device *pdev);
+       void (*exit)(struct platform_device *pdev);
+       unsigned int flags;
+       void (*irda_enable)(int enable);
+       unsigned int irda_inv_rx:1;
+       unsigned int irda_inv_tx:1;
+       unsigned short transceiver_delay;
+};
+
+#endif
diff --git a/include/linux/platform_data/spi-imx.h b/include/linux/platform_data/spi-imx.h
new file mode 100644 (file)
index 0000000..08be445
--- /dev/null
@@ -0,0 +1,27 @@
+
+#ifndef __MACH_SPI_H_
+#define __MACH_SPI_H_
+
+/*
+ * struct spi_imx_master - device.platform_data for SPI controller devices.
+ * @chipselect: Array of chipselects for this master. Numbers >= 0 mean gpio
+ *              pins, numbers < 0 mean internal CSPI chipselects according
+ *              to MXC_SPI_CS(). Normally you want to use gpio based chip
+ *              selects as the CSPI module tries to be intelligent about
+ *              when to assert the chipselect: The CSPI module deasserts the
+ *              chipselect once it runs out of input data. The other problem
+ *              is that it is not possible to mix between high active and low
+ *              active chipselects on one single bus using the internal
+ *              chipselects. Unfortunately Freescale decided to put some
+ *              chipselects on dedicated pins which are not usable as gpios,
+ *              so we have to support the internal chipselects.
+ * @num_chipselect: ARRAY_SIZE(chipselect)
+ */
+struct spi_imx_master {
+       int     *chipselect;
+       int     num_chipselect;
+};
+
+#define MXC_SPI_CS(no) ((no) - 32)
+
+#endif /* __MACH_SPI_H_*/
diff --git a/include/linux/platform_data/usb-ehci-mxc.h b/include/linux/platform_data/usb-ehci-mxc.h
new file mode 100644 (file)
index 0000000..7eb9d13
--- /dev/null
@@ -0,0 +1,59 @@
+#ifndef __INCLUDE_ASM_ARCH_MXC_EHCI_H
+#define __INCLUDE_ASM_ARCH_MXC_EHCI_H
+
+/* values for portsc field */
+#define MXC_EHCI_PHY_LOW_POWER_SUSPEND (1 << 23)
+#define MXC_EHCI_FORCE_FS              (1 << 24)
+#define MXC_EHCI_UTMI_8BIT             (0 << 28)
+#define MXC_EHCI_UTMI_16BIT            (1 << 28)
+#define MXC_EHCI_SERIAL                        (1 << 29)
+#define MXC_EHCI_MODE_UTMI             (0 << 30)
+#define MXC_EHCI_MODE_PHILIPS          (1 << 30)
+#define MXC_EHCI_MODE_ULPI             (2 << 30)
+#define MXC_EHCI_MODE_SERIAL           (3 << 30)
+
+/* values for flags field */
+#define MXC_EHCI_INTERFACE_DIFF_UNI    (0 << 0)
+#define MXC_EHCI_INTERFACE_DIFF_BI     (1 << 0)
+#define MXC_EHCI_INTERFACE_SINGLE_UNI  (2 << 0)
+#define MXC_EHCI_INTERFACE_SINGLE_BI   (3 << 0)
+#define MXC_EHCI_INTERFACE_MASK                (0xf)
+
+#define MXC_EHCI_POWER_PINS_ENABLED    (1 << 5)
+#define MXC_EHCI_PWR_PIN_ACTIVE_HIGH   (1 << 6)
+#define MXC_EHCI_OC_PIN_ACTIVE_LOW     (1 << 7)
+#define MXC_EHCI_TTL_ENABLED           (1 << 8)
+
+#define MXC_EHCI_INTERNAL_PHY          (1 << 9)
+#define MXC_EHCI_IPPUE_DOWN            (1 << 10)
+#define MXC_EHCI_IPPUE_UP              (1 << 11)
+#define MXC_EHCI_WAKEUP_ENABLED                (1 << 12)
+#define MXC_EHCI_ITC_NO_THRESHOLD      (1 << 13)
+
+#define MXC_USBCTRL_OFFSET             0
+#define MXC_USB_PHY_CTR_FUNC_OFFSET    0x8
+#define MXC_USB_PHY_CTR_FUNC2_OFFSET   0xc
+#define MXC_USBH2CTRL_OFFSET           0x14
+
+#define MX5_USBOTHER_REGS_OFFSET       0x800
+
+/* USB_PHY_CTRL_FUNC2*/
+#define MX5_USB_UTMI_PHYCTRL1_PLLDIV_MASK              0x3
+#define MX5_USB_UTMI_PHYCTRL1_PLLDIV_SHIFT             0
+
+struct mxc_usbh_platform_data {
+       int (*init)(struct platform_device *pdev);
+       int (*exit)(struct platform_device *pdev);
+
+       unsigned int             portsc;
+       struct usb_phy          *otg;
+};
+
+int mx51_initialize_usb_hw(int port, unsigned int flags);
+int mx25_initialize_usb_hw(int port, unsigned int flags);
+int mx31_initialize_usb_hw(int port, unsigned int flags);
+int mx35_initialize_usb_hw(int port, unsigned int flags);
+int mx27_initialize_usb_hw(int port, unsigned int flags);
+
+#endif /* __INCLUDE_ASM_ARCH_MXC_EHCI_H */
+
diff --git a/include/linux/platform_data/usb-imx_udc.h b/include/linux/platform_data/usb-imx_udc.h
new file mode 100644 (file)
index 0000000..be27337
--- /dev/null
@@ -0,0 +1,23 @@
+/*
+ *     Copyright (C) 2008 Darius Augulis <augulis.darius@gmail.com>
+ *
+ *     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.
+ *
+ *     This program is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ */
+
+#ifndef __ASM_ARCH_MXC_USB
+#define __ASM_ARCH_MXC_USB
+
+struct imxusb_platform_data {
+       int (*init)(struct device *);
+       void (*exit)(struct device *);
+};
+
+#endif /* __ASM_ARCH_MXC_USB */
diff --git a/include/linux/platform_data/usb-mx2.h b/include/linux/platform_data/usb-mx2.h
new file mode 100644 (file)
index 0000000..22d0b59
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+ *     Copyright (C) 2009 Martin Fuzzey <mfuzzey@gmail.com>
+ *
+ *     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.
+ *
+ *     This program is distributed in the hope that it will be useful,
+ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *     GNU General Public License for more details.
+ */
+
+#ifndef __ASM_ARCH_MX21_USBH
+#define __ASM_ARCH_MX21_USBH
+
+enum mx21_usbh_xcvr {
+       /* Values below as used by hardware (HWMODE register) */
+       MX21_USBXCVR_TXDIF_RXDIF = 0,
+       MX21_USBXCVR_TXDIF_RXSE = 1,
+       MX21_USBXCVR_TXSE_RXDIF = 2,
+       MX21_USBXCVR_TXSE_RXSE = 3,
+};
+
+struct mx21_usbh_platform_data {
+       enum mx21_usbh_xcvr host_xcvr; /* tranceiver mode host 1,2 ports */
+       enum mx21_usbh_xcvr otg_xcvr; /* tranceiver mode otg (as host) port */
+       u16     enable_host1:1,
+               enable_host2:1,
+               enable_otg_host:1, /* enable "OTG" port (as host) */
+               host1_xcverless:1, /* traceiverless host1 port */
+               host1_txenoe:1, /* output enable host1 transmit enable */
+               otg_ext_xcvr:1, /* external tranceiver for OTG port */
+               unused:10;
+};
+
+#endif /* __ASM_ARCH_MX21_USBH */
diff --git a/include/linux/platform_data/video-imxfb.h b/include/linux/platform_data/video-imxfb.h
new file mode 100644 (file)
index 0000000..9de8f06
--- /dev/null
@@ -0,0 +1,84 @@
+/*
+ * This structure describes the machine which we are running on.
+ */
+#ifndef __MACH_IMXFB_H__
+#define __MACH_IMXFB_H__
+
+#include <linux/fb.h>
+
+#define PCR_TFT                (1 << 31)
+#define PCR_COLOR      (1 << 30)
+#define PCR_PBSIZ_1    (0 << 28)
+#define PCR_PBSIZ_2    (1 << 28)
+#define PCR_PBSIZ_4    (2 << 28)
+#define PCR_PBSIZ_8    (3 << 28)
+#define PCR_BPIX_1     (0 << 25)
+#define PCR_BPIX_2     (1 << 25)
+#define PCR_BPIX_4     (2 << 25)
+#define PCR_BPIX_8     (3 << 25)
+#define PCR_BPIX_12    (4 << 25)
+#define PCR_BPIX_16    (5 << 25)
+#define PCR_BPIX_18    (6 << 25)
+#define PCR_PIXPOL     (1 << 24)
+#define PCR_FLMPOL     (1 << 23)
+#define PCR_LPPOL      (1 << 22)
+#define PCR_CLKPOL     (1 << 21)
+#define PCR_OEPOL      (1 << 20)
+#define PCR_SCLKIDLE   (1 << 19)
+#define PCR_END_SEL    (1 << 18)
+#define PCR_END_BYTE_SWAP (1 << 17)
+#define PCR_REV_VS     (1 << 16)
+#define PCR_ACD_SEL    (1 << 15)
+#define PCR_ACD(x)     (((x) & 0x7f) << 8)
+#define PCR_SCLK_SEL   (1 << 7)
+#define PCR_SHARP      (1 << 6)
+#define PCR_PCD(x)     ((x) & 0x3f)
+
+#define PWMR_CLS(x)    (((x) & 0x1ff) << 16)
+#define PWMR_LDMSK     (1 << 15)
+#define PWMR_SCR1      (1 << 10)
+#define PWMR_SCR0      (1 << 9)
+#define PWMR_CC_EN     (1 << 8)
+#define PWMR_PW(x)     ((x) & 0xff)
+
+#define LSCR1_PS_RISE_DELAY(x)    (((x) & 0x7f) << 26)
+#define LSCR1_CLS_RISE_DELAY(x)   (((x) & 0x3f) << 16)
+#define LSCR1_REV_TOGGLE_DELAY(x) (((x) & 0xf) << 8)
+#define LSCR1_GRAY2(x)            (((x) & 0xf) << 4)
+#define LSCR1_GRAY1(x)            (((x) & 0xf))
+
+#define DMACR_BURST    (1 << 31)
+#define DMACR_HM(x)    (((x) & 0xf) << 16)
+#define DMACR_TM(x)    ((x) & 0xf)
+
+struct imx_fb_videomode {
+       struct fb_videomode mode;
+       u32 pcr;
+       unsigned char   bpp;
+};
+
+struct imx_fb_platform_data {
+       struct imx_fb_videomode *mode;
+       int             num_modes;
+
+       u_int           cmap_greyscale:1,
+                       cmap_inverse:1,
+                       cmap_static:1,
+                       unused:29;
+
+       u_int           pwmr;
+       u_int           lscr1;
+       u_int           dmacr;
+
+       u_char * fixed_screen_cpu;
+       dma_addr_t fixed_screen_dma;
+
+       int (*init)(struct platform_device *);
+       void (*exit)(struct platform_device *);
+
+       void (*lcd_power)(int);
+       void (*backlight_power)(int);
+};
+
+void set_imx_fb_info(struct imx_fb_platform_data *);
+#endif /* ifndef __MACH_IMXFB_H__ */
diff --git a/include/linux/platform_data/video-mx3fb.h b/include/linux/platform_data/video-mx3fb.h
new file mode 100644 (file)
index 0000000..fdbe600
--- /dev/null
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2008
+ * Guennadi Liakhovetski, DENX Software Engineering, <lg@denx.de>
+ *
+ * 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_MX3FB_H__
+#define __ASM_ARCH_MX3FB_H__
+
+#include <linux/device.h>
+#include <linux/fb.h>
+
+/* Proprietary FB_SYNC_ flags */
+#define FB_SYNC_OE_ACT_HIGH    0x80000000
+#define FB_SYNC_CLK_INVERT     0x40000000
+#define FB_SYNC_DATA_INVERT    0x20000000
+#define FB_SYNC_CLK_IDLE_EN    0x10000000
+#define FB_SYNC_SHARP_MODE     0x08000000
+#define FB_SYNC_SWAP_RGB       0x04000000
+#define FB_SYNC_CLK_SEL_EN     0x02000000
+
+/*
+ * Specify the way your display is connected. The IPU can arbitrarily
+ * map the internal colors to the external data lines. We only support
+ * the following mappings at the moment.
+ */
+enum disp_data_mapping {
+       /* blue -> d[0..5], green -> d[6..11], red -> d[12..17] */
+       IPU_DISP_DATA_MAPPING_RGB666,
+       /* blue -> d[0..4], green -> d[5..10], red -> d[11..15] */
+       IPU_DISP_DATA_MAPPING_RGB565,
+       /* blue -> d[0..7], green -> d[8..15], red -> d[16..23] */
+       IPU_DISP_DATA_MAPPING_RGB888,
+};
+
+/**
+ * struct mx3fb_platform_data - mx3fb platform data
+ *
+ * @dma_dev:   pointer to the dma-device, used for dma-slave connection
+ * @mode:      pointer to a platform-provided per mxc_register_fb() videomode
+ */
+struct mx3fb_platform_data {
+       struct device                   *dma_dev;
+       const char                      *name;
+       const struct fb_videomode       *mode;
+       int                             num_modes;
+       enum disp_data_mapping          disp_data_fmt;
+};
+
+#endif
index 48f9d886f0205a8b0255e93935ce44f3c5ff6f1e..89a7755b6f56b9d99c98bd6c77f8fbd4e274eda6 100644 (file)
@@ -30,7 +30,7 @@
 #include <sound/soc.h>
 #include <sound/dmaengine_pcm.h>
 
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx.h>
 
 #include "imx-pcm.h"
 
index ee27ba3933bd272399f6199b8614f68ef2ab07fe..22c6130957ba429626004f310469ac94444f56be 100644 (file)
@@ -30,7 +30,7 @@
 #include <asm/fiq.h>
 
 #include <mach/irqs.h>
-#include <mach/ssi.h>
+#include <linux/platform_data/asoc-imx-ssi.h>
 
 #include "imx-ssi.h"
 
index 81d7728cf67fb2d6f4ce1b4287319a0384f0d2d8..e6a17baca1eeebd05a6dc1b64c7288c384e17aeb 100644 (file)
@@ -47,7 +47,7 @@
 #include <sound/pcm_params.h>
 #include <sound/soc.h>
 
-#include <mach/ssi.h>
+#include <linux/platform_data/asoc-imx-ssi.h>
 #include <mach/hardware.h>
 
 #include "imx-ssi.h"
index 5744e86ca8781537dce529523bb58a37b35e5293..dc114bdedce5b9a0f008d3703a0b77d9537267c4 100644 (file)
 #define DRV_NAME "imx-ssi"
 
 #include <linux/dmaengine.h>
-#include <mach/dma.h>
+#include <linux/platform_data/dma-imx.h>
 #include "imx-pcm.h"
 
 struct imx_ssi {