From: Eugeniy Paltsev Date: Tue, 28 Nov 2017 13:48:40 +0000 (+0300) Subject: ARC: add macro to get CPU id X-Git-Tag: v2018.01-rc2~36^2~3 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=e59c3797204b4cd565c0792620341e3d39f9240b;p=oweals%2Fu-boot.git ARC: add macro to get CPU id ARCNUM [15:8] field in ARC_AUX_IDENTITY register allows us to uniquely identify each core in a multi-core system. I.e. with help of this macro each core may get its index in SMP system. Signed-off-by: Eugeniy Paltsev Signed-off-by: Alexey Brodkin --- diff --git a/arch/arc/include/asm/arcregs.h b/arch/arc/include/asm/arcregs.h index 54a9b00d4c..2a1bfc74ec 100644 --- a/arch/arc/include/asm/arcregs.h +++ b/arch/arc/include/asm/arcregs.h @@ -72,6 +72,9 @@ /* gcc builtin sr needs reg param to be long immediate */ #define write_aux_reg(reg_immed, val) \ __builtin_arc_sr((unsigned int)val, reg_immed) + +/* ARCNUM [15:8] - field to identify each core in a multi-core system */ +#define CPU_ID_GET() ((read_aux_reg(ARC_AUX_IDENTITY) & 0xFF00) >> 8) #endif /* __ASSEMBLY__ */ #endif /* _ASM_ARC_ARCREGS_H */