diff options
| author | york <yorksun@freescale.com> | 2010-07-02 22:26:03 +0000 | 
|---|---|---|
| committer | Kumar Gala <galak@kernel.crashing.org> | 2010-07-26 13:07:53 -0500 | 
| commit | d51cc7a0cd1b9763a3250d44a07032f9b1bc96ae (patch) | |
| tree | fa15276730927ad88fab76027743c3dcc5ff21f6 | |
| parent | a3f18529ec9cd291f040f6a9c6e9ecf0f7cb721f (diff) | |
| download | olio-uboot-2014.01-d51cc7a0cd1b9763a3250d44a07032f9b1bc96ae.tar.xz olio-uboot-2014.01-d51cc7a0cd1b9763a3250d44a07032f9b1bc96ae.zip | |
powerpc/p2020: Move INIT_RAM_ADDR physical address higher for 36-bit for P2020DS
If 36-bit is enabled, move INIT_RAM_ADDR physical address higher
to free lowest 4GB address space.
Signed-off-by: York Sun <yorksun@freescale.com>
| -rw-r--r-- | board/freescale/p2020ds/tlb.c | 8 | ||||
| -rw-r--r-- | include/configs/P2020DS.h | 12 | 
2 files changed, 16 insertions, 4 deletions
| diff --git a/board/freescale/p2020ds/tlb.c b/board/freescale/p2020ds/tlb.c index 36ad086d0..824b3b29f 100644 --- a/board/freescale/p2020ds/tlb.c +++ b/board/freescale/p2020ds/tlb.c @@ -28,19 +28,19 @@  struct fsl_e_tlb_entry tlb_table[] = {  	/* TLB 0 - for temp stack in cache */ -	SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR, CONFIG_SYS_INIT_RAM_ADDR, +	SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR, CONFIG_SYS_INIT_RAM_ADDR_PHYS,  		      MAS3_SX|MAS3_SW|MAS3_SR, 0,  		      0, 0, BOOKE_PAGESZ_4K, 0),  	SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 4 * 1024, -		      CONFIG_SYS_INIT_RAM_ADDR + 4 * 1024, +		      CONFIG_SYS_INIT_RAM_ADDR_PHYS + 4 * 1024,  		      MAS3_SX|MAS3_SW|MAS3_SR, 0,  		      0, 0, BOOKE_PAGESZ_4K, 0),  	SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 8 * 1024, -		      CONFIG_SYS_INIT_RAM_ADDR + 8 * 1024, +		      CONFIG_SYS_INIT_RAM_ADDR_PHYS + 8 * 1024,  		      MAS3_SX|MAS3_SW|MAS3_SR, 0,  		      0, 0, BOOKE_PAGESZ_4K, 0),  	SET_TLB_ENTRY(0, CONFIG_SYS_INIT_RAM_ADDR + 12 * 1024, -		      CONFIG_SYS_INIT_RAM_ADDR + 12 * 1024, +		      CONFIG_SYS_INIT_RAM_ADDR_PHYS + 12 * 1024,  		      MAS3_SX|MAS3_SW|MAS3_SR, 0,  		      0, 0, BOOKE_PAGESZ_4K, 0), diff --git a/include/configs/P2020DS.h b/include/configs/P2020DS.h index bf2acbf4c..a1ecf0524 100644 --- a/include/configs/P2020DS.h +++ b/include/configs/P2020DS.h @@ -249,6 +249,18 @@  #define CONFIG_SYS_INIT_RAM_LOCK	1  #define CONFIG_SYS_INIT_RAM_ADDR	0xffd00000	/* Initial L1 address */ +#ifdef CONFIG_PHYS_64BIT +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0xf +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR +/* The assembler doesn't like typecast */ +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS \ +	((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \ +	  CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW) +#else +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS	CONFIG_SYS_INIT_RAM_ADDR /* Initial L1 address */ +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0 +#define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW CONFIG_SYS_INIT_RAM_ADDR_PHYS +#endif  #define CONFIG_SYS_INIT_RAM_END	0x00004000	/* End of used area in RAM */  #define CONFIG_SYS_GBL_DATA_SIZE	128	/* num bytes initial data */ |