]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/powerpc/platforms/pseries/plpar_wrappers.h
Merge branch 'linus' into x86/kconfig
[linux-2.6-omap-h63xx.git] / arch / powerpc / platforms / pseries / plpar_wrappers.h
index 2e4d10c9eea89a961e7f7c0b3e88cb2291eadbf2..d8680b589dc96c325afb09725c47f5c6a008a3e6 100644 (file)
@@ -8,11 +8,6 @@ static inline long poll_pending(void)
        return plpar_hcall_norets(H_POLL_PENDING);
 }
 
-static inline long prod_processor(void)
-{
-       return plpar_hcall_norets(H_PROD);
-}
-
 static inline long cede_processor(void)
 {
        return plpar_hcall_norets(H_CEDE);
@@ -108,6 +103,21 @@ static inline long plpar_pte_read(unsigned long flags, unsigned long ptex,
        return rc;
 }
 
+/* plpar_pte_read_raw can be called in real mode. It calls plpar_hcall_raw */
+static inline long plpar_pte_read_raw(unsigned long flags, unsigned long ptex,
+               unsigned long *old_pteh_ret, unsigned long *old_ptel_ret)
+{
+       long rc;
+       unsigned long retbuf[PLPAR_HCALL_BUFSIZE];
+
+       rc = plpar_hcall_raw(H_READ, retbuf, flags, ptex);
+
+       *old_pteh_ret = retbuf[0];
+       *old_ptel_ret = retbuf[1];
+
+       return rc;
+}
+
 static inline long plpar_pte_protect(unsigned long flags, unsigned long ptex,
                unsigned long avpn)
 {