diff options
Diffstat (limited to 'arch/blackfin/include/asm/kgdb.h')
-rw-r--r-- | arch/blackfin/include/asm/kgdb.h | 53 |
1 files changed, 15 insertions, 38 deletions
diff --git a/arch/blackfin/include/asm/kgdb.h b/arch/blackfin/include/asm/kgdb.h index 26ebac6646d8..c8b256d2ea30 100644 --- a/arch/blackfin/include/asm/kgdb.h +++ b/arch/blackfin/include/asm/kgdb.h | |||
@@ -1,32 +1,8 @@ | |||
1 | /* | 1 | /* Blackfin KGDB header |
2 | * File: include/asm-blackfin/kgdb.h | ||
3 | * Based on: | ||
4 | * Author: Sonic Zhang | ||
5 | * | ||
6 | * Created: | ||
7 | * Description: | ||
8 | * | ||
9 | * Rev: $Id: kgdb_bfin_linux-2.6.x.patch 4934 2007-02-13 09:32:11Z sonicz $ | ||
10 | * | ||
11 | * Modified: | ||
12 | * Copyright 2005-2006 Analog Devices Inc. | ||
13 | * | ||
14 | * Bugs: Enter bugs at http://blackfin.uclinux.org/ | ||
15 | * | 2 | * |
16 | * This program is free software; you can redistribute it and/or modify | 3 | * Copyright 2005-2009 Analog Devices Inc. |
17 | * it under the terms of the GNU General Public License as published by | ||
18 | * the Free Software Foundation; either version 2 of the License, or | ||
19 | * (at your option) any later version. | ||
20 | * | 4 | * |
21 | * This program is distributed in the hope that it will be useful, | 5 | * Licensed under the GPL-2 or later. |
22 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
23 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
24 | * GNU General Public License for more details. | ||
25 | * | ||
26 | * You should have received a copy of the GNU General Public License | ||
27 | * along with this program; if not, see the file COPYING, or write | ||
28 | * to the Free Software Foundation, Inc., | ||
29 | * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
30 | */ | 6 | */ |
31 | 7 | ||
32 | #ifndef __ASM_BLACKFIN_KGDB_H__ | 8 | #ifndef __ASM_BLACKFIN_KGDB_H__ |
@@ -37,17 +13,18 @@ | |||
37 | /* gdb locks */ | 13 | /* gdb locks */ |
38 | #define KGDB_MAX_NO_CPUS 8 | 14 | #define KGDB_MAX_NO_CPUS 8 |
39 | 15 | ||
40 | /************************************************************************/ | 16 | /* |
41 | /* BUFMAX defines the maximum number of characters in inbound/outbound buffers*/ | 17 | * BUFMAX defines the maximum number of characters in inbound/outbound buffers. |
42 | /* at least NUMREGBYTES*2 are needed for register packets */ | 18 | * At least NUMREGBYTES*2 are needed for register packets. |
43 | /* Longer buffer is needed to list all threads */ | 19 | * Longer buffer is needed to list all threads. |
20 | */ | ||
44 | #define BUFMAX 2048 | 21 | #define BUFMAX 2048 |
45 | 22 | ||
46 | /* | 23 | /* |
47 | * Note that this register image is different from | 24 | * Note that this register image is different from |
48 | * the register image that Linux produces at interrupt time. | 25 | * the register image that Linux produces at interrupt time. |
49 | * | 26 | * |
50 | * Linux's register image is defined by struct pt_regs in ptrace.h. | 27 | * Linux's register image is defined by struct pt_regs in ptrace.h. |
51 | */ | 28 | */ |
52 | enum regnames { | 29 | enum regnames { |
53 | /* Core Registers */ | 30 | /* Core Registers */ |
@@ -104,14 +81,14 @@ enum regnames { | |||
104 | BFIN_RETX, | 81 | BFIN_RETX, |
105 | BFIN_RETN, | 82 | BFIN_RETN, |
106 | BFIN_RETE, | 83 | BFIN_RETE, |
107 | 84 | ||
108 | /* Pseudo Registers */ | 85 | /* Pseudo Registers */ |
109 | BFIN_PC, | 86 | BFIN_PC, |
110 | BFIN_CC, | 87 | BFIN_CC, |
111 | BFIN_EXTRA1, /* Address of .text section. */ | 88 | BFIN_EXTRA1, /* Address of .text section. */ |
112 | BFIN_EXTRA2, /* Address of .data section. */ | 89 | BFIN_EXTRA2, /* Address of .data section. */ |
113 | BFIN_EXTRA3, /* Address of .bss section. */ | 90 | BFIN_EXTRA3, /* Address of .bss section. */ |
114 | BFIN_FDPIC_EXEC, | 91 | BFIN_FDPIC_EXEC, |
115 | BFIN_FDPIC_INTERP, | 92 | BFIN_FDPIC_INTERP, |
116 | 93 | ||
117 | /* MMRs */ | 94 | /* MMRs */ |
@@ -126,7 +103,7 @@ enum regnames { | |||
126 | 103 | ||
127 | static inline void arch_kgdb_breakpoint(void) | 104 | static inline void arch_kgdb_breakpoint(void) |
128 | { | 105 | { |
129 | asm(" EXCPT 2;"); | 106 | asm("EXCPT 2;"); |
130 | } | 107 | } |
131 | #define BREAK_INSTR_SIZE 2 | 108 | #define BREAK_INSTR_SIZE 2 |
132 | #define CACHE_FLUSH_IS_SAFE 1 | 109 | #define CACHE_FLUSH_IS_SAFE 1 |