Commit 9b307576 authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman

powerpc/inst: Move ppc_inst_t definition in asm/reg.h

Because of circular inclusion of asm/hw_breakpoint.h, we
need to move definition of asm/reg.h outside of inst.h
so that asm/hw_breakpoint.h gets it without including
asm/inst.h

Also remove asm/inst.h from asm/uprobes.h as it's not
needed anymore.
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/4b79f1491118af96b1ac0735e74aeca02ea4c04e.1638208156.git.christophe.leroy@csgroup.eu
parent 07b863ae
...@@ -10,7 +10,6 @@ ...@@ -10,7 +10,6 @@
#define _PPC_BOOK3S_64_HW_BREAKPOINT_H #define _PPC_BOOK3S_64_HW_BREAKPOINT_H
#include <asm/cpu_has_feature.h> #include <asm/cpu_has_feature.h>
#include <asm/inst.h>
#ifdef __KERNEL__ #ifdef __KERNEL__
struct arch_hw_breakpoint { struct arch_hw_breakpoint {
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
#define _ASM_POWERPC_INST_H #define _ASM_POWERPC_INST_H
#include <asm/ppc-opcode.h> #include <asm/ppc-opcode.h>
#include <asm/reg.h>
#define ___get_user_instr(gu_op, dest, ptr) \ #define ___get_user_instr(gu_op, dest, ptr) \
({ \ ({ \
...@@ -35,13 +36,6 @@ ...@@ -35,13 +36,6 @@
*/ */
#if defined(CONFIG_PPC64) || defined(__CHECKER__) #if defined(CONFIG_PPC64) || defined(__CHECKER__)
typedef struct {
u32 val;
#ifdef CONFIG_PPC64
u32 suffix;
#endif
} __packed ppc_inst_t;
static inline u32 ppc_inst_val(ppc_inst_t x) static inline u32 ppc_inst_val(ppc_inst_t x)
{ {
return x.val; return x.val;
...@@ -50,8 +44,6 @@ static inline u32 ppc_inst_val(ppc_inst_t x) ...@@ -50,8 +44,6 @@ static inline u32 ppc_inst_val(ppc_inst_t x)
#define ppc_inst(x) ((ppc_inst_t){ .val = (x) }) #define ppc_inst(x) ((ppc_inst_t){ .val = (x) })
#else #else
typedef u32 ppc_inst_t;
static inline u32 ppc_inst_val(ppc_inst_t x) static inline u32 ppc_inst_val(ppc_inst_t x)
{ {
return x; return x;
......
...@@ -1366,6 +1366,18 @@ ...@@ -1366,6 +1366,18 @@
/* Macros for setting and retrieving special purpose registers */ /* Macros for setting and retrieving special purpose registers */
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
#if defined(CONFIG_PPC64) || defined(__CHECKER__)
typedef struct {
u32 val;
#ifdef CONFIG_PPC64
u32 suffix;
#endif
} __packed ppc_inst_t;
#else
typedef u32 ppc_inst_t;
#endif
#define mfmsr() ({unsigned long rval; \ #define mfmsr() ({unsigned long rval; \
asm volatile("mfmsr %0" : "=r" (rval) : \ asm volatile("mfmsr %0" : "=r" (rval) : \
: "memory"); rval;}) : "memory"); rval;})
......
...@@ -11,7 +11,6 @@ ...@@ -11,7 +11,6 @@
#include <linux/notifier.h> #include <linux/notifier.h>
#include <asm/probes.h> #include <asm/probes.h>
#include <asm/inst.h>
typedef ppc_opcode_t uprobe_opcode_t; typedef ppc_opcode_t uprobe_opcode_t;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment