summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/pseries/lpar.c
diff options
context:
space:
mode:
authorTony Lindgren <tony@atomide.com>2013-11-25 14:47:27 -0800
committerTony Lindgren <tony@atomide.com>2013-11-25 14:47:27 -0800
commit6310f3a9362e8fa2e29c8f84aa603b5f86e98442 (patch)
treeb071c5e43cc2075f9fa7f07bcc0101a56b779c35 /arch/powerpc/platforms/pseries/lpar.c
parentb2ff4790612bbfa3433cc92e56445c2a40098e2c (diff)
parentedd5eb4e99e4153ea7be05390fda542d986bf28d (diff)
downloadtalos-op-linux-6310f3a9362e8fa2e29c8f84aa603b5f86e98442.tar.gz
talos-op-linux-6310f3a9362e8fa2e29c8f84aa603b5f86e98442.zip
Merge branch 'dt-regressions' into omap-for-v3.13/fixes-take4
Diffstat (limited to 'arch/powerpc/platforms/pseries/lpar.c')
-rw-r--r--arch/powerpc/platforms/pseries/lpar.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/powerpc/platforms/pseries/lpar.c b/arch/powerpc/platforms/pseries/lpar.c
index 356bc75ca74f..4fca3def9db9 100644
--- a/arch/powerpc/platforms/pseries/lpar.c
+++ b/arch/powerpc/platforms/pseries/lpar.c
@@ -245,6 +245,23 @@ static void pSeries_lpar_hptab_clear(void)
&(ptes[j].pteh), &(ptes[j].ptel));
}
}
+
+#ifdef __LITTLE_ENDIAN__
+ /* Reset exceptions to big endian */
+ if (firmware_has_feature(FW_FEATURE_SET_MODE)) {
+ long rc;
+
+ rc = pseries_big_endian_exceptions();
+ /*
+ * At this point it is unlikely panic() will get anything
+ * out to the user, but at least this will stop us from
+ * continuing on further and creating an even more
+ * difficult to debug situation.
+ */
+ if (rc)
+ panic("Could not enable big endian exceptions");
+ }
+#endif
}
/*
OpenPOWER on IntegriCloud