summaryrefslogtreecommitdiff
path: root/arch/mips/include/asm/mach-netlogic/multi-node.h
diff options
context:
space:
mode:
authorJayachandran C <jchandra@broadcom.com>2013-12-21 16:52:14 +0530
committerRalf Baechle <ralf@linux-mips.org>2014-01-24 22:39:47 +0100
commitce59d0f7fec6fa4e7a6c484308e25bad8a6caa39 (patch)
tree111c2a78eb3a952c9c0efe2895649fe6baec5ef1 /arch/mips/include/asm/mach-netlogic/multi-node.h
parentc24a8a7a99885d5b986f38f6631f69e7794a3e5e (diff)
downloadlwn-ce59d0f7fec6fa4e7a6c484308e25bad8a6caa39.tar.gz
lwn-ce59d0f7fec6fa4e7a6c484308e25bad8a6caa39.zip
MIPS: Netlogic: Add topology.h for XLP family
Add mach-netlogic/topology.h which contains XLP cpu number to core and node mapping. Signed-off-by: Jayachandran C <jchandra@broadcom.com> Signed-off-by: John Crispin <blogic@openwrt.org> Patchwork: http://patchwork.linux-mips.org/patch/6271/
Diffstat (limited to 'arch/mips/include/asm/mach-netlogic/multi-node.h')
-rw-r--r--arch/mips/include/asm/mach-netlogic/multi-node.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/mips/include/asm/mach-netlogic/multi-node.h b/arch/mips/include/asm/mach-netlogic/multi-node.h
index d62fc773f4d7..b3d91e0c10dd 100644
--- a/arch/mips/include/asm/mach-netlogic/multi-node.h
+++ b/arch/mips/include/asm/mach-netlogic/multi-node.h
@@ -51,4 +51,23 @@
#define NLM_THREADS_PER_CORE 4
#define NLM_CPUS_PER_NODE (NLM_CORES_PER_NODE * NLM_THREADS_PER_CORE)
+struct nlm_soc_info {
+ unsigned long coremask; /* cores enabled on the soc */
+ unsigned long ebase; /* not used now */
+ uint64_t irqmask; /* EIMR for the node */
+ uint64_t sysbase; /* only for XLP - sys block base */
+ uint64_t picbase; /* PIC block base */
+ spinlock_t piclock; /* lock for PIC access */
+ cpumask_t cpumask; /* logical cpu mask for node */
+};
+
+extern struct nlm_soc_info nlm_nodes[NLM_NR_NODES];
+#define nlm_get_node(i) (&nlm_nodes[i])
+#ifdef CONFIG_CPU_XLR
+#define nlm_current_node() (&nlm_nodes[0])
+#else
+#define nlm_current_node() (&nlm_nodes[nlm_nodeid()])
+#endif
+void nlm_node_init(int node);
+
#endif