| /******************************************************************************* |
| * |
| * Filename: linker.cfg |
| * |
| * linker config file used for internal RAM or eeprom images at address 0. |
| * |
| * Revision information: |
| * |
| * 20AUG2004 kb_admin initial creation |
| * 12JAN2005 kb_admin move data to SDRAM |
| * |
| * BEGIN_KBDD_BLOCK |
| * No warranty, expressed or implied, is included with this software. It is |
| * provided "AS IS" and no warranty of any kind including statutory or aspects |
| * relating to merchantability or fitness for any purpose is provided. All |
| * intellectual property rights of others is maintained with the respective |
| * owners. This software is not copyrighted and is intended for reference |
| * only. |
| * END_BLOCK |
| * |
| * $FreeBSD$ |
| ******************************************************************************/ |
| OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", |
| "elf32-littlearm") |
| OUTPUT_ARCH(arm) |
| ENTRY(start) |
| SECTIONS |
| { |
| /* Read-only sections, merged into text segment: */ |
| . = 0; |
| .text : |
| { |
| *(.text) |
| *(.text.*) |
| *(.stub) |
| /* .gnu.warning sections are handled specially by elf32.em. */ |
| *(.gnu.warning) |
| *(.gnu.linkonce.t.*) |
| *(.glue_7t) *(.glue_7) |
| } |
| PROVIDE (__etext = .); |
| PROVIDE (_etext = .); |
| PROVIDE (etext = .); |
| .data : |
| { |
| __data_start = . ; |
| *(.data) |
| *(.data.*) |
| *(.gnu.linkonce.d.*) |
| SORT(CONSTRUCTORS) |
| } |
| _edata = .; |
| PROVIDE (edata = .); |
| __bss_start = .; |
| __bss_start__ = .; |
| .sbss : |
| { |
| PROVIDE (__sbss_start = .); |
| PROVIDE (___sbss_start = .); |
| *(.dynsbss) |
| *(.sbss) |
| *(.sbss.*) |
| *(.gnu.linkonce.sb.*) |
| *(.scommon) |
| PROVIDE (__sbss_end = .); |
| PROVIDE (___sbss_end = .); |
| } |
| .bss : |
| { |
| *(.dynbss) |
| *(.bss) |
| *(.bss.*) |
| *(.gnu.linkonce.b.*) |
| *(COMMON) |
| /* Align here to ensure that the .bss section occupies space up to |
| _end. Align after .bss to ensure correct alignment even if the |
| .bss section disappears because there are no input sections. */ |
| . = ALIGN(32 / 8); |
| } |
| . = ALIGN(32 / 8); |
| _end = .; |
| _bss_end__ = . ; __bss_end__ = . ; __end__ = . ; |
| PROVIDE (end = .); |
| } |