forked from Imagelibrary/rtems
bsps/powerpc: Add .nvram section
This commit is contained in:
@@ -22,5 +22,6 @@ REGION_ALIAS ("REGION_WORK", RAM_EXT);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NVRAM", NOCACHE);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -22,5 +22,6 @@ REGION_ALIAS ("REGION_WORK", RAM);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NVRAM", NOCACHE);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -28,5 +28,6 @@ REGION_ALIAS ("REGION_WORK", RAM_1);
|
||||
REGION_ALIAS ("REGION_STACK", RAM_1);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NVRAM", NOCACHE);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -2,6 +2,7 @@ MEMORY {
|
||||
RAM : ORIGIN = 0x40000000, LENGTH = 256K - 16k
|
||||
RAM_EXT : ORIGIN = 0x20000000, LENGTH = 512K
|
||||
NOCACHE : ORIGIN = 0x4003c000, LENGTH = 16k
|
||||
NVRAM : ORIGIN = 0x3ffa0000, LENGTH = 128k
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", STARTROM);
|
||||
@@ -21,5 +22,6 @@ REGION_ALIAS ("REGION_WORK", RAM);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", ROM);
|
||||
REGION_ALIAS ("REGION_NVRAM", NVRAM);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -3,6 +3,7 @@ MEMORY {
|
||||
RAM : ORIGIN = 0x40000000, LENGTH = 256K - 16k
|
||||
RAM_EXT : ORIGIN = 0x20000000, LENGTH = 512K
|
||||
NOCACHE : ORIGIN = 0x4003c000, LENGTH = 16k
|
||||
EMPTY : ORIGIN = 0x0, LENGTH = 0
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", ROM);
|
||||
@@ -22,5 +23,6 @@ REGION_ALIAS ("REGION_WORK", RAM);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", ROM);
|
||||
REGION_ALIAS ("REGION_NVRAM", EMPTY);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -31,5 +31,6 @@ REGION_ALIAS ("REGION_WORK", RAM_EXT);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
|
||||
REGION_ALIAS ("REGION_NVRAM", NOCACHE);
|
||||
|
||||
INCLUDE linkcmds.mpc55xx
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
MEMORY {
|
||||
LOW : ORIGIN = 0x4000, LENGTH = 16M - 16k
|
||||
HIGH : ORIGIN = 0x1000000, LENGTH = 32M
|
||||
EMPTY : ORIGIN = 0x0, LENGTH = 0
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", LOW);
|
||||
@@ -24,8 +25,9 @@ REGION_ALIAS ("REGION_BSS", HIGH);
|
||||
REGION_ALIAS ("REGION_RWEXTRA", HIGH);
|
||||
REGION_ALIAS ("REGION_WORK", HIGH);
|
||||
REGION_ALIAS ("REGION_STACK", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE", EMPTY);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", EMPTY);
|
||||
REGION_ALIAS ("REGION_NVRAM", EMPTY);
|
||||
|
||||
bsp_section_robarrier_align = 0x1000000;
|
||||
bsp_section_rwbarrier_align = 0x1000000;
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
MEMORY {
|
||||
RAM : ORIGIN = 0x4000000, LENGTH = 64M
|
||||
EMPTY : ORIGIN = 0x0, LENGTH = 0
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", RAM);
|
||||
@@ -23,8 +24,9 @@ REGION_ALIAS ("REGION_BSS", RAM);
|
||||
REGION_ALIAS ("REGION_RWEXTRA", RAM);
|
||||
REGION_ALIAS ("REGION_WORK", RAM);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", EMPTY);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", EMPTY);
|
||||
REGION_ALIAS ("REGION_NVRAM", EMPTY);
|
||||
|
||||
bsp_section_robarrier_align = 0x1000000;
|
||||
bsp_section_rwbarrier_align = 0x1000000;
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
MEMORY {
|
||||
LOW : ORIGIN = 0x4000, LENGTH = 16M - 16k
|
||||
HIGH : ORIGIN = 0x1000000, LENGTH = 32M
|
||||
EMPTY : ORIGIN = 0x0, LENGTH = 0
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", LOW);
|
||||
@@ -24,8 +25,9 @@ REGION_ALIAS ("REGION_BSS", HIGH);
|
||||
REGION_ALIAS ("REGION_RWEXTRA", HIGH);
|
||||
REGION_ALIAS ("REGION_WORK", HIGH);
|
||||
REGION_ALIAS ("REGION_STACK", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", HIGH);
|
||||
REGION_ALIAS ("REGION_NOCACHE", EMPTY);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", EMPTY);
|
||||
REGION_ALIAS ("REGION_NVRAM", EMPTY);
|
||||
|
||||
bsp_section_robarrier_align = 0x1000000;
|
||||
bsp_section_rwbarrier_align = 0x1000000;
|
||||
|
||||
@@ -99,12 +99,18 @@ LINKER_SYMBOL(bsp_section_nocache_size)
|
||||
LINKER_SYMBOL(bsp_section_nocache_load_begin)
|
||||
LINKER_SYMBOL(bsp_section_nocache_load_end)
|
||||
|
||||
LINKER_SYMBOL(bsp_section_nvram_begin)
|
||||
LINKER_SYMBOL(bsp_section_nvram_end)
|
||||
LINKER_SYMBOL(bsp_section_nvram_size)
|
||||
|
||||
#define BSP_FAST_TEXT_SECTION __attribute__((section(".bsp_fast_text")))
|
||||
|
||||
#define BSP_FAST_DATA_SECTION __attribute__((section(".bsp_fast_data")))
|
||||
|
||||
#define BSP_NOCACHE_SECTION __attribute__((section(".bsp_nocache")))
|
||||
|
||||
#define BSP_NVRAM_SECTION __attribute__((section(".bsp_nvram")))
|
||||
|
||||
/** @} */
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
@@ -340,6 +340,13 @@ SECTIONS {
|
||||
bsp_section_nocache_load_begin = LOADADDR (.nocache);
|
||||
bsp_section_nocache_load_end = bsp_section_nocache_load_begin + bsp_section_nocache_size;
|
||||
|
||||
.nvram (NOLOAD) : {
|
||||
bsp_section_nvram_begin = .;
|
||||
*(SORT(.bsp_nvram*))
|
||||
bsp_section_nvram_end = .;
|
||||
} > REGION_NVRAM
|
||||
bsp_section_nvram_size = bsp_section_nvram_end - bsp_section_nvram_begin;
|
||||
|
||||
/* FIXME */
|
||||
RamBase = ORIGIN (REGION_WORK);
|
||||
RamSize = LENGTH (REGION_WORK);
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
MEMORY {
|
||||
RAM : ORIGIN = 0x0, LENGTH = 128M
|
||||
EMPTY : ORIGIN = 0x0, LENGTH = 0
|
||||
}
|
||||
|
||||
REGION_ALIAS ("REGION_START", RAM);
|
||||
@@ -19,5 +20,6 @@ REGION_ALIAS ("REGION_WORK", RAM);
|
||||
REGION_ALIAS ("REGION_STACK", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE", RAM);
|
||||
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
|
||||
REGION_ALIAS ("REGION_NVRAM", EMPTY);
|
||||
|
||||
INCLUDE linkcmds.base
|
||||
|
||||
Reference in New Issue
Block a user