Re: [PATCH v5 07/21] powerpc: Use a function for byte swapping instructions

2020-04-07 Thread Balamuruhan S
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

2020-04-06 Thread Jordan Niethe
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