diff options
author | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-05-30 09:48:57 +0000 |
---|---|---|
committer | florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2007-05-30 09:48:57 +0000 |
commit | f203cd4d6d968d81d98c76ef992ae91c17552b03 (patch) | |
tree | 7e4adaf8444d577096d54326c9c344e5bb36c6c0 /target/linux/adm5120-2.6/files | |
parent | 438c1a7f7eeb14b3f2e7a2661d2c0be3b407e1ab (diff) |
Minor fixes, do not count interrupts without interrupt source as spurious (#1755)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@7391 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/adm5120-2.6/files')
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 46f3bb05e..c53272e1e 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 d96d66a17..947b5b96a 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 3f4f36561..5767df8b2 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 |