diff options
Diffstat (limited to 'arch/microblaze/kernel/kgdb.c')
-rw-r--r-- | arch/microblaze/kernel/kgdb.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/microblaze/kernel/kgdb.c b/arch/microblaze/kernel/kgdb.c index bfc006b7f2d8..09a5e8286137 100644 --- a/arch/microblaze/kernel/kgdb.c +++ b/arch/microblaze/kernel/kgdb.c | |||
@@ -80,7 +80,7 @@ void gdb_regs_to_pt_regs(unsigned long *gdb_regs, struct pt_regs *regs) | |||
80 | void microblaze_kgdb_break(struct pt_regs *regs) | 80 | void microblaze_kgdb_break(struct pt_regs *regs) |
81 | { | 81 | { |
82 | if (kgdb_handle_exception(1, SIGTRAP, 0, regs) != 0) | 82 | if (kgdb_handle_exception(1, SIGTRAP, 0, regs) != 0) |
83 | return 0; | 83 | return; |
84 | 84 | ||
85 | /* Jump over the first arch_kgdb_breakpoint which is barrier to | 85 | /* Jump over the first arch_kgdb_breakpoint which is barrier to |
86 | * get kgdb work. The same solution is used for powerpc */ | 86 | * get kgdb work. The same solution is used for powerpc */ |
@@ -114,7 +114,6 @@ int kgdb_arch_handle_exception(int vector, int signo, int err_code, | |||
114 | { | 114 | { |
115 | char *ptr; | 115 | char *ptr; |
116 | unsigned long address; | 116 | unsigned long address; |
117 | int cpu = smp_processor_id(); | ||
118 | 117 | ||
119 | switch (remcom_in_buffer[0]) { | 118 | switch (remcom_in_buffer[0]) { |
120 | case 'c': | 119 | case 'c': |
@@ -143,5 +142,9 @@ void kgdb_arch_exit(void) | |||
143 | * Global data | 142 | * Global data |
144 | */ | 143 | */ |
145 | struct kgdb_arch arch_kgdb_ops = { | 144 | struct kgdb_arch arch_kgdb_ops = { |
145 | #ifdef __MICROBLAZEEL__ | ||
146 | .gdb_bpt_instr = {0x18, 0x00, 0x0c, 0xba}, /* brki r16, 0x18 */ | ||
147 | #else | ||
146 | .gdb_bpt_instr = {0xba, 0x0c, 0x00, 0x18}, /* brki r16, 0x18 */ | 148 | .gdb_bpt_instr = {0xba, 0x0c, 0x00, 0x18}, /* brki r16, 0x18 */ |
149 | #endif | ||
147 | }; | 150 | }; |