summaryrefslogtreecommitdiffstats
path: root/include/asm-mips64/sn
diff options
context:
space:
mode:
authorKanoj Sarcar <kanoj@engr.sgi.com>2000-04-04 20:49:44 +0000
committerKanoj Sarcar <kanoj@engr.sgi.com>2000-04-04 20:49:44 +0000
commit91e096ed92faa6c3ab6c703ee42bd0ad76b8957b (patch)
tree25340fb6232bd9de844a0dc1c7020b68c3dc6c2a /include/asm-mips64/sn
parent09b51a8bad6352607cc40618d3be5a7525eb4470 (diff)
Added a few klconfig functions from IRIX. This triggered some house cleaning,
ie, moving type declarations into sn/types.h and moving klconfig code from ip27-init.c into ip27-klconfig.c.
Diffstat (limited to 'include/asm-mips64/sn')
-rw-r--r--include/asm-mips64/sn/arch.h9
-rw-r--r--include/asm-mips64/sn/klconfig.h6
-rw-r--r--include/asm-mips64/sn/types.h2
3 files changed, 16 insertions, 1 deletions
diff --git a/include/asm-mips64/sn/arch.h b/include/asm-mips64/sn/arch.h
index 5246b040c..b4fe083d6 100644
--- a/include/asm-mips64/sn/arch.h
+++ b/include/asm-mips64/sn/arch.h
@@ -45,6 +45,9 @@ typedef u64 nic_t;
#define INVALID_PARTID (partid_t)-1
extern nasid_t get_nasid(void);
+extern cnodeid_t get_cpu_cnode(int);
+extern int get_cpu_slice(cpuid_t);
+
/*
* NO ONE should access these arrays directly. The only reason we refer to
* them here is to avoid the procedure call that would be required in the
@@ -64,6 +67,12 @@ extern nasid_t compact_to_nasid_node[MAX_COMPACT_NODES];
((nnode) >> \
(is_fine_dirmode() ? NASID_TO_FINEREG_SHFT : NASID_TO_COARSEREG_SHFT))
+#if !defined(_STANDALONE)
+extern cnodeid_t nasid_to_compact_node[MAX_NASIDS];
+extern nasid_t compact_to_nasid_node[MAX_COMPACT_NODES];
+extern cnodeid_t cpuid_to_compact_node[MAXCPUS];
+#endif
+
#if !defined(DEBUG) && (!defined(SABLE) || defined(_STANDALONE))
#define NASID_TO_COMPACT_NODEID(nnode) (nasid_to_compact_node[nnode])
diff --git a/include/asm-mips64/sn/klconfig.h b/include/asm-mips64/sn/klconfig.h
index 592ee59d3..2d2ab75ba 100644
--- a/include/asm-mips64/sn/klconfig.h
+++ b/include/asm-mips64/sn/klconfig.h
@@ -898,6 +898,10 @@ typedef union {
/* external declarations of Linux kernel functions. */
-extern lboard_t *find_lboard(unsigned int type);
+extern lboard_t *find_lboard(lboard_t *start, unsigned char type);
+extern klinfo_t *find_component(lboard_t *brd, klinfo_t *kli, unsigned char type);
+extern klinfo_t *find_first_component(lboard_t *brd, unsigned char type);
+extern klcpu_t *nasid_slice_to_cpuinfo(nasid_t, int);
+extern klcpu_t *sn_get_cpuinfo(cpuid_t cpu);
#endif /* _ASM_SN_KLCONFIG_H */
diff --git a/include/asm-mips64/sn/types.h b/include/asm-mips64/sn/types.h
index 8aa5c0172..89a2e122d 100644
--- a/include/asm-mips64/sn/types.h
+++ b/include/asm-mips64/sn/types.h
@@ -12,6 +12,8 @@
#include <linux/types.h>
+typedef unsigned long cpuid_t;
+typedef unsigned long cpumask_t;
typedef signed short nasid_t; /* node id in numa-as-id space */
typedef signed short cnodeid_t; /* node id in compact-id space */
typedef signed char partid_t; /* partition ID type */