PageRenderTime 14ms CodeModel.GetById 9ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

/board/esd/vom405/u-boot.lds

https://gitlab.com/vogoplayer-tools/uboot
LD Script | 150 lines | 108 code | 12 blank | 30 comment | 0 complexity | 6fc34450ea84ec44903d63d40f8f156c MD5 | raw file
  1/*
  2 * (C) Copyright 2000
  3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
  4 *
  5 * See file CREDITS for list of people who contributed to this
  6 * project.
  7 *
  8 * This program is free software; you can redistribute it and/or
  9 * modify it under the terms of the GNU General Public License as
 10 * published by the Free Software Foundation; either version 2 of
 11 * the License, or (at your option) any later version.
 12 *
 13 * This program is distributed in the hope that it will be useful,
 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 16 * GNU General Public License for more details.
 17 *
 18 * You should have received a copy of the GNU General Public License
 19 * along with this program; if not, write to the Free Software
 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
 21 * MA 02111-1307 USA
 22 */
 23
 24OUTPUT_ARCH(powerpc)
 25SEARCH_DIR(/lib); SEARCH_DIR(/usr/lib); SEARCH_DIR(/usr/local/lib); SEARCH_DIR(/usr/local/powerpc-any-elf/lib);
 26/* Do we need any of these for elf?
 27   __DYNAMIC = 0;    */
 28SECTIONS
 29{
 30  .resetvec 0xFFFFFFFC :
 31  {
 32    *(.resetvec)
 33  } = 0xffff
 34
 35  /* Read-only sections, merged into text segment: */
 36  . = + SIZEOF_HEADERS;
 37  .interp : { *(.interp) }
 38  .hash          : { *(.hash)		}
 39  .dynsym        : { *(.dynsym)		}
 40  .dynstr        : { *(.dynstr)		}
 41  .rel.text      : { *(.rel.text)		}
 42  .rela.text     : { *(.rela.text) 	}
 43  .rel.data      : { *(.rel.data)		}
 44  .rela.data     : { *(.rela.data) 	}
 45  .rel.rodata    : { *(.rel.rodata) 	}
 46  .rela.rodata   : { *(.rela.rodata) 	}
 47  .rel.got       : { *(.rel.got)		}
 48  .rela.got      : { *(.rela.got)		}
 49  .rel.ctors     : { *(.rel.ctors)	}
 50  .rela.ctors    : { *(.rela.ctors)	}
 51  .rel.dtors     : { *(.rel.dtors)	}
 52  .rela.dtors    : { *(.rela.dtors)	}
 53  .rel.bss       : { *(.rel.bss)		}
 54  .rela.bss      : { *(.rela.bss)		}
 55  .rel.plt       : { *(.rel.plt)		}
 56  .rela.plt      : { *(.rela.plt)		}
 57  .init          : { *(.init)	}
 58  .plt : { *(.plt) }
 59  .text      :
 60  {
 61    /* WARNING - the following is hand-optimized to fit within	*/
 62    /* the sector layout of our flash chips!	XXX FIXME XXX	*/
 63
 64    cpu/ppc4xx/start.o	(.text)
 65    cpu/ppc4xx/traps.o	(.text)
 66    cpu/ppc4xx/interrupts.o	(.text)
 67    cpu/ppc4xx/serial.o	(.text)
 68    cpu/ppc4xx/cpu_init.o	(.text)
 69    cpu/ppc4xx/speed.o	(.text)
 70    common/dlmalloc.o	(.text)
 71    lib_generic/crc32.o		(.text)
 72    lib_ppc/extable.o	(.text)
 73    lib_generic/zlib.o		(.text)
 74
 75/*    . = env_offset;*/
 76/*    common/environment.o(.text)*/
 77
 78    *(.text)
 79    *(.fixup)
 80    *(.got1)
 81  }
 82  _etext = .;
 83  PROVIDE (etext = .);
 84  .rodata    :
 85  {
 86    *(.rodata)
 87    *(.rodata1)
 88    *(.rodata.str1.4)
 89    *(.eh_frame)
 90  }
 91  .fini      : { *(.fini)    } =0
 92  .ctors     : { *(.ctors)   }
 93  .dtors     : { *(.dtors)   }
 94
 95  /* Read-write section, merged into data segment: */
 96  . = (. + 0x00FF) & 0xFFFFFF00;
 97  _erotext = .;
 98  PROVIDE (erotext = .);
 99  .reloc   :
100  {
101    *(.got)
102    _GOT2_TABLE_ = .;
103    *(.got2)
104    _FIXUP_TABLE_ = .;
105    *(.fixup)
106  }
107  __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
108  __fixup_entries = (. - _FIXUP_TABLE_)>>2;
109
110  .data    :
111  {
112    *(.data)
113    *(.data1)
114    *(.sdata)
115    *(.sdata2)
116    *(.dynamic)
117    CONSTRUCTORS
118  }
119  _edata  =  .;
120  PROVIDE (edata = .);
121
122  . = .;
123  __u_boot_cmd_start = .;
124  .u_boot_cmd : { *(.u_boot_cmd) }
125  __u_boot_cmd_end = .;
126
127
128  . = .;
129  __start___ex_table = .;
130  __ex_table : { *(__ex_table) }
131  __stop___ex_table = .;
132
133  . = ALIGN(256);
134  __init_begin = .;
135  .text.init : { *(.text.init) }
136  .data.init : { *(.data.init) }
137  . = ALIGN(256);
138  __init_end = .;
139
140  __bss_start = .;
141  .bss       :
142  {
143   *(.sbss) *(.scommon)
144   *(.dynbss)
145   *(.bss)
146   *(COMMON)
147  }
148  _end = . ;
149  PROVIDE (end = .);
150}