diff options
author | Thomas Horsten <thomas@horsten.com> | 2008-06-13 21:32:42 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2008-06-16 10:14:48 -0400 |
commit | 0c3bd83b0974238a5808d342663c6407512564d0 (patch) | |
tree | 36d29bd9e53278fd4d73d2cc533043bfdcc53f46 | |
parent | d6c3048cad3c9eb312c070e11fdbea56498255ed (diff) |
[MIPS] Lasat: bring back from the dead
After the common MIPS CPU interrupt controller (for irq0-7) was introduced
the Lasat boards didn't get their interrupts right, so nothing worked. The
old routines need to be offset by the new 8 hardware interrupts common to
all MIPS CPU's.
Signed-off-by: Thomas Horsten <thomas@horsten.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r-- | arch/mips/lasat/interrupt.c | 2 | ||||
-rw-r--r-- | include/asm-mips/lasat/serial.h | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/arch/mips/lasat/interrupt.c b/arch/mips/lasat/interrupt.c index cfeab669782f..a56c15026965 100644 --- a/arch/mips/lasat/interrupt.c +++ b/arch/mips/lasat/interrupt.c | |||
@@ -34,11 +34,13 @@ static volatile int lasat_int_mask_shift; | |||
34 | 34 | ||
35 | void disable_lasat_irq(unsigned int irq_nr) | 35 | void disable_lasat_irq(unsigned int irq_nr) |
36 | { | 36 | { |
37 | irq_nr -= LASAT_IRQ_BASE; | ||
37 | *lasat_int_mask &= ~(1 << irq_nr) << lasat_int_mask_shift; | 38 | *lasat_int_mask &= ~(1 << irq_nr) << lasat_int_mask_shift; |
38 | } | 39 | } |
39 | 40 | ||
40 | void enable_lasat_irq(unsigned int irq_nr) | 41 | void enable_lasat_irq(unsigned int irq_nr) |
41 | { | 42 | { |
43 | irq_nr -= LASAT_IRQ_BASE; | ||
42 | *lasat_int_mask |= (1 << irq_nr) << lasat_int_mask_shift; | 44 | *lasat_int_mask |= (1 << irq_nr) << lasat_int_mask_shift; |
43 | } | 45 | } |
44 | 46 | ||
diff --git a/include/asm-mips/lasat/serial.h b/include/asm-mips/lasat/serial.h index bafe68b10614..1c37d70579b8 100644 --- a/include/asm-mips/lasat/serial.h +++ b/include/asm-mips/lasat/serial.h | |||
@@ -4,10 +4,10 @@ | |||
4 | #define LASAT_BASE_BAUD_100 (7372800 / 16) | 4 | #define LASAT_BASE_BAUD_100 (7372800 / 16) |
5 | #define LASAT_UART_REGS_BASE_100 0x1c8b0000 | 5 | #define LASAT_UART_REGS_BASE_100 0x1c8b0000 |
6 | #define LASAT_UART_REGS_SHIFT_100 2 | 6 | #define LASAT_UART_REGS_SHIFT_100 2 |
7 | #define LASATINT_UART_100 8 | 7 | #define LASATINT_UART_100 16 |
8 | 8 | ||
9 | /* * LASAT 200 boards serial configuration */ | 9 | /* * LASAT 200 boards serial configuration */ |
10 | #define LASAT_BASE_BAUD_200 (100000000 / 16 / 12) | 10 | #define LASAT_BASE_BAUD_200 (100000000 / 16 / 12) |
11 | #define LASAT_UART_REGS_BASE_200 (Vrc5074_PHYS_BASE + 0x0300) | 11 | #define LASAT_UART_REGS_BASE_200 (Vrc5074_PHYS_BASE + 0x0300) |
12 | #define LASAT_UART_REGS_SHIFT_200 3 | 12 | #define LASAT_UART_REGS_SHIFT_200 3 |
13 | #define LASATINT_UART_200 13 | 13 | #define LASATINT_UART_200 21 |