]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blame - arch/mips/include/asm/kgdb.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[mirror_ubuntu-bionic-kernel.git] / arch / mips / include / asm / kgdb.h
CommitLineData
b2441318 1/* SPDX-License-Identifier: GPL-2.0 */
88547001
JW
2#ifndef __ASM_KGDB_H_
3#define __ASM_KGDB_H_
4
5#ifdef __KERNEL__
6
7#include <asm/sgidefs.h>
8
9#if (_MIPS_ISA == _MIPS_ISA_MIPS1) || (_MIPS_ISA == _MIPS_ISA_MIPS2) || \
10 (_MIPS_ISA == _MIPS_ISA_MIPS32)
11
0896a9be
JW
12#define KGDB_GDB_REG_SIZE 32
13#define GDB_SIZEOF_REG sizeof(u32)
88547001
JW
14
15#elif (_MIPS_ISA == _MIPS_ISA_MIPS3) || (_MIPS_ISA == _MIPS_ISA_MIPS4) || \
16 (_MIPS_ISA == _MIPS_ISA_MIPS64)
17
18#ifdef CONFIG_32BIT
0896a9be
JW
19#define KGDB_GDB_REG_SIZE 32
20#define GDB_SIZEOF_REG sizeof(u32)
88547001 21#else /* CONFIG_CPU_32BIT */
0896a9be
JW
22#define KGDB_GDB_REG_SIZE 64
23#define GDB_SIZEOF_REG sizeof(u64)
88547001
JW
24#endif
25#else
26#error "Need to set KGDB_GDB_REG_SIZE for MIPS ISA"
27#endif /* _MIPS_ISA */
28
29#define BUFMAX 2048
0896a9be
JW
30#define DBG_MAX_REG_NUM 72
31#define NUMREGBYTES (DBG_MAX_REG_NUM * sizeof(GDB_SIZEOF_REG))
32#define NUMCRITREGBYTES (12 * sizeof(GDB_SIZEOF_REG))
88547001
JW
33#define BREAK_INSTR_SIZE 4
34#define CACHE_FLUSH_IS_SAFE 0
35
36extern void arch_kgdb_breakpoint(void);
88547001
JW
37extern void *saved_vectors[32];
38extern void handle_exception(struct pt_regs *regs);
39extern void breakinst(void);
5dd11d5d
JW
40extern int kgdb_ll_trap(int cmd, const char *str,
41 struct pt_regs *regs, long err, int trap, int sig);
88547001
JW
42
43#endif /* __KERNEL__ */
44
45#endif /* __ASM_KGDB_H_ */