diff options
Diffstat (limited to 'include/asm-sh/system.h')
-rw-r--r-- | include/asm-sh/system.h | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/include/asm-sh/system.h b/include/asm-sh/system.h index 82f3e229e621..245042537205 100644 --- a/include/asm-sh/system.h +++ b/include/asm-sh/system.h | |||
@@ -8,9 +8,13 @@ | |||
8 | 8 | ||
9 | #include <linux/irqflags.h> | 9 | #include <linux/irqflags.h> |
10 | #include <linux/compiler.h> | 10 | #include <linux/compiler.h> |
11 | #include <linux/linkage.h> | ||
11 | #include <asm/types.h> | 12 | #include <asm/types.h> |
12 | #include <asm/ptrace.h> | 13 | #include <asm/ptrace.h> |
13 | 14 | ||
15 | struct task_struct *__switch_to(struct task_struct *prev, | ||
16 | struct task_struct *next); | ||
17 | |||
14 | /* | 18 | /* |
15 | * switch_to() should switch tasks to task nr n, first | 19 | * switch_to() should switch tasks to task nr n, first |
16 | */ | 20 | */ |
@@ -60,16 +64,6 @@ | |||
60 | last = __last; \ | 64 | last = __last; \ |
61 | } while (0) | 65 | } while (0) |
62 | 66 | ||
63 | /* | ||
64 | * On SMP systems, when the scheduler does migration-cost autodetection, | ||
65 | * it needs a way to flush as much of the CPU's caches as possible. | ||
66 | * | ||
67 | * TODO: fill this in! | ||
68 | */ | ||
69 | static inline void sched_cacheflush(void) | ||
70 | { | ||
71 | } | ||
72 | |||
73 | #ifdef CONFIG_CPU_SH4A | 67 | #ifdef CONFIG_CPU_SH4A |
74 | #define __icbi() \ | 68 | #define __icbi() \ |
75 | { \ | 69 | { \ |
@@ -122,7 +116,7 @@ static inline void sched_cacheflush(void) | |||
122 | #define smp_read_barrier_depends() do { } while(0) | 116 | #define smp_read_barrier_depends() do { } while(0) |
123 | #endif | 117 | #endif |
124 | 118 | ||
125 | #define set_mb(var, value) do { xchg(&var, value); } while (0) | 119 | #define set_mb(var, value) do { (void)xchg(&var, value); } while (0) |
126 | 120 | ||
127 | /* | 121 | /* |
128 | * Jump to P2 area. | 122 | * Jump to P2 area. |
@@ -271,6 +265,16 @@ extern unsigned int instruction_size(unsigned int insn); | |||
271 | void disable_hlt(void); | 265 | void disable_hlt(void); |
272 | void enable_hlt(void); | 266 | void enable_hlt(void); |
273 | 267 | ||
268 | void default_idle(void); | ||
269 | |||
270 | asmlinkage void break_point_trap(void); | ||
271 | asmlinkage void debug_trap_handler(unsigned long r4, unsigned long r5, | ||
272 | unsigned long r6, unsigned long r7, | ||
273 | struct pt_regs __regs); | ||
274 | asmlinkage void bug_trap_handler(unsigned long r4, unsigned long r5, | ||
275 | unsigned long r6, unsigned long r7, | ||
276 | struct pt_regs __regs); | ||
277 | |||
274 | #define arch_align_stack(x) (x) | 278 | #define arch_align_stack(x) (x) |
275 | 279 | ||
276 | #endif | 280 | #endif |