Message ID | 1595996214-5833-1-git-send-email-atrajeev@linux.vnet.ibm.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 443359aebce0e17148251c0e316801fe69aa7d33 |
Headers | show |
Series | powerpc: Fix MMCRA_BHRB_DISABLE define to work with binutils version < 2.28 | expand |
On 7/29/20 9:46 AM, Athira Rajeev wrote: > commit 9908c826d5ed ("powerpc/perf: Add Power10 PMU feature to > DT CPU features") defines MMCRA_BHRB_DISABLE as `0x2000000000UL`. > Binutils version less than 2.28 doesn't support UL suffix. > > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S: Assembler messages: > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: operand out of range (0x0000002000000000 is not between 0xffffffffffff8000 and 0x000000000000ffff) > > Fix this by wrapping it around `_UL` macro. Looks fine to me. Reviewed-by: Madhavan Srinivasan <maddy@linux.ibm.com> > > Fixes: 9908c826d5ed ("Add Power10 PMU feature to DT CPU features") > Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com> > Suggested-by: Michael Ellerman <mpe@ellerman.id.au> > --- > arch/powerpc/include/asm/reg.h | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h > index ae71027..41419f1 100644 > --- a/arch/powerpc/include/asm/reg.h > +++ b/arch/powerpc/include/asm/reg.h > @@ -12,6 +12,7 @@ > #ifdef __KERNEL__ > > #include <linux/stringify.h> > +#include <linux/const.h> > #include <asm/cputable.h> > #include <asm/asm-const.h> > #include <asm/feature-fixups.h> > @@ -888,7 +889,7 @@ > #define MMCRA_SLOT 0x07000000UL /* SLOT bits (37-39) */ > #define MMCRA_SLOT_SHIFT 24 > #define MMCRA_SAMPLE_ENABLE 0x00000001UL /* enable sampling */ > -#define MMCRA_BHRB_DISABLE 0x2000000000UL // BHRB disable bit for ISA v3.1 > +#define MMCRA_BHRB_DISABLE _UL(0x2000000000) // BHRB disable bit for ISA v3.1 > #define POWER6_MMCRA_SDSYNC 0x0000080000000000ULL /* SDAR/SIAR synced */ > #define POWER6_MMCRA_SIHV 0x0000040000000000ULL > #define POWER6_MMCRA_SIPR 0x0000020000000000ULL
On Wed, 29 Jul 2020 00:16:54 -0400, Athira Rajeev wrote: > commit 9908c826d5ed ("powerpc/perf: Add Power10 PMU feature to > DT CPU features") defines MMCRA_BHRB_DISABLE as `0x2000000000UL`. > Binutils version less than 2.28 doesn't support UL suffix. > > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S: Assembler messages: > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' > linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: operand out of range (0x0000002000000000 is not between 0xffffffffffff8000 and 0x000000000000ffff) > > [...] Applied to powerpc/next. [1/1] powerpc/perf: Fix MMCRA_BHRB_DISABLE define for binutils < 2.28 https://git.kernel.org/powerpc/c/443359aebce0e17148251c0e316801fe69aa7d33 cheers
diff --git a/arch/powerpc/include/asm/reg.h b/arch/powerpc/include/asm/reg.h index ae71027..41419f1 100644 --- a/arch/powerpc/include/asm/reg.h +++ b/arch/powerpc/include/asm/reg.h @@ -12,6 +12,7 @@ #ifdef __KERNEL__ #include <linux/stringify.h> +#include <linux/const.h> #include <asm/cputable.h> #include <asm/asm-const.h> #include <asm/feature-fixups.h> @@ -888,7 +889,7 @@ #define MMCRA_SLOT 0x07000000UL /* SLOT bits (37-39) */ #define MMCRA_SLOT_SHIFT 24 #define MMCRA_SAMPLE_ENABLE 0x00000001UL /* enable sampling */ -#define MMCRA_BHRB_DISABLE 0x2000000000UL // BHRB disable bit for ISA v3.1 +#define MMCRA_BHRB_DISABLE _UL(0x2000000000) // BHRB disable bit for ISA v3.1 #define POWER6_MMCRA_SDSYNC 0x0000080000000000ULL /* SDAR/SIAR synced */ #define POWER6_MMCRA_SIHV 0x0000040000000000ULL #define POWER6_MMCRA_SIPR 0x0000020000000000ULL
commit 9908c826d5ed ("powerpc/perf: Add Power10 PMU feature to DT CPU features") defines MMCRA_BHRB_DISABLE as `0x2000000000UL`. Binutils version less than 2.28 doesn't support UL suffix. linux-ppc/arch/powerpc/kernel/cpu_setup_power.S: Assembler messages: linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: junk at end of line, first unrecognized character is `L' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: found 'L', expected: ')' linux-ppc/arch/powerpc/kernel/cpu_setup_power.S:250: Error: operand out of range (0x0000002000000000 is not between 0xffffffffffff8000 and 0x000000000000ffff) Fix this by wrapping it around `_UL` macro. Fixes: 9908c826d5ed ("Add Power10 PMU feature to DT CPU features") Signed-off-by: Athira Rajeev <atrajeev@linux.vnet.ibm.com> Suggested-by: Michael Ellerman <mpe@ellerman.id.au> --- arch/powerpc/include/asm/reg.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)