aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc/sgi-xp/xp_uv.c
diff options
context:
space:
mode:
authorRobin Holt <holt@sgi.com>2009-12-15 19:47:53 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2009-12-16 10:20:13 -0500
commit682128939f546e3a9cdd9fef392b932dd9c41a65 (patch)
treeec641fbca980cbba69b655f7575523a8cdc93b30 /drivers/misc/sgi-xp/xp_uv.c
parent729d69e6995fc4dea8ff70df256a7d4034a3d21d (diff)
x86: uv: xpc needs to provide an abstraction for uv_gpa
Provide an SGI SN2/UV agnositic method for converting a global physical address into a socket physical address. Signed-off-by: Robin Holt <holt@sgi.com> Cc: Jack Steiner <steiner@sgi.com> Cc: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/misc/sgi-xp/xp_uv.c')
-rw-r--r--drivers/misc/sgi-xp/xp_uv.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/misc/sgi-xp/xp_uv.c b/drivers/misc/sgi-xp/xp_uv.c
index d238576b26fa..1e61f8a61a30 100644
--- a/drivers/misc/sgi-xp/xp_uv.c
+++ b/drivers/misc/sgi-xp/xp_uv.c
@@ -32,6 +32,15 @@ xp_pa_uv(void *addr)
32 return uv_gpa(addr); 32 return uv_gpa(addr);
33} 33}
34 34
35/*
36 * Convert a global physical to socket physical address.
37 */
38static unsigned long
39xp_socket_pa_uv(unsigned long gpa)
40{
41 return uv_gpa_to_soc_phys_ram(gpa);
42}
43
35static enum xp_retval 44static enum xp_retval
36xp_remote_memcpy_uv(unsigned long dst_gpa, const unsigned long src_gpa, 45xp_remote_memcpy_uv(unsigned long dst_gpa, const unsigned long src_gpa,
37 size_t len) 46 size_t len)
@@ -123,6 +132,7 @@ xp_init_uv(void)
123 xp_region_size = sn_region_size; 132 xp_region_size = sn_region_size;
124 133
125 xp_pa = xp_pa_uv; 134 xp_pa = xp_pa_uv;
135 xp_socket_pa = xp_socket_pa_uv;
126 xp_remote_memcpy = xp_remote_memcpy_uv; 136 xp_remote_memcpy = xp_remote_memcpy_uv;
127 xp_cpu_to_nasid = xp_cpu_to_nasid_uv; 137 xp_cpu_to_nasid = xp_cpu_to_nasid_uv;
128 xp_expand_memprotect = xp_expand_memprotect_uv; 138 xp_expand_memprotect = xp_expand_memprotect_uv;