summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/epapr_paravirt.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-03-27 15:50:24 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2013-03-27 15:50:24 -0700
commit9064171268d838b8f283fe111ef086b9479d059a (patch)
tree94d477df5094f30c5b80bc47a436adac70f35910 /arch/powerpc/kernel/epapr_paravirt.c
parent33b65f1e9ca51b2d1be4d66d2bbf6e874a022f0a (diff)
parentf9294e989fa6f2990da155242db03cea1550cac8 (diff)
Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sfr/next-fixes
Pull powerpc build fixes from Stephen Rothwell: "Just a couple of build fixes for powerpc all{mod,yes}config. Submitted by me since BenH is on vacation." * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sfr/next-fixes: powerpc: define the conditions where the ePAPR idle hcall can be supported powerpc: make additional room in exception vector area
Diffstat (limited to 'arch/powerpc/kernel/epapr_paravirt.c')
-rw-r--r--arch/powerpc/kernel/epapr_paravirt.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/epapr_paravirt.c b/arch/powerpc/kernel/epapr_paravirt.c
index f3eab8594d9..d44a571e45a 100644
--- a/arch/powerpc/kernel/epapr_paravirt.c
+++ b/arch/powerpc/kernel/epapr_paravirt.c
@@ -23,8 +23,10 @@
#include <asm/code-patching.h>
#include <asm/machdep.h>
+#if !defined(CONFIG_64BIT) || defined(CONFIG_PPC_BOOK3E_64)
extern void epapr_ev_idle(void);
extern u32 epapr_ev_idle_start[];
+#endif
bool epapr_paravirt_enabled;
@@ -47,11 +49,15 @@ static int __init epapr_paravirt_init(void)
for (i = 0; i < (len / 4); i++) {
patch_instruction(epapr_hypercall_start + i, insts[i]);
+#if !defined(CONFIG_64BIT) || defined(CONFIG_PPC_BOOK3E_64)
patch_instruction(epapr_ev_idle_start + i, insts[i]);
+#endif
}
+#if !defined(CONFIG_64BIT) || defined(CONFIG_PPC_BOOK3E_64)
if (of_get_property(hyper_node, "has-idle", NULL))
ppc_md.power_save = epapr_ev_idle;
+#endif
epapr_paravirt_enabled = true;