diff options
author | Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> | 2020-04-28 21:50:24 +0300 |
---|---|---|
committer | Vineet Gupta <vgupta@synopsys.com> | 2020-04-29 11:53:51 -0700 |
commit | 40db9367ec1e653ea45400b69c3c7b80745b12eb (patch) | |
tree | 4fba0744912fe0145cb16b593b77888a0994cb51 /arch/arc/include | |
parent | 799587d5731db9dcdafaac4002463aa7d9cd6cf7 (diff) | |
download | linux-40db9367ec1e653ea45400b69c3c7b80745b12eb.tar.gz linux-40db9367ec1e653ea45400b69c3c7b80745b12eb.tar.bz2 linux-40db9367ec1e653ea45400b69c3c7b80745b12eb.zip |
ARC: guard dsp early init against non ARCv2
As of today we guard early DSP init code with
ARC_AUX_DSP_BUILD (0x7A) BCR check to verify that we have
CPU with DSP configured. However that's not enough as in
ARCv1 CPU the same BCR (0x7A) is used for checking MUL/MAC
instructions presence.
So, let's guard DSP early init against non ARCv2.
Fixes: 4827d0cf744e ("ARC: handle DSP presence in HW")
Reported-by: Angelo Ribeiro <angelor@synopsys.com>
Suggested-by: Jose Abreu <oabreu@synopsys.com>
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/include')
-rw-r--r-- | arch/arc/include/asm/dsp-impl.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arc/include/asm/dsp-impl.h b/arch/arc/include/asm/dsp-impl.h index e1aa212ca6eb..cd5636dfeb6f 100644 --- a/arch/arc/include/asm/dsp-impl.h +++ b/arch/arc/include/asm/dsp-impl.h @@ -15,12 +15,14 @@ /* clobbers r5 register */ .macro DSP_EARLY_INIT +#ifdef CONFIG_ISA_ARCV2 lr r5, [ARC_AUX_DSP_BUILD] bmsk r5, r5, 7 breq r5, 0, 1f mov r5, DSP_CTRL_DISABLED_ALL sr r5, [ARC_AUX_DSP_CTRL] 1: +#endif .endm /* clobbers r10, r11 registers pair */ |