svn commit: r261227 - in head/sys: arm/allwinner arm/allwinner/a20 arm/arm arm/at91 arm/broadcom/bcm2835 arm/conf arm/econa arm/freescale/imx arm/freescale/vybrid arm/lpc arm/mv/armadaxp arm/mv/dis...

Andrew Turner andrew at FreeBSD.org
Tue Jan 28 09:12:15 UTC 2014


Author: andrew
Date: Tue Jan 28 09:12:04 2014
New Revision: 261227
URL: http://svnweb.freebsd.org/changeset/base/261227

Log:
  Remove STARTUP_PAGETABLE_ADDR from the ARM configs and replace it with
  memory at the end of the kernel.
  
  This helps reduce the SoC and board specific configuration required.
  
  Reviewed by:	bsdimp
  Tested by:	jmg (armeb), br

Modified:
  head/sys/arm/allwinner/a20/std.a20
  head/sys/arm/allwinner/std.a10
  head/sys/arm/arm/locore.S
  head/sys/arm/at91/std.bwct
  head/sys/arm/at91/std.eb9200
  head/sys/arm/at91/std.ethernut5
  head/sys/arm/at91/std.hl200
  head/sys/arm/at91/std.hl201
  head/sys/arm/at91/std.kb920x
  head/sys/arm/at91/std.qila9g20
  head/sys/arm/at91/std.sam9260ek
  head/sys/arm/at91/std.sam9g20ek
  head/sys/arm/at91/std.sam9x25ek
  head/sys/arm/at91/std.sn9g45
  head/sys/arm/at91/std.tsc4370
  head/sys/arm/broadcom/bcm2835/std.rpi
  head/sys/arm/conf/ATMEL
  head/sys/arm/conf/CNS11XXNAS
  head/sys/arm/conf/CRB
  head/sys/arm/conf/EP80219
  head/sys/arm/conf/GUMSTIX
  head/sys/arm/conf/IQ31244
  head/sys/arm/conf/NSLU
  head/sys/arm/conf/VERSATILEPB
  head/sys/arm/econa/std.econa
  head/sys/arm/freescale/imx/std.imx51
  head/sys/arm/freescale/imx/std.imx53
  head/sys/arm/freescale/imx/std.imx6
  head/sys/arm/freescale/vybrid/std.vybrid
  head/sys/arm/lpc/std.lpc
  head/sys/arm/mv/armadaxp/std.armadaxp
  head/sys/arm/mv/discovery/std.db78xxx
  head/sys/arm/mv/kirkwood/std.kirkwood
  head/sys/arm/mv/orion/std.db88f5xxx
  head/sys/arm/mv/orion/std.ts7800
  head/sys/arm/rockchip/std.rk30xx
  head/sys/arm/s3c2xx0/std.ln2410sbc
  head/sys/arm/samsung/exynos/std.exynos5
  head/sys/arm/tegra/std.tegra2
  head/sys/arm/ti/am335x/std.am335x
  head/sys/arm/ti/omap4/std.omap4
  head/sys/arm/xilinx/std.zynq7
  head/sys/arm/xscale/ixp425/std.avila
  head/sys/conf/ldscript.arm
  head/sys/conf/options.arm

Modified: head/sys/arm/allwinner/a20/std.a20
==============================================================================
--- head/sys/arm/allwinner/a20/std.a20	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/allwinner/a20/std.a20	Tue Jan 28 09:12:04 2014	(r261227)
@@ -16,8 +16,6 @@ options 	KERNPHYSADDR=0x40200000
 makeoptions	KERNVIRTADDR=0xc0200000
 options 	KERNVIRTADDR=0xc0200000
 
-options 	STARTUP_PAGETABLE_ADDR=0x48000000
-
 options 	ARM_L2_PIPT
 
 options 	IPI_IRQ_START=0

Modified: head/sys/arm/allwinner/std.a10
==============================================================================
--- head/sys/arm/allwinner/std.a10	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/allwinner/std.a10	Tue Jan 28 09:12:04 2014	(r261227)
@@ -16,6 +16,4 @@ options		KERNPHYSADDR=0x40200000
 makeoptions	KERNVIRTADDR=0xc0200000
 options		KERNVIRTADDR=0xc0200000
 
-options		STARTUP_PAGETABLE_ADDR=0x48000000
-
 files		"../allwinner/files.a10"

Modified: head/sys/arm/arm/locore.S
==============================================================================
--- head/sys/arm/arm/locore.S	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/arm/locore.S	Tue Jan 28 09:12:04 2014	(r261227)
@@ -144,9 +144,15 @@ disable_mmu:
 	nop
 	mov	pc, r7
 Lunmapped:
-#ifdef STARTUP_PAGETABLE_ADDR
-	/* build page table from scratch */
-	ldr	r0, Lstartup_pagetable
+	/*
+	 * Build page table from scratch.
+	 */
+
+	/* Load the page tables physical address */
+	ldr	r1, Lstartup_pagetable
+	ldr	r2, =(KERNVIRTADDR - KERNPHYSADDR)
+	sub	r0, r1, r2
+
 	adr	r4, mmu_init_table
 	b	3f
 
@@ -197,7 +203,6 @@ Lunmapped:
 	nop
 	CPWAIT(r0)
 
-#endif
 mmu_done:
 	nop
 	adr	r1, .Lstart
@@ -231,7 +236,6 @@ virt_done:
 	adr	r0, .Lmainreturned
 	b	_C_LABEL(panic)
 	/* NOTREACHED */
-#ifdef STARTUP_PAGETABLE_ADDR
 #define MMU_INIT(va,pa,n_sec,attr) \
 	.word	n_sec					    ; \
 	.word	4*((va)>>L1_S_SHIFT)			    ; \
@@ -246,7 +250,7 @@ Lreal_start:
 Lend:	
 	.word	_edata
 Lstartup_pagetable:
-	.word	STARTUP_PAGETABLE_ADDR
+	.word	pagetable
 #ifdef SMP
 Lstartup_pagetable_secondary:
 	.word	temp_pagetable
@@ -272,10 +276,9 @@ mmu_init_table:
 	MMU_INIT(0x48000000, 0x48000000, 1, L1_TYPE_S|L1_SHARED|L1_S_C|L1_S_AP(AP_KRW))
 #endif /* SMP */
 	.word 0	/* end of table */
-#endif
 .Lstart:
 	.word	_edata
-	.word	_end
+	.word	_ebss
 	.word	svcstk + INIT_ARM_STACK_SIZE
 
 .Lvirt_done:
@@ -293,6 +296,15 @@ mmu_init_table:
 svcstk:
 	.space	INIT_ARM_STACK_SIZE
 
+/*
+ * Memory for the initial pagetable. We are unable to place this in
+ * the bss as this will be cleared after the table is loaded.
+ */
+	.section ".init_pagetable"
+	.align	14 /* 16KiB aligned */
+pagetable:
+	.space	L1_TABLE_SIZE
+
 	.text
 	.align	0
 

Modified: head/sys/arm/at91/std.bwct
==============================================================================
--- head/sys/arm/at91/std.bwct	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.bwct	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 options		KERNPHYSADDR=0x20000000	
 makeoptions	KERNVIRTADDR=0xc0000000

Modified: head/sys/arm/at91/std.eb9200
==============================================================================
--- head/sys/arm/at91/std.eb9200	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.eb9200	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 options		KERNPHYSADDR=0x20000000	
 makeoptions	KERNVIRTADDR=0xc0000000

Modified: head/sys/arm/at91/std.ethernut5
==============================================================================
--- head/sys/arm/at91/std.ethernut5	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.ethernut5	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 # $FreeBSD$
 include "../at91/std.at91sam9"
 
-options 	STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options 	KERNPHYSADDR=0x20000000

Modified: head/sys/arm/at91/std.hl200
==============================================================================
--- head/sys/arm/at91/std.hl200	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.hl200	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91"
 
-options		STARTUP_PAGETABLE_ADDR=0x20000000
 makeoptions	KERNPHYSADDR=0x20100000
 options		KERNPHYSADDR=0x20100000	
 makeoptions	KERNVIRTADDR=0xc0100000

Modified: head/sys/arm/at91/std.hl201
==============================================================================
--- head/sys/arm/at91/std.hl201	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.hl201	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91sam9"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x20000000	

Modified: head/sys/arm/at91/std.kb920x
==============================================================================
--- head/sys/arm/at91/std.kb920x	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.kb920x	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 options		KERNPHYSADDR=0x20000000	
 makeoptions	KERNVIRTADDR=0xc0000000

Modified: head/sys/arm/at91/std.qila9g20
==============================================================================
--- head/sys/arm/at91/std.qila9g20	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.qila9g20	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91sam9"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x20000000	

Modified: head/sys/arm/at91/std.sam9260ek
==============================================================================
--- head/sys/arm/at91/std.sam9260ek	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.sam9260ek	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 # $FreeBSD$
 include "../at91/std.at91sam9"
 
-options 	STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options 	KERNPHYSADDR=0x20000000

Modified: head/sys/arm/at91/std.sam9g20ek
==============================================================================
--- head/sys/arm/at91/std.sam9g20ek	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.sam9g20ek	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91sam9"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x20000000	

Modified: head/sys/arm/at91/std.sam9x25ek
==============================================================================
--- head/sys/arm/at91/std.sam9x25ek	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.sam9x25ek	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91sam9"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x20000000	

Modified: head/sys/arm/at91/std.sn9g45
==============================================================================
--- head/sys/arm/at91/std.sn9g45	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.sn9g45	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91sam9g45"
 
-options		STARTUP_PAGETABLE_ADDR=0x70800000
 makeoptions	KERNPHYSADDR=0x70008000
 options		KERNPHYSADDR=0x70008000	
 makeoptions	KERNVIRTADDR=0xc0008000

Modified: head/sys/arm/at91/std.tsc4370
==============================================================================
--- head/sys/arm/at91/std.tsc4370	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/at91/std.tsc4370	Tue Jan 28 09:12:04 2014	(r261227)
@@ -1,7 +1,6 @@
 #$FreeBSD$
 include "../at91/std.at91"
 
-options		STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x20000000	

Modified: head/sys/arm/broadcom/bcm2835/std.rpi
==============================================================================
--- head/sys/arm/broadcom/bcm2835/std.rpi	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/broadcom/bcm2835/std.rpi	Tue Jan 28 09:12:04 2014	(r261227)
@@ -7,6 +7,5 @@ makeoptions	KERNVIRTADDR=0xc0100000
 options		KERNPHYSADDR=0x00100000
 makeoptions	KERNPHYSADDR=0x00100000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x01000000
 options		FREEBSD_BOOT_LOADER
 options		LINUX_BOOT_ABI

Modified: head/sys/arm/conf/ATMEL
==============================================================================
--- head/sys/arm/conf/ATMEL	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/ATMEL	Tue Jan 28 09:12:04 2014	(r261227)
@@ -10,7 +10,6 @@ include "../at91/std.atmel"
 
 # Typical values for most SoCs and board configurations.  Will not work for
 # at91sam9g45 or on some boards with non u-boot boot loaders.
-options 	STARTUP_PAGETABLE_ADDR=0x20800000
 makeoptions	KERNPHYSADDR=0x20000000
 makeoptions	KERNVIRTADDR=0xc0000000
 options 	KERNPHYSADDR=0x20000000

Modified: head/sys/arm/conf/CNS11XXNAS
==============================================================================
--- head/sys/arm/conf/CNS11XXNAS	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/CNS11XXNAS	Tue Jan 28 09:12:04 2014	(r261227)
@@ -25,7 +25,6 @@ ident		CNS11XXNAS
 #options 	KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 #options 	FLASHADDR=0x50000000
 #options 	LOADERRAMADDR=0x00000000
-#options 	STARTUP_PAGETABLE_ADDR=0x10000000
 
 include		"../econa/std.econa"
 

Modified: head/sys/arm/conf/CRB
==============================================================================
--- head/sys/arm/conf/CRB	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/CRB	Tue Jan 28 09:12:04 2014	(r261227)
@@ -24,7 +24,6 @@ options 	KERNPHYSADDR=0x00200000	
 options 	KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 
 options 	COUNTS_PER_SEC=400000000
-options 	STARTUP_PAGETABLE_ADDR=0x00000000
 include		"../xscale/i8134x/std.crb"
 makeoptions	MODULES_OVERRIDE=""
 

Modified: head/sys/arm/conf/EP80219
==============================================================================
--- head/sys/arm/conf/EP80219	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/EP80219	Tue Jan 28 09:12:04 2014	(r261227)
@@ -23,7 +23,6 @@ options 	PHYSADDR=0xa0000000
 options 	KERNPHYSADDR=0xa0200000	
 options 	KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 
-options 	STARTUP_PAGETABLE_ADDR=0xa0000000
 #options 	ARM32_NEW_VM_LAYOUT
 include	"../xscale/i80321/std.ep80219"
 makeoptions	MODULES_OVERRIDE=""

Modified: head/sys/arm/conf/GUMSTIX
==============================================================================
--- head/sys/arm/conf/GUMSTIX	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/GUMSTIX	Tue Jan 28 09:12:04 2014	(r261227)
@@ -30,7 +30,6 @@ options 	PHYSADDR=0xa0000000
 options 	KERNPHYSADDR=0xa0200000	
 options 	KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 
-options 	STARTUP_PAGETABLE_ADDR=0xa0000000
 include		"../xscale/pxa/std.pxa"
 makeoptions	MODULES_OVERRIDE=""
 

Modified: head/sys/arm/conf/IQ31244
==============================================================================
--- head/sys/arm/conf/IQ31244	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/IQ31244	Tue Jan 28 09:12:04 2014	(r261227)
@@ -25,7 +25,6 @@ options 	KERNVIRTADDR=0xc0200000		# Used
 options 	FLASHADDR=0xf0000000
 options 	LOADERRAMADDR=0x00000000
 
-options STARTUP_PAGETABLE_ADDR=0xa0000000
 include		"../xscale/i80321/std.iq31244"
 makeoptions	MODULES_OVERRIDE=""
 

Modified: head/sys/arm/conf/NSLU
==============================================================================
--- head/sys/arm/conf/NSLU	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/NSLU	Tue Jan 28 09:12:04 2014	(r261227)
@@ -25,7 +25,6 @@ ident		NSLU
 #options 	KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 #options 	FLASHADDR=0x50000000
 #options 	LOADERRAMADDR=0x00000000
-#options 	STARTUP_PAGETABLE_ADDR=0x10000000
 
 include		"../xscale/ixp425/std.ixp425"
 # NB: memory mapping is defined in std.avila (see also comment above)

Modified: head/sys/arm/conf/VERSATILEPB
==============================================================================
--- head/sys/arm/conf/VERSATILEPB	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/conf/VERSATILEPB	Tue Jan 28 09:12:04 2014	(r261227)
@@ -29,7 +29,6 @@ makeoptions	KERNVIRTADDR=0xc0100000
 options 	KERNPHYSADDR=0x00100000
 makeoptions	KERNPHYSADDR=0x00100000
 options 	PHYSADDR=0x00000000
-options 	STARTUP_PAGETABLE_ADDR=0x01000000
 options		FREEBSD_BOOT_LOADER
 options		LINUX_BOOT_ABI
 

Modified: head/sys/arm/econa/std.econa
==============================================================================
--- head/sys/arm/econa/std.econa	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/econa/std.econa	Tue Jan 28 09:12:04 2014	(r261227)
@@ -12,6 +12,5 @@ options	KERNPHYSADDR=0x01000000
 options	KERNVIRTADDR=0xc1000000	# Used in ldscript.arm
 options	FLASHADDR=0xD0000000
 options	LOADERRAMADDR=0x00000000
-options	STARTUP_PAGETABLE_ADDR=0x00100000
 
 options	NO_EVENTTIMERS

Modified: head/sys/arm/freescale/imx/std.imx51
==============================================================================
--- head/sys/arm/freescale/imx/std.imx51	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/freescale/imx/std.imx51	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,7 +9,6 @@ makeoptions	KERNVIRTADDR=0xc0100000
 options		KERNPHYSADDR=0x90100000
 makeoptions	KERNPHYSADDR=0x90100000
 options		PHYSADDR=0x90000000
-options		STARTUP_PAGETABLE_ADDR=0x91000000
 
 files "../freescale/imx/files.imx51"
 

Modified: head/sys/arm/freescale/imx/std.imx53
==============================================================================
--- head/sys/arm/freescale/imx/std.imx53	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/freescale/imx/std.imx53	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,7 +9,6 @@ makeoptions	KERNVIRTADDR=0xc0100000
 options		KERNPHYSADDR=0x70100000
 makeoptions	KERNPHYSADDR=0x70100000
 options		PHYSADDR=0x70000000
-options		STARTUP_PAGETABLE_ADDR=0x71000000
 
 files "../freescale/imx/files.imx53"
 

Modified: head/sys/arm/freescale/imx/std.imx6
==============================================================================
--- head/sys/arm/freescale/imx/std.imx6	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/freescale/imx/std.imx6	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,7 +9,6 @@ makeoptions	KERNVIRTADDR		= 0xc2000000
 options		KERNPHYSADDR		= 0x12000000
 makeoptions	KERNPHYSADDR		= 0x12000000
 options		PHYSADDR		= 0x10000000
-options		STARTUP_PAGETABLE_ADDR	= 0x11f00000
 
 files "../freescale/imx/files.imx6"
 

Modified: head/sys/arm/freescale/vybrid/std.vybrid
==============================================================================
--- head/sys/arm/freescale/vybrid/std.vybrid	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/freescale/vybrid/std.vybrid	Tue Jan 28 09:12:04 2014	(r261227)
@@ -13,8 +13,6 @@ options		KERNPHYSADDR=0x80100000
 makeoptions	KERNVIRTADDR=0xc0100000
 options		KERNVIRTADDR=0xc0100000
 
-options		STARTUP_PAGETABLE_ADDR=0x81000000
-
 options		ARM_L2_PIPT
 
 files		"../freescale/vybrid/files.vybrid"

Modified: head/sys/arm/lpc/std.lpc
==============================================================================
--- head/sys/arm/lpc/std.lpc	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/lpc/std.lpc	Tue Jan 28 09:12:04 2014	(r261227)
@@ -8,7 +8,6 @@ cpu		CPU_ARM9
 machine 	arm
 makeoptions	CONF_CFLAGS="-march=armv5te"
 options		PHYSADDR=0x80000000
-options		STARTUP_PAGETABLE_ADDR=0x80000000
 makeoptions	KERNPHYSADDR=0x80100000
 options		KERNPHYSADDR=0x80100000
 makeoptions	KERNVIRTADDR=0xc0100000

Modified: head/sys/arm/mv/armadaxp/std.armadaxp
==============================================================================
--- head/sys/arm/mv/armadaxp/std.armadaxp	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/mv/armadaxp/std.armadaxp	Tue Jan 28 09:12:04 2014	(r261227)
@@ -12,6 +12,5 @@ makeoptions	KERNVIRTADDR=0xc0200000
 options		KERNPHYSADDR=0x00200000
 options		KERNVIRTADDR=0xc0200000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00100000
 
 options		ARM_L2_PIPT

Modified: head/sys/arm/mv/discovery/std.db78xxx
==============================================================================
--- head/sys/arm/mv/discovery/std.db78xxx	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/mv/discovery/std.db78xxx	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,4 +9,3 @@ makeoptions	KERNVIRTADDR=0xc0900000
 options		KERNPHYSADDR=0x00900000
 options		KERNVIRTADDR=0xc0900000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00100000

Modified: head/sys/arm/mv/kirkwood/std.kirkwood
==============================================================================
--- head/sys/arm/mv/kirkwood/std.kirkwood	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/mv/kirkwood/std.kirkwood	Tue Jan 28 09:12:04 2014	(r261227)
@@ -12,4 +12,3 @@ makeoptions	KERNVIRTADDR=0xc0900000
 options		KERNPHYSADDR=0x00900000
 options		KERNVIRTADDR=0xc0900000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00100000

Modified: head/sys/arm/mv/orion/std.db88f5xxx
==============================================================================
--- head/sys/arm/mv/orion/std.db88f5xxx	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/mv/orion/std.db88f5xxx	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,4 +9,3 @@ makeoptions	KERNVIRTADDR=0xc0900000
 options		KERNPHYSADDR=0x00900000
 options		KERNVIRTADDR=0xc0900000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00100000

Modified: head/sys/arm/mv/orion/std.ts7800
==============================================================================
--- head/sys/arm/mv/orion/std.ts7800	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/mv/orion/std.ts7800	Tue Jan 28 09:12:04 2014	(r261227)
@@ -9,7 +9,6 @@ makeoptions	KERNVIRTADDR=0xc0900000
 options		KERNPHYSADDR=0x00900000
 options 	KERNVIRTADDR=0xc0900000
 options		PHYSADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00100000
 options   LOADERRAMADDR=0x00000000
 options   FLASHADDR=0x00008000
 

Modified: head/sys/arm/rockchip/std.rk30xx
==============================================================================
--- head/sys/arm/rockchip/std.rk30xx	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/rockchip/std.rk30xx	Tue Jan 28 09:12:04 2014	(r261227)
@@ -17,8 +17,6 @@ options		KERNPHYSADDR=0x60400000
 makeoptions	KERNVIRTADDR=0xc0400000
 options		KERNVIRTADDR=0xc0400000
 
-options		STARTUP_PAGETABLE_ADDR=0x60200000
-
 options		ARM_L2_PIPT
 
 options		IPI_IRQ_START=0

Modified: head/sys/arm/s3c2xx0/std.ln2410sbc
==============================================================================
--- head/sys/arm/s3c2xx0/std.ln2410sbc	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/s3c2xx0/std.ln2410sbc	Tue Jan 28 09:12:04 2014	(r261227)
@@ -6,6 +6,5 @@ makeoptions	KERNVIRTADDR=0xc0000000
 options		KERNPHYSADDR=0x30000000	
 options		KERNVIRTADDR=0xc0000000
 options		PHYSADDR=0x30000000
-options		STARTUP_PAGETABLE_ADDR=0x30800000
 options		NO_EVENTTIMERS
 

Modified: head/sys/arm/samsung/exynos/std.exynos5
==============================================================================
--- head/sys/arm/samsung/exynos/std.exynos5	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/samsung/exynos/std.exynos5	Tue Jan 28 09:12:04 2014	(r261227)
@@ -13,8 +13,6 @@ options		KERNPHYSADDR=0x40f00000
 makeoptions	KERNVIRTADDR=0xc0f00000
 options		KERNVIRTADDR=0xc0f00000
 
-options		STARTUP_PAGETABLE_ADDR=0x40100000
-
 options		ARM_L2_PIPT
 
 options		IPI_IRQ_START=0

Modified: head/sys/arm/tegra/std.tegra2
==============================================================================
--- head/sys/arm/tegra/std.tegra2	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/tegra/std.tegra2	Tue Jan 28 09:12:04 2014	(r261227)
@@ -11,6 +11,4 @@ options		KERNPHYSADDR=0x00200000
 makeoptions	KERNVIRTADDR=0xc0200000
 options		KERNVIRTADDR=0xc0200000
 
-options		STARTUP_PAGETABLE_ADDR=0x00100000
-
 files		"../tegra/files.tegra2"

Modified: head/sys/arm/ti/am335x/std.am335x
==============================================================================
--- head/sys/arm/ti/am335x/std.am335x	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/ti/am335x/std.am335x	Tue Jan 28 09:12:04 2014	(r261227)
@@ -14,8 +14,6 @@ makeoptions	KERNPHYSADDR=0x80200000
 options		KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 makeoptions	KERNVIRTADDR=0xc0200000
 
-options		STARTUP_PAGETABLE_ADDR=0x80000000
-
 options		SOC_TI_AM335X
 
 options		ARM_L2_PIPT

Modified: head/sys/arm/ti/omap4/std.omap4
==============================================================================
--- head/sys/arm/ti/omap4/std.omap4	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/ti/omap4/std.omap4	Tue Jan 28 09:12:04 2014	(r261227)
@@ -14,8 +14,6 @@ makeoptions	KERNPHYSADDR=0x80200000
 options		KERNVIRTADDR=0xc0200000		# Used in ldscript.arm
 makeoptions	KERNVIRTADDR=0xc0200000
 
-options		STARTUP_PAGETABLE_ADDR=0x80000000
-
 options		SOC_OMAP4
 
 options		ARM_L2_PIPT

Modified: head/sys/arm/xilinx/std.zynq7
==============================================================================
--- head/sys/arm/xilinx/std.zynq7	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/xilinx/std.zynq7	Tue Jan 28 09:12:04 2014	(r261227)
@@ -18,6 +18,5 @@ makeoptions	KERNPHYSADDR=0x00100000
 options		KERNVIRTADDR=0xc0100000		# Used in ldscript.arm
 makeoptions	KERNVIRTADDR=0xc0100000
 
-options		STARTUP_PAGETABLE_ADDR=0x000f0000
 options		ARM_L2_PIPT
 

Modified: head/sys/arm/xscale/ixp425/std.avila
==============================================================================
--- head/sys/arm/xscale/ixp425/std.avila	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/arm/xscale/ixp425/std.avila	Tue Jan 28 09:12:04 2014	(r261227)
@@ -19,4 +19,3 @@ options		KERNVIRTADDR=0xc0200000		# Used
 makeoptions	KERNVIRTADDR=0xc0200000
 options		FLASHADDR=0x50000000
 options		LOADERRAMADDR=0x00000000
-options		STARTUP_PAGETABLE_ADDR=0x00000000

Modified: head/sys/conf/ldscript.arm
==============================================================================
--- head/sys/conf/ldscript.arm	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/conf/ldscript.arm	Tue Jan 28 09:12:04 2014	(r261227)
@@ -107,6 +107,12 @@ SECTIONS
    *(.dynbss)
    *(.bss)
    *(COMMON)
+   . = ALIGN(32 / 8);
+   _ebss = .;
+   /* A section for the initial page table, it doesn't need to be in the
+      kernel file, however unlike normal .bss entries should not be zeroed
+      out as we use it before the .bss section is cleared. */
+   *(.init_pagetable)
   }
   . = ALIGN(32 / 8);
   _end = . ;

Modified: head/sys/conf/options.arm
==============================================================================
--- head/sys/conf/options.arm	Tue Jan 28 08:49:00 2014	(r261226)
+++ head/sys/conf/options.arm	Tue Jan 28 09:12:04 2014	(r261227)
@@ -50,7 +50,6 @@ SOC_OMAP3		opt_global.h
 SOC_OMAP4		opt_global.h
 SOC_TI_AM335X		opt_global.h
 SOC_TEGRA2		opt_global.h
-STARTUP_PAGETABLE_ADDR	opt_global.h
 XSCALE_CACHE_READ_WRITE_ALLOCATE	opt_global.h
 XSACLE_DISABLE_CCNT	opt_timer.h
 VERBOSE_INIT_ARM	opt_global.h


More information about the svn-src-all mailing list