powerpc/fsl: Fix mfpmr() asm constraint error

mfpmr() needs to be marked always inline, otherwise the compiler will
complain that the rn argument can't be passed to the asm block as an
integer:

  arch/powerpc/include/asm/reg_fsl_emb.h:18:9: warning: 'asm' operand 1 probably does not match constraints
      18 |         asm (".machine push; "
  	     |         ^~~
  arch/powerpc/include/asm/reg_fsl_emb.h:18:9: error: impossible constraint in 'asm'

Mark mtpmr() always inline also to avoid any future problems with it.

Fixes: f01dbd73cc ("powerpc/fsl: Modernise mt/mfpmr")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202403051835.iqLGz996-lkp@intel.com/
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
Michael Ellerman 2024-03-07 00:08:30 +11:00
parent ca3d3aa14e
commit 6caecacc92

View File

@ -11,7 +11,7 @@
#ifndef __ASSEMBLY__
/* Performance Monitor Registers */
static inline unsigned int mfpmr(unsigned int rn)
static __always_inline unsigned int mfpmr(unsigned int rn)
{
unsigned int rval;
@ -24,7 +24,7 @@ static inline unsigned int mfpmr(unsigned int rn)
return rval;
}
static inline void mtpmr(unsigned int rn, unsigned int val)
static __always_inline void mtpmr(unsigned int rn, unsigned int val)
{
asm (".machine push; "
".machine e300; "