diff options
Diffstat (limited to 'include/asm-sh/processor.h')
-rw-r--r-- | include/asm-sh/processor.h | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/include/asm-sh/processor.h b/include/asm-sh/processor.h index 45bb74e35d32..6f1dd7ca1b1d 100644 --- a/include/asm-sh/processor.h +++ b/include/asm-sh/processor.h | |||
@@ -36,7 +36,10 @@ | |||
36 | */ | 36 | */ |
37 | enum cpu_type { | 37 | enum cpu_type { |
38 | /* SH-2 types */ | 38 | /* SH-2 types */ |
39 | CPU_SH7604, | 39 | CPU_SH7604, CPU_SH7619, |
40 | |||
41 | /* SH-2A types */ | ||
42 | CPU_SH7206, | ||
40 | 43 | ||
41 | /* SH-3 types */ | 44 | /* SH-3 types */ |
42 | CPU_SH7705, CPU_SH7706, CPU_SH7707, | 45 | CPU_SH7705, CPU_SH7706, CPU_SH7707, |
@@ -47,7 +50,10 @@ enum cpu_type { | |||
47 | /* SH-4 types */ | 50 | /* SH-4 types */ |
48 | CPU_SH7750, CPU_SH7750S, CPU_SH7750R, CPU_SH7751, CPU_SH7751R, | 51 | CPU_SH7750, CPU_SH7750S, CPU_SH7750R, CPU_SH7751, CPU_SH7751R, |
49 | CPU_SH7760, CPU_ST40RA, CPU_ST40GX1, CPU_SH4_202, CPU_SH4_501, | 52 | CPU_SH7760, CPU_ST40RA, CPU_ST40GX1, CPU_SH4_202, CPU_SH4_501, |
53 | |||
54 | /* SH-4A types */ | ||
50 | CPU_SH73180, CPU_SH7343, CPU_SH7770, CPU_SH7780, CPU_SH7781, | 55 | CPU_SH73180, CPU_SH7343, CPU_SH7770, CPU_SH7780, CPU_SH7781, |
56 | CPU_SH7785, | ||
51 | 57 | ||
52 | /* Unknown subtype */ | 58 | /* Unknown subtype */ |
53 | CPU_SH_NONE | 59 | CPU_SH_NONE |
@@ -130,12 +136,11 @@ union sh_fpu_union { | |||
130 | }; | 136 | }; |
131 | 137 | ||
132 | struct thread_struct { | 138 | struct thread_struct { |
139 | /* Saved registers when thread is descheduled */ | ||
133 | unsigned long sp; | 140 | unsigned long sp; |
134 | unsigned long pc; | 141 | unsigned long pc; |
135 | 142 | ||
136 | unsigned long trap_no, error_code; | 143 | /* Hardware debugging registers */ |
137 | unsigned long address; | ||
138 | /* Hardware debugging registers may come here */ | ||
139 | unsigned long ubc_pc; | 144 | unsigned long ubc_pc; |
140 | 145 | ||
141 | /* floating point info */ | 146 | /* floating point info */ |
@@ -150,12 +155,7 @@ typedef struct { | |||
150 | extern int ubc_usercnt; | 155 | extern int ubc_usercnt; |
151 | 156 | ||
152 | #define INIT_THREAD { \ | 157 | #define INIT_THREAD { \ |
153 | sizeof(init_stack) + (long) &init_stack, /* sp */ \ | 158 | .sp = sizeof(init_stack) + (long) &init_stack, \ |
154 | 0, /* pc */ \ | ||
155 | 0, 0, \ | ||
156 | 0, \ | ||
157 | 0, \ | ||
158 | {{{0,}},} /* fpu state */ \ | ||
159 | } | 159 | } |
160 | 160 | ||
161 | /* | 161 | /* |
@@ -259,8 +259,8 @@ void show_trace(struct task_struct *tsk, unsigned long *sp, | |||
259 | struct pt_regs *regs); | 259 | struct pt_regs *regs); |
260 | extern unsigned long get_wchan(struct task_struct *p); | 260 | extern unsigned long get_wchan(struct task_struct *p); |
261 | 261 | ||
262 | #define KSTK_EIP(tsk) ((tsk)->thread.pc) | 262 | #define KSTK_EIP(tsk) (task_pt_regs(tsk)->pc) |
263 | #define KSTK_ESP(tsk) ((tsk)->thread.sp) | 263 | #define KSTK_ESP(tsk) (task_pt_regs(tsk)->regs[15]) |
264 | 264 | ||
265 | #define cpu_sleep() __asm__ __volatile__ ("sleep" : : : "memory") | 265 | #define cpu_sleep() __asm__ __volatile__ ("sleep" : : : "memory") |
266 | #define cpu_relax() barrier() | 266 | #define cpu_relax() barrier() |