linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / arch / arm / mach-imx / generic.c
index 12ea58a..37613ad 100644 (file)
@@ -33,7 +33,6 @@
 #include <asm/arch/imx-regs.h>
 
 #include <asm/mach/map.h>
-#include <asm/arch/mmc.h>
 
 void imx_gpio_mode(int gpio_mode)
 {
@@ -176,24 +175,62 @@ static struct resource imx_mmc_resources[] = {
        },
 };
 
-static u64 imxmmmc_dmamask = 0xffffffffUL;
-
 static struct platform_device imx_mmc_device = {
        .name           = "imx-mmc",
        .id             = 0,
-       .dev            = {
-               .dma_mask = &imxmmmc_dmamask,
-               .coherent_dma_mask = 0xffffffff,
-       },
        .num_resources  = ARRAY_SIZE(imx_mmc_resources),
        .resource       = imx_mmc_resources,
 };
 
-void __init imx_set_mmc_info(struct imxmmc_platform_data *info)
-{
-       imx_mmc_device.dev.platform_data = info;
-}
-EXPORT_SYMBOL(imx_set_mmc_info);
+static struct resource imx_uart1_resources[] = {
+       [0] = {
+               .start  = 0x00206000,
+               .end    = 0x002060FF,
+               .flags  = IORESOURCE_MEM,
+       },
+       [1] = {
+               .start  = (UART1_MINT_RX),
+               .end    = (UART1_MINT_RX),
+               .flags  = IORESOURCE_IRQ,
+       },
+       [2] = {
+               .start  = (UART1_MINT_TX),
+               .end    = (UART1_MINT_TX),
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+static struct platform_device imx_uart1_device = {
+       .name           = "imx-uart",
+       .id             = 0,
+       .num_resources  = ARRAY_SIZE(imx_uart1_resources),
+       .resource       = imx_uart1_resources,
+};
+
+static struct resource imx_uart2_resources[] = {
+       [0] = {
+               .start  = 0x00207000,
+               .end    = 0x002070FF,
+               .flags  = IORESOURCE_MEM,
+       },
+       [1] = {
+               .start  = (UART2_MINT_RX),
+               .end    = (UART2_MINT_RX),
+               .flags  = IORESOURCE_IRQ,
+       },
+       [2] = {
+               .start  = (UART2_MINT_TX),
+               .end    = (UART2_MINT_TX),
+               .flags  = IORESOURCE_IRQ,
+       },
+};
+
+static struct platform_device imx_uart2_device = {
+       .name           = "imx-uart",
+       .id             = 1,
+       .num_resources  = ARRAY_SIZE(imx_uart2_resources),
+       .resource       = imx_uart2_resources,
+};
 
 static struct imxfb_mach_info imx_fb_info;
 
@@ -233,6 +270,8 @@ static struct platform_device imxfb_device = {
 static struct platform_device *devices[] __initdata = {
        &imx_mmc_device,
        &imxfb_device,
+       &imx_uart1_device,
+       &imx_uart2_device,
 };
 
 static struct map_desc imx_io_desc[] __initdata = {