| /**************************************************************************** |
| * boards/arm/c5471/c5471evm/scripts/ld.script |
| * |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. The |
| * ASF licenses this file to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance with the |
| * License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT |
| * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the |
| * License for the specific language governing permissions and limitations |
| * under the License. |
| * |
| ****************************************************************************/ |
| |
| OUTPUT_ARCH(arm) |
| ENTRY(_stext) |
| SECTIONS |
| { |
| /* Interrupt vector trampoline and command line parameters |
| * are provided in IRAM by the rrload bootloader. Vectors will be |
| * copied into _svectors. |
| */ |
| |
| . = 0xffc00000; |
| _svectors = ABSOLUTE(.); |
| |
| /* These are locations in IRAM where the rrload bootloader passes |
| * information to the running program |
| */ |
| |
| . = 0xffc00020; |
| __KernCommandLineMagicStr = .; /* magic pattern string == "kcmdline-->" */ |
| . = 0xffc0002C; /* advance to .+strlen("kcmdline-->")+1 */ |
| __KernCommandLineOverride = .; /* location of kernel command line string */ |
| |
| . = 0xffc00100; |
| __EtherMACMagicStr = .; /* magic pattern string == "etherMAC-->" */ |
| . = 0xffc0010C; /* advance to .+strlen("etherMAC-->")+1 */ |
| __EtherMAC = .; |
| |
| /* The OS entry point is here */ |
| |
| . = 0x10300000; |
| .text : { |
| _stext = ABSOLUTE(.); |
| *(.text) |
| *(.fixup) |
| *(.gnu.warning) |
| *(.rodata) |
| *(.glue_7) |
| *(.glue_7t) |
| *(.got) /* Global offset table */ |
| _etext = ABSOLUTE(.); |
| } |
| |
| _eronly = ABSOLUTE(.); /* See below */ |
| . = ALIGN(4096); |
| |
| .data : ALIGN(4) { |
| _sdata = ABSOLUTE(.); |
| *(.data) |
| CONSTRUCTORS |
| . = ALIGN(4); |
| _edata = ABSOLUTE(.); |
| } |
| |
| .bss : ALIGN(4) { /* BSS */ |
| _sbss = ABSOLUTE(.); |
| *(.bss) |
| *(COMMON) |
| . = ALIGN(4); |
| _ebss = ABSOLUTE(.); |
| } |
| |
| /* Stabs debugging sections. */ |
| |
| .stab 0 : { *(.stab) } |
| .stabstr 0 : { *(.stabstr) } |
| .stab.excl 0 : { *(.stab.excl) } |
| .stab.exclstr 0 : { *(.stab.exclstr) } |
| .stab.index 0 : { *(.stab.index) } |
| .stab.indexstr 0 : { *(.stab.indexstr) } |
| .comment 0 : { *(.comment) } |
| .debug_abbrev 0 : { *(.debug_abbrev) } |
| .debug_info 0 : { *(.debug_info) } |
| .debug_line 0 : { *(.debug_line) } |
| .debug_pubnames 0 : { *(.debug_pubnames) } |
| .debug_aranges 0 : { *(.debug_aranges) } |
| } |