Bladeren bron

max80.ld: add a few more sections

Add a few more sections in anticipation of using sdram a lot more
soon.
H. Peter Anvin 3 jaren geleden
bovenliggende
commit
83045dccb0
1 gewijzigde bestanden met toevoegingen van 18 en 6 verwijderingen
  1. 18 6
      fw/max80.ld

+ 18 - 6
fw/max80.ld

@@ -38,6 +38,7 @@ SECTIONS
 		*(.gcc_except_table .gcc_except_table.*)
 		*(.gnu_extab*)
 		*(.exception_ranges*)
+		*(.text.exit .text.exit.*)
 		*crtbegin.o(*)
 		*crt0.o(*)
 	}
@@ -96,15 +97,21 @@ SECTIONS
 
 	__global_pointer$ = 0;
 
-	.text : ALIGN(4) {
-		PROVIDE(___text = .);
+	PROVIDE(___text = .);
+
+	.init : ALIGN(4) {
 		KEEP (*(SORT_NONE(.init)))
-	        *(.text.unlikely .text.*_unlikely .text.unlikely.*)
-		*(.text.exit .text.exit.*)
-		*(.text.startup .text.startup.*)
+	}
+
+	.text.hot : ALIGN(4) {
 		*(.text.hot .text.hot.*)
+	}
+
+	.text : ALIGN(4) {
+		*(.text.startup .text.startup.*)
 		*(SORT(.text.sorted.*))
 		*(.text .stub .text.* .gnu.linkonce.t.*)
+	        *(.text.unlikely .text.*_unlikely .text.unlikely.*)
 		/* .gnu.warning sections are handled specially by elf.em.  */
 		*(.gnu.warning)
 	}
@@ -176,8 +183,13 @@ SECTIONS
 	__dram_bss_end = .;
 	__dram_bss_len = __dram_bss_end - __dram_bss_start;
 
+	/* Like BSS except no need to clear on boot */
+	.dram.noinit (NOLOAD) : ALIGN(8) {
+		*(.dram.noinit*)
+	}
+
 	/* No need to zero the heap */
-	.heap (NOLOAD) : ALIGN(8) {
+	.heap (NOLOAD) : ALIGN(16) {
 		*(.heap)
 	} >DRAM