diff options
| author | Jesper Nilsson <jesper.nilsson@axis.com> | 2007-11-14 20:00:59 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-11-14 21:45:45 -0500 |
| commit | 7b275523aba522aa76891861ee32ba2456e5f146 (patch) | |
| tree | 6b5fa5c7916af2d91b81ca1eec3352a63eabe3ab /arch/cris/kernel | |
| parent | 633edf5a4fff0675851e377cc5f0c9072683a5f4 (diff) | |
cris build fixes: corrected and improved NMI and IRQ handling
Corrects compile errors and the following:
- Remove oldset parameter from do_signal and do_notify_resume.
- Modified to fit new consolidated IRQ handling code.
- Reverse check order between external nmi and watchdog nmi to avoid false
watchdog oops in case of a glitch on the nmi pin.
- Return from an pin-generated NMI the same way as for other interrupts.
- Moved blocking of ethernet rx/tx irq from ethernet interrupt handler to
low-level asm interrupt handlers. Fixed in the multiple interrupt
handler also.
- Add space for thread local storage in thread_info struct.
- Add NO_DMA to Kconfig, and include arch specific Kconfig using arch
independent path. Include subsystem Kconfigs for pcmcia, usb, i2c,
rtc and pci.
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
Acked-by: Mikael Starvik <starvik@axis.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/cris/kernel')
| -rw-r--r-- | arch/cris/kernel/process.c | 5 | ||||
| -rw-r--r-- | arch/cris/kernel/ptrace.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/arch/cris/kernel/process.c b/arch/cris/kernel/process.c index 123451c441..9ca558fc5b 100644 --- a/arch/cris/kernel/process.c +++ b/arch/cris/kernel/process.c | |||
| @@ -195,6 +195,11 @@ EXPORT_SYMBOL(enable_hlt); | |||
| 195 | */ | 195 | */ |
| 196 | void (*pm_idle)(void); | 196 | void (*pm_idle)(void); |
| 197 | 197 | ||
| 198 | extern void default_idle(void); | ||
| 199 | |||
| 200 | void (*pm_power_off)(void); | ||
| 201 | EXPORT_SYMBOL(pm_power_off); | ||
| 202 | |||
| 198 | /* | 203 | /* |
| 199 | * The idle thread. There's no useful work to be | 204 | * The idle thread. There's no useful work to be |
| 200 | * done, so just try to conserve power and have a | 205 | * done, so just try to conserve power and have a |
diff --git a/arch/cris/kernel/ptrace.c b/arch/cris/kernel/ptrace.c index 1085d03702..3ccd20e85d 100644 --- a/arch/cris/kernel/ptrace.c +++ b/arch/cris/kernel/ptrace.c | |||
| @@ -81,13 +81,13 @@ | |||
| 81 | /* notification of userspace execution resumption | 81 | /* notification of userspace execution resumption |
| 82 | * - triggered by current->work.notify_resume | 82 | * - triggered by current->work.notify_resume |
| 83 | */ | 83 | */ |
| 84 | extern int do_signal(int canrestart, sigset_t *oldset, struct pt_regs *regs); | 84 | extern int do_signal(int canrestart, struct pt_regs *regs); |
| 85 | 85 | ||
| 86 | 86 | ||
| 87 | void do_notify_resume(int canrestart, sigset_t *oldset, struct pt_regs *regs, | 87 | void do_notify_resume(int canrestart, struct pt_regs *regs, |
| 88 | __u32 thread_info_flags ) | 88 | __u32 thread_info_flags ) |
| 89 | { | 89 | { |
| 90 | /* deal with pending signal delivery */ | 90 | /* deal with pending signal delivery */ |
| 91 | if (thread_info_flags & _TIF_SIGPENDING) | 91 | if (thread_info_flags & _TIF_SIGPENDING) |
| 92 | do_signal(canrestart,oldset,regs); | 92 | do_signal(canrestart,regs); |
| 93 | } | 93 | } |
