Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch G/C TEGRAK1_PMAP_WORKAROUND.
details: https://anonhg.NetBSD.org/src/rev/ab88f4ae6c16
branches: trunk
changeset: 341839:ab88f4ae6c16
user: skrll <skrll%NetBSD.org@localhost>
date: Wed Nov 25 08:39:45 2015 +0000
description:
G/C TEGRAK1_PMAP_WORKAROUND.
Using XN (eXecute Never) properly means speculative reads from devices
aren't done. Pretty sure this was the cause of the wedges.
diffstat:
sys/arch/arm/arm/cpufunc.c | 15 ++-------------
sys/arch/arm/cortex/a9_mpsubr.S | 6 +-----
sys/arch/evbarm/conf/std.tegra | 3 +--
3 files changed, 4 insertions(+), 20 deletions(-)
diffs (73 lines):
diff -r 86882522e4c8 -r ab88f4ae6c16 sys/arch/arm/arm/cpufunc.c
--- a/sys/arch/arm/arm/cpufunc.c Wed Nov 25 08:36:50 2015 +0000
+++ b/sys/arch/arm/arm/cpufunc.c Wed Nov 25 08:39:45 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: cpufunc.c,v 1.157 2015/10/15 07:13:50 skrll Exp $ */
+/* $NetBSD: cpufunc.c,v 1.158 2015/11/25 08:39:45 skrll Exp $ */
/*
* arm7tdmi support code Copyright (c) 2001 John Fremlin
@@ -49,7 +49,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.157 2015/10/15 07:13:50 skrll Exp $");
+__KERNEL_RCSID(0, "$NetBSD: cpufunc.c,v 1.158 2015/11/25 08:39:45 skrll Exp $");
#include "opt_compat_netbsd.h"
#include "opt_cpuoptions.h"
@@ -3165,17 +3165,6 @@
cpuctrl |= CPU_CONTROL_VECRELOC;
#endif
-#ifdef TEGRAK1_PMAP_WORKAROUND
- uint32_t auxctrl = armreg_auxctl_read();
-
- // u-boot sets this incorrectly on boot cpu
- auxctrl &= ~CORTEXA15_ACTLR_BTB;
- auxctrl |= CORTEXA15_ACTLR_IOBEU;
-
- /* Update auxctlr */
- armreg_auxctl_write(auxctrl);
-#endif
-
/* Clear out the cache */
cpu_idcache_wbinv_all();
diff -r 86882522e4c8 -r ab88f4ae6c16 sys/arch/arm/cortex/a9_mpsubr.S
--- a/sys/arch/arm/cortex/a9_mpsubr.S Wed Nov 25 08:36:50 2015 +0000
+++ b/sys/arch/arm/cortex/a9_mpsubr.S Wed Nov 25 08:39:45 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: a9_mpsubr.S,v 1.43 2015/10/15 07:13:50 skrll Exp $ */
+/* $NetBSD: a9_mpsubr.S,v 1.44 2015/11/25 08:39:45 skrll Exp $ */
/*-
* Copyright (c) 2012 The NetBSD Foundation, Inc.
* All rights reserved.
@@ -498,10 +498,6 @@
bfi r0, r2, #31, #1 // copy it to bit 31 in ACTRL
#endif
-#if defined(TEGRAK1_PMAP_WORKAROUND)
- orr r0, r0, #CORTEXA15_ACTLR_IOBEU
-#endif
-
#if defined(CPU_CORTEXA5) || defined(CPU_CORTEXA9)
//
// Step 4a (continued on A5/A9), ACTLR.FW=1)
diff -r 86882522e4c8 -r ab88f4ae6c16 sys/arch/evbarm/conf/std.tegra
--- a/sys/arch/evbarm/conf/std.tegra Wed Nov 25 08:36:50 2015 +0000
+++ b/sys/arch/evbarm/conf/std.tegra Wed Nov 25 08:39:45 2015 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: std.tegra,v 1.9 2015/10/18 00:38:37 jmcneill Exp $
+# $NetBSD: std.tegra,v 1.10 2015/11/25 08:39:45 skrll Exp $
#
machine evbarm arm
@@ -20,7 +20,6 @@
options PCI_NETBSD_CONFIGURE
options __HAVE_PCI_CONF_HOOK
options __BUS_SPACE_HAS_STREAM_METHODS
-options TEGRAK1_PMAP_WORKAROUND
makeoptions KERNEL_BASE_PHYS="0x81000000"
makeoptions KERNEL_BASE_VIRT="0x81000000"
Home |
Main Index |
Thread Index |
Old Index