diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-10-03 04:13:34 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2007-10-03 04:13:34 -0400 |
commit | a90f354709b372c8dcabe3cd6315a83da5927573 (patch) | |
tree | b98f4122a87a14d3dbff2d60445233b1ca499929 /include/asm-sh/kgdb.h | |
parent | e1fb4552ac938f2f70e9df2169b681594752bd85 (diff) |
sh: kgdb section mismatches and tidying.
The kgdb console setup was callable from a left-over deferred
initialization path, which in turn depends on __init symbols. Since
the deferred initialization was removed some time ago, kill off the
rest of those remnants and move kgdb_init() and friends to __init.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/asm-sh/kgdb.h')
-rw-r--r-- | include/asm-sh/kgdb.h | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/include/asm-sh/kgdb.h b/include/asm-sh/kgdb.h index 74bd0953e5ce..5334e86ccad6 100644 --- a/include/asm-sh/kgdb.h +++ b/include/asm-sh/kgdb.h | |||
@@ -19,8 +19,6 @@ | |||
19 | #include <asm/ptrace.h> | 19 | #include <asm/ptrace.h> |
20 | #include <asm/cacheflush.h> | 20 | #include <asm/cacheflush.h> |
21 | 21 | ||
22 | struct console; | ||
23 | |||
24 | /* Same as pt_regs but has vbr in place of syscall_nr */ | 22 | /* Same as pt_regs but has vbr in place of syscall_nr */ |
25 | struct kgdb_regs { | 23 | struct kgdb_regs { |
26 | unsigned long regs[16]; | 24 | unsigned long regs[16]; |
@@ -35,10 +33,7 @@ struct kgdb_regs { | |||
35 | 33 | ||
36 | /* State info */ | 34 | /* State info */ |
37 | extern char kgdb_in_gdb_mode; | 35 | extern char kgdb_in_gdb_mode; |
38 | extern int kgdb_done_init; | ||
39 | extern int kgdb_enabled; | ||
40 | extern int kgdb_nofault; /* Ignore bus errors (in gdb mem access) */ | 36 | extern int kgdb_nofault; /* Ignore bus errors (in gdb mem access) */ |
41 | extern int kgdb_halt; /* Execute initial breakpoint at startup */ | ||
42 | extern char in_nmi; /* Debounce flag to prevent NMI reentry*/ | 37 | extern char in_nmi; /* Debounce flag to prevent NMI reentry*/ |
43 | 38 | ||
44 | /* SCI */ | 39 | /* SCI */ |
@@ -59,6 +54,7 @@ extern kgdb_debug_hook_t *kgdb_debug_hook; | |||
59 | extern kgdb_bus_error_hook_t *kgdb_bus_err_hook; | 54 | extern kgdb_bus_error_hook_t *kgdb_bus_err_hook; |
60 | 55 | ||
61 | /* Console */ | 56 | /* Console */ |
57 | struct console; | ||
62 | void kgdb_console_write(struct console *co, const char *s, unsigned count); | 58 | void kgdb_console_write(struct console *co, const char *s, unsigned count); |
63 | extern int kgdb_console_setup(struct console *, char *); | 59 | extern int kgdb_console_setup(struct console *, char *); |
64 | 60 | ||
@@ -69,11 +65,7 @@ extern void longjmp(jmp_buf __jmpb, int __retval); | |||
69 | extern int setjmp(jmp_buf __jmpb); | 65 | extern int setjmp(jmp_buf __jmpb); |
70 | 66 | ||
71 | /* Forced breakpoint */ | 67 | /* Forced breakpoint */ |
72 | #define breakpoint() \ | 68 | #define breakpoint() __asm__ __volatile__("trapa #0x3c") |
73 | do { \ | ||
74 | if (kgdb_enabled) \ | ||
75 | __asm__ __volatile__("trapa #0x3c"); \ | ||
76 | } while (0) | ||
77 | 69 | ||
78 | /* KGDB should be able to flush all kernel text space */ | 70 | /* KGDB should be able to flush all kernel text space */ |
79 | #if defined(CONFIG_CPU_SH4) | 71 | #if defined(CONFIG_CPU_SH4) |