Commit 6caecacc authored by Michael Ellerman's avatar Michael Ellerman
Browse files

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: f01dbd73 ("powerpc/fsl: Modernise mt/mfpmr")
Reported-by: default avatarkernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202403051835.iqLGz996-lkp@intel.com/


Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent ca3d3aa1
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -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; "