fix CBUS UART registration
authorFlorian Fainelli <florian@openwrt.org>
Tue, 13 Nov 2012 17:20:14 +0000 (17:20 +0000)
committerFlorian Fainelli <florian@openwrt.org>
Tue, 13 Nov 2012 17:20:14 +0000 (17:20 +0000)
Signed-off-by: Florian Fainelli <florian@openwrt.org>
SVN-Revision: 34191

target/linux/malta/patches-3.6/001-MIPS-fix-CBUS-UART-irq.patch [new file with mode: 0644]
target/linux/malta/patches-3.6/index.html?p=ralf%2Flinux.git;a=patch;h=4ade440f81a3 [new file with mode: 0644]

diff --git a/target/linux/malta/patches-3.6/001-MIPS-fix-CBUS-UART-irq.patch b/target/linux/malta/patches-3.6/001-MIPS-fix-CBUS-UART-irq.patch
new file mode 100644 (file)
index 0000000..93f93a7
--- /dev/null
@@ -0,0 +1,39 @@
+From 132a7253fe87b1f4d71aab5abee3108a793234db Mon Sep 17 00:00:00 2001
+From: Ralf Baechle <ralf@linux-mips.org>
+Date: Tue, 13 Nov 2012 10:41:50 +0100
+Subject: [PATCH] MIPS: Malta: Fix interupt number of CBUS UART.
+
+The CBUS UART's interrupt number was wrong conflicting with the interrupt
+being tied to the Intel PIIX4.  Since the PIIX4's interrupt is registered
+before the CBUS UART which is not being used on most systems this would
+not be noticed.
+
+Attempts to open the ttyS2 CBUS UART would result in:
+
+genirq: Flags mismatch irq 18. 00000000 (serial) vs. 00010000 (XT-PIC cascade)
+serial_link_irq_chain: request failed: -16 for irq: 18
+
+Qemu was written to match the kernel so will need to be fixed also.
+
+Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
+(cherry picked from commit fe2ccd4dcebd3c5e264af1705bb9b659972418cc)
+---
+ arch/mips/mti-malta/malta-platform.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/mips/mti-malta/malta-platform.c b/arch/mips/mti-malta/malta-platform.c
+index a8beca8..a906153 100644
+--- a/arch/mips/mti-malta/malta-platform.c
++++ b/arch/mips/mti-malta/malta-platform.c
+@@ -47,7 +47,7 @@ static struct plat_serial8250_port uart8250_data[] = {
+       SMC_PORT(0x2F8, 3),
+       {
+               .mapbase        = 0x1f000900,   /* The CBUS UART */
+-              .irq            = MIPS_CPU_IRQ_BASE + 2,
++              .irq            = MIPS_CPU_IRQ_BASE + MIPSCPU_INT_MB2,
+               .uartclk        = 3686400,      /* Twice the usual clk! */
+               .iotype         = UPIO_MEM32,
+               .flags          = CBUS_UART_FLAGS,
+-- 
+1.7.11.7
+
diff --git a/target/linux/malta/patches-3.6/index.html?p=ralf%2Flinux.git;a=patch;h=4ade440f81a3 b/target/linux/malta/patches-3.6/index.html?p=ralf%2Flinux.git;a=patch;h=4ade440f81a3
new file mode 100644 (file)
index 0000000..f14cdb2
--- /dev/null
@@ -0,0 +1,28 @@
+From 4ade440f81a3c248068d8b89eea7754cc8705b58 Mon Sep 17 00:00:00 2001
+From: Ralf Baechle <ralf@linux-mips.org>
+Date: Tue, 13 Nov 2012 14:33:30 +0100
+Subject: [PATCH] MIPS: Malta: Fix build error
+
+Caused by fe2ccd4dcebd3c5e264af1705bb9b659972418cc [MIPS: Malta: Fix
+interupt number of CBUS UART.]
+
+Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
+---
+ arch/mips/mti-malta/malta-platform.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/mips/mti-malta/malta-platform.c b/arch/mips/mti-malta/malta-platform.c
+index c154181..7473217 100644
+--- a/arch/mips/mti-malta/malta-platform.c
++++ b/arch/mips/mti-malta/malta-platform.c
+@@ -29,6 +29,7 @@
+ #include <linux/mtd/partitions.h>
+ #include <linux/mtd/physmap.h>
+ #include <linux/platform_device.h>
++#include <asm/mips-boards/maltaint.h>
+ #include <mtd/mtd-abi.h>
+ #define SMC_PORT(base, int)                                           \
+-- 
+1.7.11.7
+