c749e4bfbd
Load all sections to LMA not VMA, so the startup code(e.g. start.S) need relocate .data section to the final address(VMA) and zero .bss section by self. For example, SiFli and Actions: Background: Device with small sram, Bootloader run in sram and psram, need boot to Application, with memory overlap and without XIP. VMA of .data is in "psram" and LMA in "rom", if not enable `ELF_LOADTO_LMA`, ELF loader will load the section to VMA (will fill bootloader itself). Signed-off-by: wangjianyu3 <wangjianyu3@xiaomi.com>
84 lines
2.5 KiB
Plaintext
84 lines
2.5 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
config ELF_ALIGN_LOG2
|
|
int "Log2 Section Alignment"
|
|
default 2
|
|
---help---
|
|
Align all sections to this Log2 value: 0->1, 1->2, 2->4, etc.
|
|
|
|
config ELF_STACKSIZE
|
|
int "ELF Stack Size"
|
|
default DEFAULT_TASK_STACKSIZE
|
|
---help---
|
|
This is the default stack size that will be used when starting ELF binaries.
|
|
|
|
config ELF_BUFFERSIZE
|
|
int "ELF I/O Buffer Size"
|
|
default 32
|
|
---help---
|
|
This is an I/O buffer that is used to access the ELF file. Variable length items
|
|
will need to be read (such as symbol names). This is really just this initial
|
|
size of the buffer; it will be reallocated as necessary to hold large symbol
|
|
names. Default: 32
|
|
|
|
config ELF_BUFFERINCR
|
|
int "ELF I/O Buffer Realloc Increment"
|
|
default 32
|
|
---help---
|
|
This is an I/O buffer that is used to access the ELF file. Variable length items
|
|
will need to be read (such as symbol names). This value specifies the size
|
|
increment to use each time the buffer is reallocated. Default: 32
|
|
|
|
config ELF_DUMPBUFFER
|
|
bool "Dump ELF buffers"
|
|
default n
|
|
depends on DEBUG_INFO
|
|
---help---
|
|
Dump various ELF buffers for debug purposes
|
|
|
|
config ELF_EXIDX_SECTNAME
|
|
string "ELF Section Name for Exception Index"
|
|
default ".ARM.exidx"
|
|
depends on CXX_EXCEPTION && ARCH_ARM
|
|
---help---
|
|
Set the name string for the exception index section on the ELF modules to
|
|
be loaded by the ELF binary loader.
|
|
|
|
This is needed to support exception handling on loadable ELF modules.
|
|
|
|
config ELF_RELOCATION_BUFFERCOUNT
|
|
int "ELF Relocation Table Buffer Count"
|
|
default 256
|
|
---help---
|
|
This is a relocation buffer that is used to store elf relocation table to
|
|
reduce access fs. Default: 256
|
|
|
|
config ELF_SYMBOL_CACHECOUNT
|
|
int "ELF SYMBOL Table Cache Count"
|
|
default 256
|
|
---help---
|
|
This is a cache that is used to store elf symbol table to
|
|
reduce access fs. Default: 256
|
|
|
|
config ELF_COREDUMP
|
|
bool "ELF Coredump"
|
|
depends on ARCH_HAVE_TCBINFO
|
|
default n
|
|
---help---
|
|
Generate ELF core dump to provide information about the CPU state and the
|
|
memory state of program.
|
|
The memory state embeds a snapshot of all segments mapped in the
|
|
memory space of the program. The CPU state contains register values
|
|
when the core dump has been generated.
|
|
|
|
config ELF_LOADTO_LMA
|
|
bool "ELF load sections to LMA"
|
|
default n
|
|
---help---
|
|
Load all section to LMA not VMA, so the startup code(e.g. start.S) need
|
|
relocate .data section to the final address(VMA) and zero .bss section
|
|
by self.
|