enable the second uart on the WG302v1
authorImre Kaloz <kaloz@openwrt.org>
Thu, 31 Jul 2008 11:14:00 +0000 (11:14 +0000)
committerImre Kaloz <kaloz@openwrt.org>
Thu, 31 Jul 2008 11:14:00 +0000 (11:14 +0000)
SVN-Revision: 12040

target/linux/ixp4xx/patches-2.6.26/105-wg302v1_support.patch

index 102342322aff580cbf6b1d9c83473dcade36ab35..70c91db6372b60c95bda440d00d7689254082d57 100644 (file)
 +subsys_initcall(wg302v1_pci_init);
 --- /dev/null
 +++ b/arch/arm/mach-ixp4xx/wg302v1-setup.c
-@@ -0,0 +1,126 @@
+@@ -0,0 +1,142 @@
 +/*
 + * arch/arm/mach-ixp4xx/wg302v1-setup.c
 + *
 +      .resource       = &wg302v1_flash_resource,
 +};
 +
-+static struct resource wg302v1_uart_resource = {
-+      .start  = IXP4XX_UART1_BASE_PHYS,
-+      .end    = IXP4XX_UART1_BASE_PHYS + 0x0fff,
-+      .flags  = IORESOURCE_MEM,
++static struct resource wg302v1_uart_resources[] = {
++      {
++              .start  = IXP4XX_UART1_BASE_PHYS,
++              .end    = IXP4XX_UART1_BASE_PHYS + 0x0fff,
++              .flags  = IORESOURCE_MEM,
++      },
++      {
++              .start  = IXP4XX_UART2_BASE_PHYS,
++              .end    = IXP4XX_UART2_BASE_PHYS + 0x0fff,
++              .flags  = IORESOURCE_MEM,
++      }
 +};
 +
 +static struct plat_serial8250_port wg302v1_uart_data[] = {
 +              .regshift       = 2,
 +              .uartclk        = IXP4XX_UART_XTAL,
 +      },
++      {
++              .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,
++      },
 +      { },
 +};
 +
 +      .dev                    = {
 +              .platform_data  = wg302v1_uart_data,
 +      },
-+      .num_resources  = 1,
-+      .resource       = &wg302v1_uart_resource,
++      .num_resources  = 2,
++      .resource       = wg302v1_uart_resources,
 +};
 +
 +static struct eth_plat_info wg302v1_plat_eth[] = {