diff options
Diffstat (limited to 'arch/sh/include/asm/ftrace.h')
-rw-r--r-- | arch/sh/include/asm/ftrace.h | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/arch/sh/include/asm/ftrace.h b/arch/sh/include/asm/ftrace.h index 3aed362c9463..8fea7d8c8258 100644 --- a/arch/sh/include/asm/ftrace.h +++ b/arch/sh/include/asm/ftrace.h | |||
@@ -1,8 +1,34 @@ | |||
1 | #ifndef __ASM_SH_FTRACE_H | 1 | #ifndef __ASM_SH_FTRACE_H |
2 | #define __ASM_SH_FTRACE_H | 2 | #define __ASM_SH_FTRACE_H |
3 | 3 | ||
4 | #ifdef CONFIG_FUNCTION_TRACER | ||
5 | |||
6 | #define MCOUNT_INSN_SIZE 4 /* sizeof mcount call */ | ||
7 | |||
4 | #ifndef __ASSEMBLY__ | 8 | #ifndef __ASSEMBLY__ |
5 | extern void mcount(void); | 9 | extern void mcount(void); |
6 | #endif | 10 | |
11 | #define MCOUNT_ADDR ((long)(mcount)) | ||
12 | |||
13 | #ifdef CONFIG_DYNAMIC_FTRACE | ||
14 | #define CALLER_ADDR ((long)(ftrace_caller)) | ||
15 | #define STUB_ADDR ((long)(ftrace_stub)) | ||
16 | |||
17 | #define MCOUNT_INSN_OFFSET ((STUB_ADDR - CALLER_ADDR) >> 1) | ||
18 | |||
19 | struct dyn_arch_ftrace { | ||
20 | /* No extra data needed on sh */ | ||
21 | }; | ||
22 | |||
23 | #endif /* CONFIG_DYNAMIC_FTRACE */ | ||
24 | |||
25 | static inline unsigned long ftrace_call_adjust(unsigned long addr) | ||
26 | { | ||
27 | /* 'addr' is the memory table address. */ | ||
28 | return addr; | ||
29 | } | ||
30 | |||
31 | #endif /* __ASSEMBLY__ */ | ||
32 | #endif /* CONFIG_FUNCTION_TRACER */ | ||
7 | 33 | ||
8 | #endif /* __ASM_SH_FTRACE_H */ | 34 | #endif /* __ASM_SH_FTRACE_H */ |