diff options
author | Jesper Nilsson <jesper.nilsson@axis.com> | 2008-01-15 05:59:12 -0500 |
---|---|---|
committer | Jesper Nilsson <jesper.nilsson@axis.com> | 2008-02-08 05:06:24 -0500 |
commit | 1e5915b173c4a729a818dbef020e166ceeaa321b (patch) | |
tree | 2c6aa14aceb389eac9a902d3f6bcc1ca5f679807 /include | |
parent | 0c2efc4848984ed38753d48990f0f0c72af56ba9 (diff) |
CRIS v32: Update asm-cris/arch-v32/irq.h for ETRAX FS and ARTPEC-3
- Correct include to use <>
- Rework calculation of number of IRQs and exceptions we have.
- Remove useless "mask" argument to BUILD_IRQ macro
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-cris/arch-v32/irq.h | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/include/asm-cris/arch-v32/irq.h b/include/asm-cris/arch-v32/irq.h index bac94ee6bc90..9e4c9fbdfddf 100644 --- a/include/asm-cris/arch-v32/irq.h +++ b/include/asm-cris/arch-v32/irq.h | |||
@@ -1,12 +1,17 @@ | |||
1 | #ifndef _ASM_ARCH_IRQ_H | 1 | #ifndef _ASM_ARCH_IRQ_H |
2 | #define _ASM_ARCH_IRQ_H | 2 | #define _ASM_ARCH_IRQ_H |
3 | 3 | ||
4 | #include "hwregs/intr_vect.h" | 4 | #include <hwregs/intr_vect.h> |
5 | 5 | ||
6 | /* Number of non-cpu interrupts. */ | 6 | /* Number of non-cpu interrupts. */ |
7 | #define NR_IRQS 0x50 /* Exceptions + IRQs */ | 7 | #define NR_IRQS NBR_INTR_VECT /* Exceptions + IRQs */ |
8 | #define NR_REAL_IRQS 0x20 /* IRQs */ | ||
9 | #define FIRST_IRQ 0x31 /* Exception number for first IRQ */ | 8 | #define FIRST_IRQ 0x31 /* Exception number for first IRQ */ |
9 | #define NR_REAL_IRQS (NBR_INTR_VECT - FIRST_IRQ) /* IRQs */ | ||
10 | #if NR_REAL_IRQS > 32 | ||
11 | #define MACH_IRQS 64 | ||
12 | #else | ||
13 | #define MACH_IRQS 32 | ||
14 | #endif | ||
10 | 15 | ||
11 | #ifndef __ASSEMBLY__ | 16 | #ifndef __ASSEMBLY__ |
12 | /* Global IRQ vector. */ | 17 | /* Global IRQ vector. */ |
@@ -73,7 +78,7 @@ void set_exception_vector(int n, irqvectptr addr); | |||
73 | * which will acknowledge the interrupt, is run. The actual blocking is made | 78 | * which will acknowledge the interrupt, is run. The actual blocking is made |
74 | * by crisv32_do_IRQ. | 79 | * by crisv32_do_IRQ. |
75 | */ | 80 | */ |
76 | #define BUILD_IRQ(nr, mask) \ | 81 | #define BUILD_IRQ(nr) \ |
77 | void IRQ_NAME(nr); \ | 82 | void IRQ_NAME(nr); \ |
78 | __asm__ ( \ | 83 | __asm__ ( \ |
79 | ".text\n\t" \ | 84 | ".text\n\t" \ |
@@ -81,7 +86,7 @@ __asm__ ( \ | |||
81 | SAVE_ALL \ | 86 | SAVE_ALL \ |
82 | KGDB_FIXUP \ | 87 | KGDB_FIXUP \ |
83 | "move.d "#nr",$r10\n\t" \ | 88 | "move.d "#nr",$r10\n\t" \ |
84 | "move.d $sp,$r12\n\t" \ | 89 | "move.d $sp, $r12\n\t" \ |
85 | "jsr crisv32_do_IRQ\n\t" \ | 90 | "jsr crisv32_do_IRQ\n\t" \ |
86 | "moveq 1, $r11\n\t" \ | 91 | "moveq 1, $r11\n\t" \ |
87 | "jump ret_from_intr\n\t" \ | 92 | "jump ret_from_intr\n\t" \ |