mirror of
https://github.com/espressif/esp-idf.git
synced 2024-10-05 20:47:46 -04:00
Merge branch 'bugfix/fix_a_crash_issue' into 'master'
esp32: modify ld file to fix a crash issue This MR is to fix a crash issue in latest idf See merge request !379
This commit is contained in:
commit
3708e15ea9
@ -170,7 +170,7 @@ Warning: These variables are assumed to have the start and end of the data and i
|
||||
area used statically by the program, respectively. These variables are defined in the ld
|
||||
file.
|
||||
*/
|
||||
extern int _bss_start, _heap_start, _init_start, _iram_text_end;
|
||||
extern int _data_start, _heap_start, _init_start, _iram_text_end;
|
||||
|
||||
/*
|
||||
Initialize the heap allocator. We pass it a bunch of region descriptors, but we need to modify those first to accommodate for
|
||||
@ -183,7 +183,7 @@ void heap_alloc_caps_init() {
|
||||
//Compile-time assert to see if we don't have more tags than is set in heap_regions.h
|
||||
_Static_assert((sizeof(tag_desc)/sizeof(tag_desc[0]))-1 <= HEAPREGIONS_MAX_TAGCOUNT, "More than HEAPREGIONS_MAX_TAGCOUNT tags defined!");
|
||||
//Disable the bits of memory where this code is loaded.
|
||||
disable_mem_region(&_bss_start, &_heap_start); //DRAM used by bss/data static variables
|
||||
disable_mem_region(&_data_start, &_heap_start); //DRAM used by bss/data static variables
|
||||
disable_mem_region(&_init_start, &_iram_text_end); //IRAM used by code
|
||||
disable_mem_region((void*)0x3ffae000, (void*)0x3ffb0000); //knock out ROM data region
|
||||
disable_mem_region((void*)0x40070000, (void*)0x40078000); //CPU0 cache region
|
||||
|
@ -103,7 +103,6 @@ SECTIONS
|
||||
*libesp32.a:panic.o(.rodata .rodata.*)
|
||||
_data_end = ABSOLUTE(.);
|
||||
. = ALIGN(4);
|
||||
_heap_start = ABSOLUTE(.);
|
||||
} >dram0_0_seg
|
||||
|
||||
/* Shared RAM */
|
||||
@ -127,6 +126,7 @@ SECTIONS
|
||||
*(COMMON)
|
||||
. = ALIGN (8);
|
||||
_bss_end = ABSOLUTE(.);
|
||||
_heap_start = ABSOLUTE(.);
|
||||
} >dram0_0_seg
|
||||
|
||||
.flash.rodata :
|
||||
|
@ -87,9 +87,9 @@ PROVIDE ( _ctype_ = 0x3ff96354 );
|
||||
PROVIDE ( __ctype_ptr__ = 0x3ff96350 );
|
||||
PROVIDE ( __ctzdi2 = 0x4000ca64 );
|
||||
PROVIDE ( __ctzsi2 = 0x4000c7f0 );
|
||||
PROVIDE ( _data_end = 0x4000d5c8 );
|
||||
PROVIDE ( _data_end_rom = 0x4000d5c8 );
|
||||
PROVIDE ( _data_end_btdm_rom = 0x4000d4f8 );
|
||||
PROVIDE ( _data_start = 0x4000d4f8 );
|
||||
PROVIDE ( _data_start_rom = 0x4000d4f8 );
|
||||
PROVIDE ( _data_start_btdm_rom = 0x4000d4f4 );
|
||||
PROVIDE ( _data_start_btdm = 0x3ffae6e0);
|
||||
PROVIDE ( _data_end_btdm = 0x3ffaff10);
|
||||
|
Loading…
x
Reference in New Issue
Block a user