From 47326f80a9a18ae2dee436e21bfc6770d935be55 Mon Sep 17 00:00:00 2001 From: Alexander Aring Date: Tue, 15 Jan 2013 14:48:43 +0100 Subject: remap_range: make function 'remap_range' global Change function remap_range in arm architecture to make it global accessable. For example command 'memtest' can change pte flags to enable or disable cache. Add dummy function for others architectures that doesn't have mmu or pte support. Signed-off-by: Alexander Aring Signed-off-by: Sascha Hauer --- arch/nios2/include/asm/mmu.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 arch/nios2/include/asm/mmu.h (limited to 'arch/nios2') diff --git a/arch/nios2/include/asm/mmu.h b/arch/nios2/include/asm/mmu.h new file mode 100644 index 0000000000..bf654206ac --- /dev/null +++ b/arch/nios2/include/asm/mmu.h @@ -0,0 +1,18 @@ +#ifndef __ASM_MMU_H +#define __ASM_MMU_H + +static inline void remap_range(void *_start, size_t size, uint32_t flags) +{ +} + +static inline uint32_t mmu_get_pte_cached_flags(void) +{ + return 0; +} + +static inline uint32_t mmu_get_pte_uncached_flags(void) +{ + return 0; +} + +#endif /* __ASM_MMU_H */ -- cgit v1.2.3 From 43afe67390697041d1d16d4e5c934d2bfa831399 Mon Sep 17 00:00:00 2001 From: Alexander Aring Date: Tue, 15 Jan 2013 14:48:48 +0100 Subject: barebox-data: add barebox-data sections Add barebox-data section in arm branch to get complete barebox regions in sdram regions tree. Signed-off-by: Alexander Aring Signed-off-by: Sascha Hauer --- arch/arm/lib/barebox.lds.S | 2 ++ arch/blackfin/boards/ipe337/barebox.lds.S | 2 ++ arch/mips/lib/barebox.lds.S | 2 ++ arch/nios2/cpu/barebox.lds.S | 1 + arch/ppc/boards/freescale-p2020rdb/barebox.lds.S | 1 + arch/ppc/boards/pcm030/barebox.lds.S | 1 + arch/x86/lib/barebox.lds.S | 2 ++ common/memory.c | 4 ++++ include/asm-generic/sections.h | 1 + 9 files changed, 16 insertions(+) (limited to 'arch/nios2') diff --git a/arch/arm/lib/barebox.lds.S b/arch/arm/lib/barebox.lds.S index bac1a04f87..e5aee8cd82 100644 --- a/arch/arm/lib/barebox.lds.S +++ b/arch/arm/lib/barebox.lds.S @@ -66,6 +66,7 @@ SECTIONS } #endif _etext = .; /* End of text and rodata section */ + _sdata = .; . = ALIGN(4); .data : { *(.data*) } @@ -87,6 +88,7 @@ SECTIONS __usymtab : { BAREBOX_SYMS } __usymtab_end = .; + _edata = .; . = ALIGN(4); __bss_start = .; .bss : { *(.bss*) } diff --git a/arch/blackfin/boards/ipe337/barebox.lds.S b/arch/blackfin/boards/ipe337/barebox.lds.S index 6a07b43a1c..21a91eeb0a 100644 --- a/arch/blackfin/boards/ipe337/barebox.lds.S +++ b/arch/blackfin/boards/ipe337/barebox.lds.S @@ -55,6 +55,7 @@ SECTIONS .rodata : { *(.rodata) } __etext = .; /* End of text and rodata section */ + __sdata = .; . = ALIGN(4); .data : { *(.data) } @@ -79,6 +80,7 @@ SECTIONS __usymtab : { BAREBOX_SYMS } ___usymtab_end = .; + __edata = .; . = ALIGN(4); ___bss_start = .; .bss : { *(.bss) } diff --git a/arch/mips/lib/barebox.lds.S b/arch/mips/lib/barebox.lds.S index 0cbf2d71ee..5b3d45dc3c 100644 --- a/arch/mips/lib/barebox.lds.S +++ b/arch/mips/lib/barebox.lds.S @@ -44,6 +44,7 @@ SECTIONS .rodata : { *(.rodata*) } _etext = .; /* End of text and rodata section */ + _sdata = .; . = ALIGN(4); .data : { *(.data*) } @@ -68,6 +69,7 @@ SECTIONS __usymtab : { BAREBOX_SYMS } __usymtab_end = .; + _edata = .; . = ALIGN(4); __bss_start = .; .bss : { *(.bss*) } diff --git a/arch/nios2/cpu/barebox.lds.S b/arch/nios2/cpu/barebox.lds.S index af7be4de3c..943c507531 100644 --- a/arch/nios2/cpu/barebox.lds.S +++ b/arch/nios2/cpu/barebox.lds.S @@ -74,6 +74,7 @@ SECTIONS * adjacent to simplify the startup code -- and provide * the global pointer for gp-relative access. */ + _sdata = .; _data = .; .data : { diff --git a/arch/ppc/boards/freescale-p2020rdb/barebox.lds.S b/arch/ppc/boards/freescale-p2020rdb/barebox.lds.S index 95033d4904..85a864ec85 100644 --- a/arch/ppc/boards/freescale-p2020rdb/barebox.lds.S +++ b/arch/ppc/boards/freescale-p2020rdb/barebox.lds.S @@ -41,6 +41,7 @@ SECTIONS _etext = .; PROVIDE (etext = .); + _sdata = .; .rodata : { diff --git a/arch/ppc/boards/pcm030/barebox.lds.S b/arch/ppc/boards/pcm030/barebox.lds.S index cc86d82db6..20ac0d8a06 100644 --- a/arch/ppc/boards/pcm030/barebox.lds.S +++ b/arch/ppc/boards/pcm030/barebox.lds.S @@ -69,6 +69,7 @@ SECTIONS . = (. + 0x0FFF) & 0xFFFFF000; _etext = .; PROVIDE (erotext = .); + _sdata = .; .reloc : { *(.got) diff --git a/arch/x86/lib/barebox.lds.S b/arch/x86/lib/barebox.lds.S index 8bd2a7b30e..05d0f778e5 100644 --- a/arch/x86/lib/barebox.lds.S +++ b/arch/x86/lib/barebox.lds.S @@ -153,6 +153,7 @@ SECTIONS } > barebox BAREBOX_BARE_INIT_SIZE + _sdata = .; .data : AT ( LOADADDR(.text) + SIZEOF(.text) ) { *(.data*) . = ALIGN(4); @@ -191,6 +192,7 @@ SECTIONS . = ALIGN(4); } > barebox + _edata = .; .bss : { __bss_start = .; *(.bss*); diff --git a/common/memory.c b/common/memory.c index 7dd13849c6..81641f0527 100644 --- a/common/memory.c +++ b/common/memory.c @@ -75,6 +75,10 @@ static int mem_malloc_resource(void) (unsigned long)&_stext, (unsigned long)&_etext - (unsigned long)&_stext); + request_sdram_region("barebox data", + (unsigned long)&_sdata, + (unsigned long)&_edata - + (unsigned long)&_sdata); request_sdram_region("bss", (unsigned long)&__bss_start, (unsigned long)&__bss_stop - diff --git a/include/asm-generic/sections.h b/include/asm-generic/sections.h index 17d5fd1ae4..5492aa4d98 100644 --- a/include/asm-generic/sections.h +++ b/include/asm-generic/sections.h @@ -3,6 +3,7 @@ extern char _text[], _stext[], _etext[]; extern char __bss_start[], __bss_stop[]; +extern char _sdata[], _edata[]; extern char __bare_init_start[], __bare_init_end[]; extern char _end[]; extern void *_barebox_image_size; -- cgit v1.2.3