aboutsummaryrefslogtreecommitdiffstats
path: root/bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch
diff options
context:
space:
mode:
Diffstat (limited to 'bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch')
-rw-r--r--bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch44
1 files changed, 0 insertions, 44 deletions
diff --git a/bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch b/bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch
deleted file mode 100644
index 313a04d7..00000000
--- a/bsp/qemu-ppc32/qemu-powerpc-work-around-for-qemu-powerpc-32-interru.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 209ea269a862451a4bed62f2930c4ba82aaf5368 Mon Sep 17 00:00:00 2001
-From: Jason Wessel <jason.wessel@windriver.com>
-Date: Wed, 3 Feb 2010 13:51:19 -0500
-Subject: [PATCH] qemu, powerpc: work around for qemu powerpc 32 interrupts
-
-Workaround for QEMU powerpc 32 to force interrupt acknoledgement
-
-Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
-Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
-diff --git a/arch/powerpc/platforms/qemu/Kconfig b/arch/powerpc/platforms/qemu/Kconfig
-index d64ed92..366e50c 100644
---- a/arch/powerpc/platforms/qemu/Kconfig
-+++ b/arch/powerpc/platforms/qemu/Kconfig
-@@ -1,6 +1,6 @@
- config PPC_QEMU
- bool "QEMU emulated PowerPC Reference Platform (PReP) system"
-- depends on PPC_MULTIPLATFORM && PPC32
-+ depends on PPC32
- select PPC_I8259
- select PPC_INDIRECT_PCI
- select PPC_UDBG_16550
-diff --git a/kernel/irq/chip.c b/kernel/irq/chip.c
-index 616ec1c..4a22fa6 100644
---- a/kernel/irq/chip.c
-+++ b/kernel/irq/chip.c
-@@ -137,9 +137,18 @@ struct irq_data *irq_get_irq_data(unsigned int irq)
- }
- EXPORT_SYMBOL_GPL(irq_get_irq_data);
-
-+#define IRQ_DELAYED_DISABLE 0x10000000 /* IRQ disable (masking) happens delayed. */
-+
- static void irq_state_clr_disabled(struct irq_desc *desc)
- {
-+#ifdef CONFIG_PPC_QEMU
-+ struct irq_desc *desc = irq_data_to_desc(irq);
-+
-+ if (!(desc->status & IRQ_DELAYED_DISABLE))
-+ desc->chip->mask(irq);
-+#else
- irqd_clear(&desc->irq_data, IRQD_IRQ_DISABLED);
-+#endif /* CONFIG_PPC_QEMU */
- }
-
- static void irq_state_set_disabled(struct irq_desc *desc)