Module Name: src Committed By: matt Date: Sun Sep 22 18:49:10 UTC 2013
Modified Files: src/sys/arch/powerpc/oea: cpu_subr.c Log Message: Disable XBSEN for the 7450. To generate a diff of this commit: cvs rdiff -u -r1.77 -r1.78 src/sys/arch/powerpc/oea/cpu_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/powerpc/oea/cpu_subr.c diff -u src/sys/arch/powerpc/oea/cpu_subr.c:1.77 src/sys/arch/powerpc/oea/cpu_subr.c:1.78 --- src/sys/arch/powerpc/oea/cpu_subr.c:1.77 Sun Sep 22 18:05:16 2013 +++ src/sys/arch/powerpc/oea/cpu_subr.c Sun Sep 22 18:49:10 2013 @@ -1,4 +1,4 @@ -/* $NetBSD: cpu_subr.c,v 1.77 2013/09/22 18:05:16 matt Exp $ */ +/* $NetBSD: cpu_subr.c,v 1.78 2013/09/22 18:49:10 matt Exp $ */ /*- * Copyright (c) 2001 Matt Thomas. @@ -34,7 +34,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.77 2013/09/22 18:05:16 matt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: cpu_subr.c,v 1.78 2013/09/22 18:49:10 matt Exp $"); #include "opt_ppcparam.h" #include "opt_ppccache.h" @@ -279,28 +279,29 @@ cpu_model_init(void) oeacpufeat |= OEACPU_601; } else if (MPC745X_P(vers)) { - register_t hid0 = mfspr(SPR_HID0); register_t hid1 = mfspr(SPR_HID1); if (vers != MPC7450) { + register_t hid0 = mfspr(SPR_HID0); + /* Enable more SPRG registers */ oeacpufeat |= OEACPU_HIGHSPRG; /* Enable more BAT registers */ oeacpufeat |= OEACPU_HIGHBAT; hid0 |= HID0_HIGH_BAT_EN; - } - /* Enable larger BAT registers */ - oeacpufeat |= OEACPU_XBSEN; - hid0 |= HID0_XBSEN; + /* Enable larger BAT registers */ + oeacpufeat |= OEACPU_XBSEN; + hid0 |= HID0_XBSEN; + + mtspr(SPR_HID0, hid0); + __asm volatile("sync;isync"); + } /* Enable address broadcasting for MP systems */ hid1 |= HID1_SYNCBE | HID1_ABE; - mtspr(SPR_HID0, hid0); - __asm volatile("sync;isync"); - mtspr(SPR_HID0, hid1); __asm volatile("sync;isync");