Module Name: src
Committed By: riz
Date: Fri Feb 8 19:43:02 UTC 2013
Modified Files:
src/sys/arch/arm/include/arm32 [netbsd-6]: pte.h
src/sys/arch/evbarm/marvell [netbsd-6]: marvell_machdep.c
Log Message:
sys/arch/arm/include/arm32/pte.h 1.11
sys/arch/evbarm/marvell/marvell_machdep.c 1.19 via patch
Switch to ARM_VECTORS_HIGH for Sheeva CPU.
[msaitoh, ticket #785]
To generate a diff of this commit:
cvs rdiff -u -r1.10 -r1.10.10.1 src/sys/arch/arm/include/arm32/pte.h
cvs rdiff -u -r1.6.2.1 -r1.6.2.2 \
src/sys/arch/evbarm/marvell/marvell_machdep.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/arm/include/arm32/pte.h
diff -u src/sys/arch/arm/include/arm32/pte.h:1.10 src/sys/arch/arm/include/arm32/pte.h:1.10.10.1
--- src/sys/arch/arm/include/arm32/pte.h:1.10 Thu Mar 10 07:47:15 2011
+++ src/sys/arch/arm/include/arm32/pte.h Fri Feb 8 19:43:01 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: pte.h,v 1.10 2011/03/10 07:47:15 bsh Exp $ */
+/* $NetBSD: pte.h,v 1.10.10.1 2013/02/08 19:43:01 riz Exp $ */
/*
* Copyright (c) 2001, 2002 Wasabi Systems, Inc.
@@ -107,6 +107,7 @@ typedef uint32_t pt_entry_t; /* L2 table
#define L2_L_FRAME (~L2_L_OFFSET)
#define L2_L_SHIFT 16
+#define L2_S_SEGSIZE (PAGE_SIZE * L2_S_SIZE / 4)
#define L2_S_SIZE 0x00001000 /* 4K */
#define L2_S_OFFSET (L2_S_SIZE - 1)
#define L2_S_FRAME (~L2_S_OFFSET)
Index: src/sys/arch/evbarm/marvell/marvell_machdep.c
diff -u src/sys/arch/evbarm/marvell/marvell_machdep.c:1.6.2.1 src/sys/arch/evbarm/marvell/marvell_machdep.c:1.6.2.2
--- src/sys/arch/evbarm/marvell/marvell_machdep.c:1.6.2.1 Thu Jun 28 04:50:38 2012
+++ src/sys/arch/evbarm/marvell/marvell_machdep.c Fri Feb 8 19:43:01 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: marvell_machdep.c,v 1.6.2.1 2012/06/28 04:50:38 riz Exp $ */
+/* $NetBSD: marvell_machdep.c,v 1.6.2.2 2013/02/08 19:43:01 riz Exp $ */
/*
* Copyright (c) 2007, 2008, 2010 KIYOHARA Takashi
* All rights reserved.
@@ -25,7 +25,7 @@
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: marvell_machdep.c,v 1.6.2.1 2012/06/28 04:50:38 riz Exp $");
+__KERNEL_RCSID(0, "$NetBSD: marvell_machdep.c,v 1.6.2.2 2013/02/08 19:43:01 riz Exp $");
#include "opt_evbarm_boardtype.h"
#include "opt_ddb.h"
@@ -552,7 +552,7 @@ initarm(void *arg)
* shared by all processes.
*/
valloc_pages(systempage, 1);
- systempage.pv_va = 0x00000000;
+ systempage.pv_va = ARM_VECTORS_HIGH;
/* Allocate stacks for all modes */
valloc_pages(irqstack, IRQ_STACK_SIZE);
@@ -596,7 +596,7 @@ initarm(void *arg)
l1pagetable = kernel_l1pt.pv_va;
/* Map the L2 pages tables in the L1 page table */
- pmap_link_l2pt(l1pagetable, 0x00000000,
+ pmap_link_l2pt(l1pagetable, ARM_VECTORS_HIGH & -L2_S_SEGSIZE,
&kernel_pt_table[KERNEL_PT_SYS]);
for (loop = 0; loop < KERNEL_PT_KERNEL_NUM; loop++)
pmap_link_l2pt(l1pagetable, KERNEL_BASE + loop * 0x00400000,
@@ -656,7 +656,7 @@ initarm(void *arg)
VM_PROT_READ|VM_PROT_WRITE, PTE_PAGETABLE);
/* Map the vector page. */
- pmap_map_entry(l1pagetable, ARM_VECTORS_LOW, systempage.pv_pa,
+ pmap_map_entry(l1pagetable, ARM_VECTORS_HIGH, systempage.pv_pa,
VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE);
/*
@@ -690,7 +690,7 @@ initarm(void *arg)
printf("bootstrap done.\n");
#endif
- arm32_vector_init(ARM_VECTORS_LOW, ARM_VEC_ALL);
+ arm32_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL);
/*
* Pages were allocated during the secondary bootstrap for the