svn commit: r310441 - in stable/11/sys/powerpc: mpc85xx powerpc
Justin Hibbits
jhibbits at FreeBSD.org
Fri Dec 23 03:14:07 UTC 2016
Author: jhibbits
Date: Fri Dec 23 03:14:05 2016
New Revision: 310441
URL: https://svnweb.freebsd.org/changeset/base/310441
Log:
MFC r305320,r306702:
r305320:
Use the right ifdef macro.
r306702:
Fix e500mc/derivatives cpu idle
Modified:
stable/11/sys/powerpc/mpc85xx/platform_mpc85xx.c
stable/11/sys/powerpc/powerpc/cpu.c
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/sys/powerpc/mpc85xx/platform_mpc85xx.c
==============================================================================
--- stable/11/sys/powerpc/mpc85xx/platform_mpc85xx.c Fri Dec 23 03:08:27 2016 (r310440)
+++ stable/11/sys/powerpc/mpc85xx/platform_mpc85xx.c Fri Dec 23 03:14:05 2016 (r310441)
@@ -541,9 +541,11 @@ mpc85xx_idle(platform_t plat, int cpu)
uint32_t reg;
if (mpc85xx_is_qoriq()) {
- reg = ccsr_read4(OCP85XX_RCPM_CDOZCR);
- ccsr_write4(OCP85XX_RCPM_CDOZCR, reg | (1 << cpu));
- ccsr_read4(OCP85XX_RCPM_CDOZCR);
+ /*
+ * Base binutils doesn't know what the 'wait' instruction is, so
+ * use the opcode encoding here.
+ */
+ __asm __volatile("wrteei 1; .long 0x7c00007c");
} else {
reg = mfmsr();
/* Freescale E500 core RM section 6.4.1. */
@@ -555,15 +557,6 @@ mpc85xx_idle(platform_t plat, int cpu)
static int
mpc85xx_idle_wakeup(platform_t plat, int cpu)
{
- uint32_t reg;
-
- if (mpc85xx_is_qoriq()) {
- reg = ccsr_read4(OCP85XX_RCPM_CDOZCR);
- ccsr_write4(OCP85XX_RCPM_CDOZCR, reg & ~(1 << cpu));
- ccsr_read4(OCP85XX_RCPM_CDOZCR);
-
- return (1);
- }
return (0);
}
Modified: stable/11/sys/powerpc/powerpc/cpu.c
==============================================================================
--- stable/11/sys/powerpc/powerpc/cpu.c Fri Dec 23 03:08:27 2016 (r310440)
+++ stable/11/sys/powerpc/powerpc/cpu.c Fri Dec 23 03:14:05 2016 (r310441)
@@ -663,7 +663,7 @@ static void
cpu_idle_booke(sbintime_t sbt)
{
-#ifdef E500
+#ifdef BOOKE_E500
platform_cpu_idle(PCPU_GET(cpuid));
#endif
}
More information about the svn-src-stable
mailing list