Source-Changes-HG archive

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

[src/trunk]: src/sys/arch/arm/arm32 s/0/KERNEL_PID/



details:   https://anonhg.NetBSD.org/src/rev/64580a1a7060
branches:  trunk
changeset: 333357:64580a1a7060
user:      skrll <skrll%NetBSD.org@localhost>
date:      Thu Oct 30 10:38:57 2014 +0000

description:
s/0/KERNEL_PID/

isb after setting TTBCR_S_PD0 as per Example B3-5 Disable non-global
mappings when changing ASID in the ARM ARM.

diffstat:

 sys/arch/arm/arm32/arm32_tlb.c |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (23 lines):

diff -r 7716d6b03c91 -r 64580a1a7060 sys/arch/arm/arm32/arm32_tlb.c
--- a/sys/arch/arm/arm32/arm32_tlb.c    Thu Oct 30 08:31:27 2014 +0000
+++ b/sys/arch/arm/arm32/arm32_tlb.c    Thu Oct 30 10:38:57 2014 +0000
@@ -30,7 +30,7 @@
 #include "opt_multiprocessor.h"
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(1, "$NetBSD: arm32_tlb.c,v 1.5 2014/10/29 14:14:14 skrll Exp $");
+__KERNEL_RCSID(1, "$NetBSD: arm32_tlb.c,v 1.6 2014/10/30 10:38:57 skrll Exp $");
 
 #include <sys/param.h>
 #include <sys/types.h>
@@ -51,8 +51,9 @@
 tlb_set_asid(tlb_asid_t asid)
 {
        arm_dsb();
-       if (asid == 0) {
+       if (asid == KERNEL_PID) {
                armreg_ttbcr_write(armreg_ttbcr_read() | TTBCR_S_PD0);
+               arm_isb();
        }
        armreg_contextidr_write(asid);
        arm_isb();



Home | Main Index | Thread Index | Old Index