xref: /openbmc/linux/arch/m68k/include/asm/ptrace.h (revision 1ca97bb541a1f5a735e697a8bba763cde3aab452)
1230d1866SGreg Ungerer #ifndef _M68K_PTRACE_H
2230d1866SGreg Ungerer #define _M68K_PTRACE_H
3230d1866SGreg Ungerer 
410b3a979SDavid Howells #include <uapi/asm/ptrace.h>
5230d1866SGreg Ungerer 
6230d1866SGreg Ungerer #ifndef __ASSEMBLY__
7230d1866SGreg Ungerer 
8230d1866SGreg Ungerer #ifndef PS_S
9230d1866SGreg Ungerer #define PS_S  (0x2000)
10230d1866SGreg Ungerer #define PS_M  (0x1000)
11230d1866SGreg Ungerer #endif
12230d1866SGreg Ungerer 
13230d1866SGreg Ungerer #define user_mode(regs) (!((regs)->sr & PS_S))
14230d1866SGreg Ungerer #define instruction_pointer(regs) ((regs)->pc)
15230d1866SGreg Ungerer #define profile_pc(regs) instruction_pointer(regs)
16d878d6daSAl Viro #define current_pt_regs() \
17d878d6daSAl Viro 	(struct pt_regs *)((char *)current_thread_info() + THREAD_SIZE) - 1
18*1ca97bb5SAl Viro #define current_user_stack_pointer() rdusp()
19faa47b46SAndreas Schwab 
20faa47b46SAndreas Schwab #define arch_has_single_step()	(1)
21faa47b46SAndreas Schwab 
22f60a5572SGreg Ungerer #ifdef CONFIG_MMU
23faa47b46SAndreas Schwab #define arch_has_block_step()	(1)
24faa47b46SAndreas Schwab #endif
25faa47b46SAndreas Schwab 
26230d1866SGreg Ungerer #endif /* __ASSEMBLY__ */
27230d1866SGreg Ungerer #endif /* _M68K_PTRACE_H */
28