summaryrefslogtreecommitdiff
path: root/c/bigfib/rvcontroller.ld
diff options
context:
space:
mode:
Diffstat (limited to 'c/bigfib/rvcontroller.ld')
-rw-r--r--c/bigfib/rvcontroller.ld45
1 files changed, 45 insertions, 0 deletions
diff --git a/c/bigfib/rvcontroller.ld b/c/bigfib/rvcontroller.ld
new file mode 100644
index 0000000..985892b
--- /dev/null
+++ b/c/bigfib/rvcontroller.ld
@@ -0,0 +1,45 @@
+/* Thanks https://github.com/darklife/darkriscv */
+ __heap_size = 0x200; /* required amount of heap */
+ __stack_size = 0x800; /* required amount of stack */
+ ENTRY(_start);
+ MEMORY
+ {
+ RAM (rwx) : ORIGIN = 0x00000000, LENGTH = 0x10000
+ }
+ SECTIONS
+ {
+ .text :
+ {
+ *(.text.startup)
+ *(.text)
+ *(.text)
+ *(.rodata*)
+ } > RAM
+ .data :
+ {
+ *(.sbss)
+ *(.data)
+ *(.bss)
+ *(.rela*)
+ *(COMMON)
+ } > RAM
+
+ .heap :
+ {
+ . = ALIGN(4);
+ PROVIDE ( end = . );
+ _sheap = .;
+ . = . + __heap_size;
+ . = ALIGN(4);
+ _eheap = .;
+ } >RAM
+
+ .stack :
+ {
+ . = ALIGN(4);
+ _estack = .;
+ . = . + __stack_size;
+ . = ALIGN(4);
+ _sstack = .;
+ } >RAM
+ }