summaryrefslogtreecommitdiffstats
path: root/arch/arc/plat-eznps
diff options
context:
space:
mode:
authorNoam Camus <noamc@ezchip.com>2013-06-03 15:17:25 +0300
committerVineet Gupta <vgupta@synopsys.com>2016-05-09 09:32:33 +0530
commit86c25466f7414d6396f1aaa13e4b34f36ec272d5 (patch)
tree908b67ed82896362bcb7e438c8b6849ea3b2a2c7 /arch/arc/plat-eznps
parentb1f2f6f3cf5e37f0418f6cebf365cff7c3abf6d7 (diff)
downloadlinux-0-day-86c25466f7414d6396f1aaa13e4b34f36ec272d5.tar.gz
linux-0-day-86c25466f7414d6396f1aaa13e4b34f36ec272d5.tar.xz
ARC: [plat-eznps] Use dedicated identity auxiliary register.
With generic "identity" num of CPUs is limited to 256 (8 bit). We use our alternative AUX register GLOBAL_ID (12 bit). Now we can support up to 4096 CPUs. Signed-off-by: Noam Camus <noamc@ezchip.com>
Diffstat (limited to 'arch/arc/plat-eznps')
-rw-r--r--arch/arc/plat-eznps/include/plat/ctop.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arc/plat-eznps/include/plat/ctop.h b/arch/arc/plat-eznps/include/plat/ctop.h
index 91b25f3dd39a1..9d6718c1a1998 100644
--- a/arch/arc/plat-eznps/include/plat/ctop.h
+++ b/arch/arc/plat-eznps/include/plat/ctop.h
@@ -195,6 +195,15 @@ struct nps_host_reg_aux_lpc {
#define REG_GIM_P_INT_DST_25 nps_host_reg_non_cl(NPS_GIM_BLKID, 0x149)
#define REG_GIM_P_INT_DST_26 nps_host_reg_non_cl(NPS_GIM_BLKID, 0x14A)
+#else
+
+.macro GET_CPU_ID reg
+ lr \reg, [CTOP_AUX_LOGIC_GLOBAL_ID]
+#ifndef CONFIG_EZNPS_MTM_EXT
+ lsr \reg, \reg, 4
+#endif
+.endm
+
#endif /* __ASSEMBLY__ */
#endif /* _PLAT_EZNPS_CTOP_H */