diff options
Diffstat (limited to 'target/linux/ixp4xx/patches-2.6.25/191-cambria_optional_uart.patch')
-rw-r--r-- | target/linux/ixp4xx/patches-2.6.25/191-cambria_optional_uart.patch | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/target/linux/ixp4xx/patches-2.6.25/191-cambria_optional_uart.patch b/target/linux/ixp4xx/patches-2.6.25/191-cambria_optional_uart.patch deleted file mode 100644 index 5747aa7de..000000000 --- a/target/linux/ixp4xx/patches-2.6.25/191-cambria_optional_uart.patch +++ /dev/null @@ -1,97 +0,0 @@ ---- a/arch/arm/mach-ixp4xx/cambria-setup.c -+++ b/arch/arm/mach-ixp4xx/cambria-setup.c -@@ -36,6 +36,7 @@ - #include <asm/mach-types.h> - #include <asm/mach/arch.h> - #include <asm/mach/flash.h> -+#include <linux/irq.h> - - struct cambria_board_info { - unsigned char *model; -@@ -105,6 +106,43 @@ - .resource = &cambria_uart_resource, - }; - -+static struct resource cambria_optional_uart_resources[] = { -+ { -+ .start = 0x52000000, -+ .end = 0x52000fff, -+ .flags = IORESOURCE_MEM -+ }, -+ { -+ .start = 0x53000000, -+ .end = 0x53000fff, -+ .flags = IORESOURCE_MEM -+ } -+}; -+ -+static struct plat_serial8250_port cambria_optional_uart_data[] = { -+ { -+ .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, -+ .iotype = UPIO_MEM, -+ .regshift = 0, -+ .uartclk = 1843200, -+ }, -+ { -+ .flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST, -+ .iotype = UPIO_MEM, -+ .regshift = 0, -+ .uartclk = 1843200, -+ }, -+ { }, -+}; -+ -+static struct platform_device cambria_optional_uart = { -+ .name = "serial8250", -+ .id = PLAT8250_DEV_PLATFORM1, -+ .dev.platform_data = cambria_optional_uart_data, -+ .num_resources = 2, -+ .resource = cambria_optional_uart_resources, -+}; -+ - static struct resource cambria_pata_resources[] = { - { - .flags = IORESOURCE_MEM -@@ -287,6 +325,19 @@ - #ifdef CONFIG_SENSORS_EEPROM - static void __init cambria_gw2350_setup(void) - { -+ *IXP4XX_EXP_CS2 = 0xbfff0003; -+ set_irq_type(IRQ_IXP4XX_GPIO3, IRQT_BOTHEDGE); -+ cambria_optional_uart_data[0].mapbase = IXP4XX_EXP_BUS_BASE(2); -+ cambria_optional_uart_data[0].membase = (void __iomem *)ioremap(IXP4XX_EXP_BUS_BASE(2), 0x0fff); -+ cambria_optional_uart_data[0].irq = IRQ_IXP4XX_GPIO3; -+ -+ *IXP4XX_EXP_CS3 = 0xbfff0003; -+ set_irq_type(IRQ_IXP4XX_GPIO4, IRQT_BOTHEDGE); -+ cambria_optional_uart_data[1].mapbase = IXP4XX_EXP_BUS_BASE(3); -+ cambria_optional_uart_data[1].membase = (void __iomem *)ioremap(IXP4XX_EXP_BUS_BASE(3), 0x0fff); -+ cambria_optional_uart_data[1].irq = IRQ_IXP4XX_GPIO4; -+ -+ platform_device_register(&cambria_optional_uart); - platform_device_register(&cambria_npec_device); - platform_device_register(&cambria_npea_device); - -@@ -298,6 +349,22 @@ - - static void __init cambria_gw2358_setup(void) - { -+ *IXP4XX_EXP_CS3 = 0xbfff0003; -+ set_irq_type(IRQ_IXP4XX_GPIO3, IRQT_BOTHEDGE); -+ cambria_optional_uart_data[0].mapbase = 0x53FC0000; -+ cambria_optional_uart_data[0].membase = (void __iomem *)ioremap(0x53FC0000, 0x0fff); -+ cambria_optional_uart_data[0].irq = IRQ_IXP4XX_GPIO3; -+ -+ *IXP4XX_EXP_CS3 = 0xbfff0003; -+ set_irq_type(IRQ_IXP4XX_GPIO4, IRQT_BOTHEDGE); -+ cambria_optional_uart_data[1].mapbase = 0x53F80000; -+ cambria_optional_uart_data[1].membase = (void __iomem *)ioremap(0x53F80000, 0x0fff); -+ cambria_optional_uart_data[1].irq = IRQ_IXP4XX_GPIO4; -+ -+ platform_device_register(&cambria_optional_uart); -+ -+ cambria_npec_data.phy = 2; -+ cambria_npea_data.phy = 1; - platform_device_register(&cambria_npec_device); - platform_device_register(&cambria_npea_device); - |