Re: [PATCH v5 07/21] powerpc: Use a function for byte swapping instructions
On Mon, 2020-04-06 at 18:09 +1000, Jordan Niethe wrote: > Use a function for byte swapping instructions in preparation of a more > complicated instruction type. Reviewed-by: Balamuruhan S > > Signed-off-by: Jordan Niethe > --- > arch/powerpc/include/asm/inst.h | 5 + > arch/powerpc/kernel/align.c | 2 +- > 2 files changed, 6 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/include/asm/inst.h > b/arch/powerpc/include/asm/inst.h > index 15f570bef936..78eb1481f1f6 100644 > --- a/arch/powerpc/include/asm/inst.h > +++ b/arch/powerpc/include/asm/inst.h > @@ -18,4 +18,9 @@ static inline int ppc_inst_opcode(u32 x) > return x >> 26; > } > > +static inline u32 ppc_inst_swab(u32 x) > +{ > + return ppc_inst(swab32(ppc_inst_val(x))); > +} > + > #endif /* _ASM_INST_H */ > diff --git a/arch/powerpc/kernel/align.c b/arch/powerpc/kernel/align.c > index a83d32c6513d..46870cf6a6dc 100644 > --- a/arch/powerpc/kernel/align.c > +++ b/arch/powerpc/kernel/align.c > @@ -310,7 +310,7 @@ int fix_alignment(struct pt_regs *regs) > /* We don't handle PPC little-endian any more... */ > if (cpu_has_feature(CPU_FTR_PPC_LE)) > return -EIO; > - instr = swab32(instr); > + instr = ppc_inst_swab(instr); > } > > #ifdef CONFIG_SPE
[PATCH v5 07/21] powerpc: Use a function for byte swapping instructions
Use a function for byte swapping instructions in preparation of a more complicated instruction type. Signed-off-by: Jordan Niethe --- arch/powerpc/include/asm/inst.h | 5 + arch/powerpc/kernel/align.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/arch/powerpc/include/asm/inst.h b/arch/powerpc/include/asm/inst.h index 15f570bef936..78eb1481f1f6 100644 --- a/arch/powerpc/include/asm/inst.h +++ b/arch/powerpc/include/asm/inst.h @@ -18,4 +18,9 @@ static inline int ppc_inst_opcode(u32 x) return x >> 26; } +static inline u32 ppc_inst_swab(u32 x) +{ + return ppc_inst(swab32(ppc_inst_val(x))); +} + #endif /* _ASM_INST_H */ diff --git a/arch/powerpc/kernel/align.c b/arch/powerpc/kernel/align.c index a83d32c6513d..46870cf6a6dc 100644 --- a/arch/powerpc/kernel/align.c +++ b/arch/powerpc/kernel/align.c @@ -310,7 +310,7 @@ int fix_alignment(struct pt_regs *regs) /* We don't handle PPC little-endian any more... */ if (cpu_has_feature(CPU_FTR_PPC_LE)) return -EIO; - instr = swab32(instr); + instr = ppc_inst_swab(instr); } #ifdef CONFIG_SPE -- 2.17.1