Module Name: src Committed By: matt Date: Fri Mar 28 21:56:02 UTC 2014
Modified Files: src/sys/arch/arm/arm32: genassym.cf Log Message: Add ARM_MMU_EXTENDED support. To generate a diff of this commit: cvs rdiff -u -r1.67 -r1.68 src/sys/arch/arm/arm32/genassym.cf 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/arm32/genassym.cf diff -u src/sys/arch/arm/arm32/genassym.cf:1.67 src/sys/arch/arm/arm32/genassym.cf:1.68 --- src/sys/arch/arm/arm32/genassym.cf:1.67 Wed Feb 26 02:07:58 2014 +++ src/sys/arch/arm/arm32/genassym.cf Fri Mar 28 21:56:02 2014 @@ -1,4 +1,4 @@ -# $NetBSD: genassym.cf,v 1.67 2014/02/26 02:07:58 matt Exp $ +# $NetBSD: genassym.cf,v 1.68 2014/03/28 21:56:02 matt Exp $ # Copyright (c) 1982, 1990 The Regents of the University of California. # All rights reserved. @@ -48,6 +48,7 @@ include <uvm/uvm_extern.h> include <arm/fiq.h> include <arm/vfpreg.h> include <arm/locore.h> +include <arm/undefined.h> include <arm/arm32/pte.h> include <machine/pmap.h> @@ -81,6 +82,10 @@ ifdef __HAVE_UNNESTED_INTRS define __HAVE_UNNESTED_INTRS 1 endif +ifdef ARM_MMU_EXTENDED +define ARM_MMU_EXTENDED 1 +endif + define KERNEL_BASE KERNEL_BASE define VM_MIN_ADDRESS VM_MIN_ADDRESS define VM_MAXUSER_ADDRESS VM_MAXUSER_ADDRESS @@ -90,6 +95,12 @@ define DCACHE_LINE_SIZE offsetof(struct define PV_PA offsetof(pv_addr_t, pv_pa) define PMAP_DOMAIN_KERNEL PMAP_DOMAIN_KERNEL define DOMAIN_CLIENT DOMAIN_CLIENT +ifdef ARM_MMU_EXTENDED +define DOMAIN_DEFAULT ((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | (DOMAIN_CLIENT << (PMAP_DOMAIN_USER*2))) +else +define DOMAIN_DEFAULT ((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT) +endif + define L1_S_PROTO_generic L1_S_PROTO_generic define L1_S_PROTO_armv7 L1_S_PROTO_armv7 define L1_S_PROTO_xscale L1_S_PROTO_xscale @@ -99,12 +110,15 @@ endif define L1_S_FRAME L1_S_FRAME define L1_S_SHIFT L1_S_SHIFT define L1_S_SIZE L1_S_SIZE +define L1_S_CACHEABLE L1_S_C|L1_S_B|L1_S_V6_S define L1_S_B L1_S_B define L1_S_C L1_S_C define L1_S_V6_S L1_S_V6_S +define L1_S_V6_XN L1_S_V6_XN define L1_S_AP_KR L1_S_AP(AP_KR) define L1_S_AP_KRW L1_S_AP(AP_KRW) define L1_S_APv7_KRW L1_S_AP(AP7_KRW) +define L1_S_DOM_MASK L1_S_DOM_MASK define L1_TABLE_SIZE L1_TABLE_SIZE define L1_TYPE_S L1_TYPE_S define L1_S_DOM_KERNEL L1_S_DOM(PMAP_DOMAIN_KERNEL) @@ -118,6 +132,8 @@ define L2_S_SIZE L2_S_SIZE define L2_C L2_C define L2_AP_KRW L2_AP(AP_KRW) +define TTBCR_S_N_1 __SHIFTIN(1, TTBCR_S_N) + ifdef PMAP_INCLUDE_PTE_SYNC define PMAP_INCLUDE_PTE_SYNC 1 endif @@ -217,6 +233,8 @@ define CI_LASTLWP offsetof(struct cpu_i define VFP_FPEXC_EN VFP_FPEXC_EN +define NSACR_VFPCP NSACR_CPn(VFP_COPROC)|NSACR_CPn(VFP_COPROC2) + # Constants required for in_cksum() and friends. define M_LEN offsetof(struct mbuf, m_len) define M_DATA offsetof(struct mbuf, m_data)