Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/powerpc/oea use mtspr64() in bridge mode



details:   https://anonhg.NetBSD.org/src/rev/4b6597615c3f
branches:  trunk
changeset: 829893:4b6597615c3f
user:      macallan <macallan%NetBSD.org@localhost>
date:      Fri Feb 16 18:02:10 2018 +0000

description:
use mtspr64() in bridge mode

diffstat:

 sys/arch/powerpc/oea/cpu_subr.c |  16 +++-------------
 1 files changed, 3 insertions(+), 13 deletions(-)

diffs (37 lines):

diff -r 62985d698a88 -r 4b6597615c3f sys/arch/powerpc/oea/cpu_subr.c
--- a/sys/arch/powerpc/oea/cpu_subr.c   Fri Feb 16 16:30:20 2018 +0000
+++ b/sys/arch/powerpc/oea/cpu_subr.c   Fri Feb 16 18:02:10 2018 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: cpu_subr.c,v 1.88 2018/01/21 08:46:48 mrg Exp $        */
+/*     $NetBSD: cpu_subr.c,v 1.89 2018/02/16 18:02:10 macallan Exp $   */
 
 /*-
  * Copyright (c) 2001 Matt Thomas.
@@ -34,7 +34,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.88 2018/01/21 08:46:48 mrg Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.89 2018/02/16 18:02:10 macallan Exp $");
 
 #include "opt_ppcparam.h"
 #include "opt_ppccache.h"
@@ -644,17 +644,7 @@
        if ((oeacpufeat & OEACPU_64_BRIDGE) != 0) {
 #endif
                if (hid64_0 != hid64_0_save) {
-                       /* ppc970 needs extra goop around writes to HID0 */
-                       __asm volatile( "sync;" \
-                                       "mtspr %0,%1;" \
-                                       "mfspr %1,%0;" \
-                                       "mfspr %1,%0;" \
-                                       "mfspr %1,%0;" \
-                                       "mfspr %1,%0;" \
-                                       "mfspr %1,%0;" \
-                                       "mfspr %1,%0;" \
-                                        : : "K"(SPR_HID0), "r"(hid64_0));
-                       __asm volatile("sync;isync");
+                       mtspr64(SPR_HID0, hid64_0);
                }
 #if defined(PPC_OEA64_BRIDGE)
        } else {



Home | Main Index | Thread Index | Old Index