X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=FreeRTOS%2FDemo%2FRISC-V_IGLOO2_Creative_SoftConsole%2FMicrosemi_Code%2Friscv_hal%2Fmicrosemi-riscv-igloo2.ld;h=68d030d72b1c99cdd2962957a88dc68c22c6bfb1;hb=5c08a1d2661e1293aca3e46875a790e3ece7ac0c;hp=99d1c10dd143db3cc22dc8563ff3c1ecbff8f319;hpb=bf8e20a60bb367f516b003a181090b42f579659d;p=freertos diff --git a/FreeRTOS/Demo/RISC-V_IGLOO2_Creative_SoftConsole/Microsemi_Code/riscv_hal/microsemi-riscv-igloo2.ld b/FreeRTOS/Demo/RISC-V_IGLOO2_Creative_SoftConsole/Microsemi_Code/riscv_hal/microsemi-riscv-igloo2.ld index 99d1c10dd..68d030d72 100644 --- a/FreeRTOS/Demo/RISC-V_IGLOO2_Creative_SoftConsole/Microsemi_Code/riscv_hal/microsemi-riscv-igloo2.ld +++ b/FreeRTOS/Demo/RISC-V_IGLOO2_Creative_SoftConsole/Microsemi_Code/riscv_hal/microsemi-riscv-igloo2.ld @@ -1,17 +1,17 @@ /******************************************************************************* * (c) Copyright 2016-2018 Microsemi SoC Products Group. All rights reserved. - * + * * file name : microsemi-riscv-igloo2.ld * Mi-V soft processor linker script for creating a SoftConsole downloadable * image executing in eNVM. - * + * * This linker script assumes that the eNVM is connected at on the Mi-V soft - * processor memory space. + * processor memory space. * * SVN $Revision: 9661 $ * SVN $Date: 2018-01-15 16:13:33 +0530 (Mon, 15 Jan 2018) $ */ - + OUTPUT_ARCH( "riscv" ) ENTRY(_start) @@ -24,19 +24,19 @@ MEMORY RAM_START_ADDRESS = 0x80000000; /* Must be the same value MEMORY region ram ORIGIN above. */ RAM_SIZE = 64k; /* Must be the same value MEMORY region ram LENGTH above. */ -STACK_SIZE = 2k; /* needs to be calculated for your application */ +STACK_SIZE = 2k; /* needs to be calculated for your application */ HEAP_SIZE = 2k; /* needs to be calculated for your application */ SECTIONS { .text : ALIGN(0x10) { - KEEP (*(SORT_NONE(.text.entry))) + KEEP (*(SORT_NONE(.text.entry))) . = ALIGN(0x10); *(.text .text.* .gnu.linkonce.t.*) *(.plt) . = ALIGN(0x10); - + KEEP (*crtbegin.o(.ctors)) KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) KEEP (*(SORT(.ctors.*))) @@ -45,12 +45,12 @@ SECTIONS KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) KEEP (*(SORT(.dtors.*))) KEEP (*crtend.o(.dtors)) - + *(.rodata .rodata.* .gnu.linkonce.r.*) - *(.gcc_except_table) + *(.gcc_except_table) *(.eh_frame_hdr) *(.eh_frame) - + KEEP (*(.init)) KEEP (*(.fini)) @@ -66,14 +66,14 @@ SECTIONS KEEP (*(SORT(.fini_array.*))) PROVIDE_HIDDEN (__fini_array_end = .); . = ALIGN(0x10); - + } >envm /* short/global data section */ .sdata : ALIGN(0x10) { __sdata_load = LOADADDR(.sdata); - __sdata_start = .; + __sdata_start = .; PROVIDE( __global_pointer$ = . + 0x800); *(.srodata.cst16) *(.srodata.cst8) *(.srodata.cst4) *(.srodata.cst2) *(.srodata*) @@ -84,9 +84,9 @@ SECTIONS /* data section */ .data : ALIGN(0x10) - { + { __data_load = LOADADDR(.data); - __data_start = .; + __data_start = .; *(.got.plt) *(.got) *(.shdata) *(.data .data.* .gnu.linkonce.d.*) @@ -103,10 +103,10 @@ SECTIONS . = ALIGN(0x10); __sbss_end = .; } > ram - + /* sbss section */ .bss : ALIGN(0x10) - { + { __bss_start = .; *(.shbss) *(.bss .bss.* .gnu.linkonce.b.*) @@ -117,7 +117,7 @@ SECTIONS /* End of uninitialized data segment */ _end = .; - + .heap : ALIGN(0x10) { __heap_start = .; @@ -126,13 +126,14 @@ SECTIONS . = ALIGN(0x10); _heap_end = __heap_end; } > ram - + .stack : ALIGN(0x10) { __stack_bottom = .; . += STACK_SIZE; __stack_top = .; _sp = .; + __freertos_irq_stack_top = .; } > ram }