]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-ixp4xx/coyote-setup.c
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
[linux-2.6-omap-h63xx.git] / arch / arm / mach-ixp4xx / coyote-setup.c
index c6335f51907dbd0481591df2628eacd34e165480..8b2f25322452b2c449ca02296128075e4a09918e 100644 (file)
 #include <asm/mach/arch.h>
 #include <asm/mach/flash.h>
 
-void __init coyote_map_io(void)
-{
-       ixp4xx_map_io();
-}
-
 static struct flash_platform_data coyote_flash_data = {
        .map_name       = "cfi_probe",
        .width          = 2,
@@ -36,7 +31,7 @@ static struct flash_platform_data coyote_flash_data = {
 
 static struct resource coyote_flash_resource = {
        .start          = COYOTE_FLASH_BASE,
-       .end            = COYOTE_FLASH_BASE + COYOTE_FLASH_SIZE,
+       .end            = COYOTE_FLASH_BASE + COYOTE_FLASH_SIZE - 1,
        .flags          = IORESOURCE_MEM,
 };
 
@@ -56,21 +51,24 @@ static struct resource coyote_uart_resource = {
        .flags  = IORESOURCE_MEM,
 };
 
-static struct plat_serial8250_port coyote_uart_data = {
-       .mapbase        = IXP4XX_UART2_BASE_PHYS,
-       .membase        = (char *)IXP4XX_UART2_BASE_VIRT + REG_OFFSET,
-       .irq            = IRQ_IXP4XX_UART2,
-       .flags          = UPF_BOOT_AUTOCONF,
-       .iotype         = UPIO_MEM,
-       .regshift       = 2,
-       .uartclk        = IXP4XX_UART_XTAL,
+static struct plat_serial8250_port coyote_uart_data[] = {
+       {
+               .mapbase        = IXP4XX_UART2_BASE_PHYS,
+               .membase        = (char *)IXP4XX_UART2_BASE_VIRT + REG_OFFSET,
+               .irq            = IRQ_IXP4XX_UART2,
+               .flags          = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST,
+               .iotype         = UPIO_MEM,
+               .regshift       = 2,
+               .uartclk        = IXP4XX_UART_XTAL,
+       },
+       { },
 };
 
 static struct platform_device coyote_uart = {
        .name           = "serial8250",
        .id             = 0,
        .dev                    = {
-               .platform_data  = &coyote_uart_data,
+               .platform_data  = coyote_uart_data,
        },
        .num_resources  = 1,
        .resource       = &coyote_uart_resource,
@@ -87,10 +85,10 @@ static void __init coyote_init(void)
        *IXP4XX_EXP_CS1 = *IXP4XX_EXP_CS0;
 
        if (machine_is_ixdpg425()) {
-               coyote_uart_data.membase =
+               coyote_uart_data[0].membase =
                        (char*)(IXP4XX_UART1_BASE_VIRT + REG_OFFSET);
-               coyote_uart_data.mapbase = IXP4XX_UART1_BASE_PHYS;
-               coyote_uart_data.irq = IRQ_IXP4XX_UART1;
+               coyote_uart_data[0].mapbase = IXP4XX_UART1_BASE_PHYS;
+               coyote_uart_data[0].irq = IRQ_IXP4XX_UART1;
        }
 
 
@@ -104,7 +102,7 @@ MACHINE_START(ADI_COYOTE, "ADI Engineering Coyote")
        .phys_ram       = PHYS_OFFSET,
        .phys_io        = IXP4XX_PERIPHERAL_BASE_PHYS,
        .io_pg_offst    = ((IXP4XX_PERIPHERAL_BASE_VIRT) >> 18) & 0xfffc,
-       .map_io         = coyote_map_io,
+       .map_io         = ixp4xx_map_io,
        .init_irq       = ixp4xx_init_irq,
        .timer          = &ixp4xx_timer,
        .boot_params    = 0x0100,
@@ -122,7 +120,7 @@ MACHINE_START(IXDPG425, "Intel IXDPG425")
        .phys_ram       = PHYS_OFFSET,
        .phys_io        = IXP4XX_PERIPHERAL_BASE_PHYS,
        .io_pg_offst    = ((IXP4XX_PERIPHERAL_BASE_VIRT) >> 18) & 0xfffc,
-       .map_io         = coyote_map_io,
+       .map_io         = ixp4xx_map_io,
        .init_irq       = ixp4xx_init_irq,
        .timer          = &ixp4xx_timer,
        .boot_params    = 0x0100,