aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-ia64
diff options
context:
space:
mode:
authorRuss Anderson <rja@sgi.com>2006-09-26 14:47:48 -0500
committerTony Luck <tony.luck@intel.com>2006-09-26 15:21:11 -0700
commitb29e7132b5a9f2496beed37beef7ba4d010afb2c (patch)
treed274ba31b5f8aa1ab4a3560c3480c5afecca4fe4 /include/asm-ia64
parent[IA64] ar.fpsr not set on MCA/INIT kernel entry (diff)
downloadlinux-dev-b29e7132b5a9f2496beed37beef7ba4d010afb2c.tar.xz
linux-dev-b29e7132b5a9f2496beed37beef7ba4d010afb2c.zip
[IA64] PAL calls need physical mode, stacked
PAL_CACHE_READ and PAL_CACHE_WRITE need to be called in physical mode with stacked registers. Signed-off-by: Russ Anderson (rja@sgi.com) Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include/asm-ia64')
-rw-r--r--include/asm-ia64/pal.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/include/asm-ia64/pal.h b/include/asm-ia64/pal.h
index d1587e4f5759..2c8fd92d0ece 100644
--- a/include/asm-ia64/pal.h
+++ b/include/asm-ia64/pal.h
@@ -964,7 +964,8 @@ static inline s64
ia64_pal_cache_read (pal_cache_line_id_u_t line_id, u64 physical_addr)
{
struct ia64_pal_retval iprv;
- PAL_CALL(iprv, PAL_CACHE_READ, line_id.pclid_data, physical_addr, 0);
+ PAL_CALL_PHYS_STK(iprv, PAL_CACHE_READ, line_id.pclid_data,
+ physical_addr, 0);
return iprv.status;
}
@@ -986,7 +987,8 @@ static inline s64
ia64_pal_cache_write (pal_cache_line_id_u_t line_id, u64 physical_addr, u64 data)
{
struct ia64_pal_retval iprv;
- PAL_CALL(iprv, PAL_CACHE_WRITE, line_id.pclid_data, physical_addr, data);
+ PAL_CALL_PHYS_STK(iprv, PAL_CACHE_WRITE, line_id.pclid_data,
+ physical_addr, data);
return iprv.status;
}