1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3 * linux/arch/unicore32/include/asm/stacktrace.h
4 *
5 * Code specific to PKUnity SoC and UniCore ISA
6 *
7 * Copyright (C) 2001-2010 GUAN Xue-tao
8 */
9
10 #ifndef __UNICORE_STACKTRACE_H__
11 #define __UNICORE_STACKTRACE_H__
12
13 struct stackframe {
14 unsigned long fp;
15 unsigned long sp;
16 unsigned long lr;
17 unsigned long pc;
18 };
19
20 #ifdef CONFIG_FRAME_POINTER
21 extern int unwind_frame(struct stackframe *frame);
22 #else
23 #define unwind_frame(f) (-EINVAL)
24 #endif
25 extern void walk_stackframe(struct stackframe *frame,
26 int (*fn)(struct stackframe *, void *), void *data);
27
28 #endif /* __UNICORE_STACKTRACE_H__ */