aboutsummaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorFlorian Fainelli <florian@openwrt.org>2007-05-30 09:48:57 +0000
committerFlorian Fainelli <florian@openwrt.org>2007-05-30 09:48:57 +0000
commita35237e5b664ee5c48a0fc6e49940515e27b38df (patch)
treef4e95c2311e7a33c64d7a0eadae2539a1a8b5d6c /target
parent110d7e85f4a347964297f0d4ed6c8d5f245f5c71 (diff)
downloadupstream-a35237e5b664ee5c48a0fc6e49940515e27b38df.tar.gz
upstream-a35237e5b664ee5c48a0fc6e49940515e27b38df.tar.bz2
upstream-a35237e5b664ee5c48a0fc6e49940515e27b38df.zip
Minor fixes, do not count interrupts without interrupt source as spurious (#1755)
SVN-Revision: 7391
Diffstat (limited to 'target')
-rw-r--r--target/linux/adm5120-2.6/files/arch/mips/adm5120/irq.c11
-rw-r--r--target/linux/adm5120-2.6/files/arch/mips/adm5120/memory.c1
-rw-r--r--target/linux/adm5120-2.6/files/arch/mips/adm5120/setup.c4
3 files changed, 10 insertions, 6 deletions
diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/irq.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/irq.c
index 46f3bb05ee..c53272e1e0 100644
--- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/irq.c
+++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/irq.c
@@ -48,11 +48,12 @@ void adm5120_hw0_irqdispatch(struct pt_regs *regs)
intsrc = ADM5120_INTC_STATUS & ADM5120_IRQ_MASK;
- for (i = 0; intsrc; intsrc >>= 1, i++)
- if (intsrc & 0x1)
- do_IRQ(i);
- else
- spurious_interrupt();
+ if (intsrc) {
+ for (i = 0; intsrc; intsrc >>= 1, i++)
+ if (intsrc & 0x1)
+ do_IRQ(i);
+ } else
+ spurious_interrupt();
}
void mips_timer_interrupt(struct pt_regs *regs)
diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/memory.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/memory.c
index d96d66a17f..947b5b96a8 100644
--- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/memory.c
+++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/memory.c
@@ -38,6 +38,7 @@
#include <asm-mips/mips-boards/prom.h>
extern char *prom_getenv(char *envname);
+void prom_printf(char *, ...);
#define PFN_ALIGN(x) (((unsigned long)(x) + (PAGE_SIZE - 1)) & PAGE_MASK)
diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/setup.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/setup.c
index 3f4f365610..5767df8b23 100644
--- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/setup.c
+++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/setup.c
@@ -75,6 +75,7 @@ const char *get_system_type(void)
return adm5120_board_name();
}
+#ifdef CONFIG_USB
static struct resource adm5120_hcd_resources[] = {
[0] = {
.start = 0x11200000,
@@ -104,4 +105,5 @@ static int __init adm5120_init(void)
return platform_add_devices(devices, ARRAY_SIZE(devices));
}
-subsys_initcall(adm5120_init);
+arch_initcall(adm5120_init);
+#endif