--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
-@@ -139,6 +139,9 @@ config MACH_DECSTATION
+@@ -139,6 +139,9 @@
otherwise choose R3000.
config MACH_JAZZ
bool "Jazz family of machines"
select ARC
-@@ -693,6 +696,7 @@ source "arch/mips/txx9/Kconfig"
+@@ -695,6 +698,7 @@
source "arch/mips/vr41xx/Kconfig"
source "arch/mips/cavium-octeon/Kconfig"
source "arch/mips/loongson/Kconfig"
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
-@@ -317,6 +317,17 @@ cflags-$(CONFIG_MIPS_COBALT) += -I$(srct
+@@ -339,6 +339,17 @@
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
#
+obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
--- /dev/null
+++ b/arch/mips/lantiq/irq.c
-@@ -0,0 +1,212 @@
+@@ -0,0 +1,218 @@
+/*
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published
+
+#define LQ_ICU_OFFSET (LQ_ICU_IM1_ISR - LQ_ICU_IM0_ISR)
+
++#define LQ_EBU_BASE_ADDR 0xBE105300
++#define LQ_EBU_PCC_ISTAT ((u32 *)(LQ_EBU_BASE_ADDR + 0x00A0))
++
+void
+lq_disable_irq(unsigned int irq_nr)
+{
+ other bits might be bogus */
+ irq = __fls(irq);
+ do_IRQ((int)irq + INT_NUM_IM0_IRL0 + (INT_NUM_IM_OFFSET * module));
++ if ((irq == 22) && (module == 0))
++ lq_w32(lq_r32(LQ_EBU_PCC_ISTAT) | 0x10,
++ LQ_EBU_PCC_ISTAT);
+}
+
+#define DEFINE_HWx_IRQDISPATCH(x) \