Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/mn10300/include/asm/kgdb.h
15126 views
1
/* Kernel debugger for MN10300
2
*
3
* Copyright (C) 2010 Red Hat, Inc. All Rights Reserved.
4
* Written by David Howells ([email protected])
5
*
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public Licence
8
* as published by the Free Software Foundation; either version
9
* 2 of the Licence, or (at your option) any later version.
10
*/
11
12
#ifndef _ASM_KGDB_H
13
#define _ASM_KGDB_H
14
15
/*
16
* BUFMAX defines the maximum number of characters in inbound/outbound
17
* buffers at least NUMREGBYTES*2 are needed for register packets
18
* Longer buffer is needed to list all threads
19
*/
20
#define BUFMAX 1024
21
22
/*
23
* Note that this register image is in a different order than the register
24
* image that Linux produces at interrupt time.
25
*/
26
enum regnames {
27
GDB_FR_D0 = 0,
28
GDB_FR_D1 = 1,
29
GDB_FR_D2 = 2,
30
GDB_FR_D3 = 3,
31
GDB_FR_A0 = 4,
32
GDB_FR_A1 = 5,
33
GDB_FR_A2 = 6,
34
GDB_FR_A3 = 7,
35
36
GDB_FR_SP = 8,
37
GDB_FR_PC = 9,
38
GDB_FR_MDR = 10,
39
GDB_FR_EPSW = 11,
40
GDB_FR_LIR = 12,
41
GDB_FR_LAR = 13,
42
GDB_FR_MDRQ = 14,
43
44
GDB_FR_E0 = 15,
45
GDB_FR_E1 = 16,
46
GDB_FR_E2 = 17,
47
GDB_FR_E3 = 18,
48
GDB_FR_E4 = 19,
49
GDB_FR_E5 = 20,
50
GDB_FR_E6 = 21,
51
GDB_FR_E7 = 22,
52
53
GDB_FR_SSP = 23,
54
GDB_FR_MSP = 24,
55
GDB_FR_USP = 25,
56
GDB_FR_MCRH = 26,
57
GDB_FR_MCRL = 27,
58
GDB_FR_MCVF = 28,
59
60
GDB_FR_FPCR = 29,
61
GDB_FR_DUMMY0 = 30,
62
GDB_FR_DUMMY1 = 31,
63
64
GDB_FR_FS0 = 32,
65
66
GDB_FR_SIZE = 64,
67
};
68
69
#define GDB_ORIG_D0 41
70
#define NUMREGBYTES (GDB_FR_SIZE*4)
71
72
static inline void arch_kgdb_breakpoint(void)
73
{
74
asm(".globl __arch_kgdb_breakpoint; __arch_kgdb_breakpoint: break");
75
}
76
extern u8 __arch_kgdb_breakpoint;
77
78
#define BREAK_INSTR_SIZE 1
79
#define CACHE_FLUSH_IS_SAFE 1
80
81
#endif /* _ASM_KGDB_H */
82
83