]> err.no Git - linux-2.6/blobdiff - include/asm-s390/lowcore.h
Pull platform-drivers into test branch
[linux-2.6] / include / asm-s390 / lowcore.h
index 2e3d4cca5e2118e077ce006577f03e5f8e8f1b1c..74f7389bd3ee05004620f3370fe23b8458dc78d8 100644 (file)
@@ -35,6 +35,7 @@
 #define __LC_IO_NEW_PSW                 0x01f0
 #endif /* !__s390x__ */
 
+#define __LC_IPL_PARMBLOCK_PTR         0x014
 #define __LC_EXT_PARAMS                 0x080
 #define __LC_CPU_ADDRESS                0x084
 #define __LC_EXT_INT_CODE               0x086
@@ -358,7 +359,15 @@ extern struct _lowcore *lowcore_ptr[];
 
 static inline void set_prefix(__u32 address)
 {
-        __asm__ __volatile__ ("spx %0" : : "m" (address) : "memory" );
+       asm volatile("spx %0" : : "m" (address) : "memory");
+}
+
+static inline __u32 store_prefix(void)
+{
+       __u32 address;
+
+       asm volatile("stpx %0" : "=m" (address));
+       return address;
 }
 
 #define __PANIC_MAGIC           0xDEADC0DE