Index: c/src/lib/libbsp/powerpc/psim/startup/linkcmds
===================================================================
--- c/src/lib/libbsp/powerpc/psim/startup/linkcmds	(revision 1ca488b55d4437568abac7774515a5da02deb25f)
+++ c/src/lib/libbsp/powerpc/psim/startup/linkcmds	(revision a524c00cfc32165581d62d628561f72501a92e5a)
@@ -32,10 +32,10 @@
   {
     *(.vectors)
-  }
+  } >EPROM
 
   /* Read-only sections, merged into text segment: */
   /* . = 0x40000 + SIZEOF_HEADERS; */
   . = 0x4000;
-  .interp   : { *(.interp) }
+  .interp   	  : { *(.interp) } 
   .hash		  : { *(.hash)		}
   .dynsym	  : { *(.dynsym)		}
@@ -57,5 +57,5 @@
   .rela.sdata2	  : { *(.rela.sdata2)	}
   .rela.sbss2	  : { *(.rela.sbss2)	}
-  .plt   : { *(.plt) }
+  .plt   	  : { *(.plt) 		}
   .text      :
   {
@@ -64,14 +64,14 @@
     /* .gnu.warning sections are handled specially by elf32.em.  */
     *(.gnu.warning)
-  } =0
-  .init		  : { *(.init)		} =0
-  .fini		  : { *(.fini)		} =0
-  .rodata	  : { *(.rodata)  }
-  .rodata1	  : { *(.rodata1) }
+  } >RAM
+  .init		  : { *(.init)		} >RAM
+  .fini		  : { *(.fini)		} >RAM
+  .rodata	  : { *(.rodata)  	} >RAM
+  .rodata1	  : { *(.rodata1) 	} >RAM
   _etext = .;
   PROVIDE (etext = .);
   PROVIDE (__SDATA2_START__ = .);
-  .sdata2   : { *(.sdata2) }
-  .sbss2   : { *(.sbss2) }
+  .sdata2   	  : { *(.sdata2) 	} >RAM
+  .sbss2   	  : { *(.sbss2) 	} >RAM
   PROVIDE (__SBSS2_END__ = .);
   /* Adjust the address for the data segment.  We want to adjust up to
@@ -94,45 +94,51 @@
     *(.data)
     CONSTRUCTORS
-  }
+  } >RAM
   PROVIDE (__EXCEPT_START__ = .);
-  .gcc_except_table   : { *(.gcc_except_table) }
+  .gcc_except_table   : { *(.gcc_except_table) } >RAM
   PROVIDE (__EXCEPT_END__ = .);
 
-  .data1   : { *(.data1) }
-  .got1		  : { *(.got1) }
-  .dynamic	  : { *(.dynamic) }
+  .data1   	  : { *(.data1) 	} >RAM
+  .got1		  : { *(.got1) 		} >RAM
+  .dynamic	  : { *(.dynamic) 	} >RAM
   /* Put .ctors and .dtors next to the .got2 section, so that the pointers
      get relocated with -mrelocatable. Also put in the .fixup pointers.
      The current compiler no longer needs this, but keep it around for 2.7.2  */
-		PROVIDE (__GOT2_START__ = .);
-		PROVIDE (_GOT2_START_ = .);
-  .got2		  :  { *(.got2) }
-		PROVIDE (__GOT2_END__ = .);
-		PROVIDE (__CTOR_LIST__ = .);
-  .ctors	  : { *(.ctors) }
-		PROVIDE (__CTOR_END__ = .);
-		PROVIDE (__DTOR_LIST__ = .);
-  .dtors	  : { *(.dtors) }
-		PROVIDE (__DTOR_END__ = .);
-		PROVIDE (__FIXUP_START__ = .);
-		PROVIDE (_FIXUP_START_ = .);
-  .fixup	  : { *(.fixup) }
-		PROVIDE (_FIXUP_END_ = .);
-		PROVIDE (__FIXUP_END__ = .);
-		PROVIDE (_GOT2_END_ = .);
-		PROVIDE (__GOT_START__ = .);
-		PROVIDE (_GOT_START_ = .);
+   PROVIDE (__GOT2_START__ = .);
+   PROVIDE (_GOT2_START_ = .);
+  .got2		  :  { *(.got2) 	} >RAM
+  PROVIDE (__GOT2_END__ = .);
+
+  PROVIDE (__CTOR_LIST__ = .);
+  .ctors	  : { *(.ctors) 	} >RAM
+  PROVIDE (__CTOR_END__ = .);
+
+  PROVIDE (__DTOR_LIST__ = .);
+  .dtors	  : { *(.dtors) 	} >RAM
+  PROVIDE (__DTOR_END__ = .);
+
+  PROVIDE (__FIXUP_START__ = .);
+  PROVIDE (_FIXUP_START_ = .);
+  .fixup	  : { *(.fixup) 	} >RAM
+  PROVIDE (_FIXUP_END_ = .);
+  PROVIDE (__FIXUP_END__ = .);
+  PROVIDE (_GOT2_END_ = .);
+
+  PROVIDE (__GOT_START__ = .);
+  PROVIDE (_GOT_START_ = .);
   s.got = .;
-  .got		  : { *(.got) }
-  .got.plt	  : { *(.got.plt) }
-		PROVIDE (_GOT_END_ = .);
-		PROVIDE (__GOT_END__ = .);
+  .got		  : { *(.got) 		} >RAM
+  .got.plt	  : { *(.got.plt) 	} >RAM
+  PROVIDE (_GOT_END_ = .);
+  PROVIDE (__GOT_END__ = .);
+
   /* We want the small data sections together, so single-instruction offsets
      can access them all, and initialized data all before uninitialized, so
      we can shorten the on-disk segment size.  */
   PROVIDE (__SDATA_START__ = .);
-  .sdata	  : { *(.sdata) }
+  .sdata	  : { *(.sdata) 	} >RAM
   _edata  =  .;
   PROVIDE (edata = .);
+
   PROVIDE (RAM_END = 0x3f0000);
   .sbss      :
@@ -142,6 +148,7 @@
     *(.scommon)
     PROVIDE (__sbss_end = .);
-  }
+  } >RAM
   PROVIDE (__SBSS_END__ = .);
+
   .bss       :
   {
@@ -150,5 +157,5 @@
    *(.bss)
    *(COMMON)
-  }
+  } >RAM
   . =  ALIGN(8) + 0x8000;
   __stack = .;
