1/*
2 * Copyright 2006, 2007 Freescale Semiconductor, Inc.
3 *
4 * SPDX-License-Identifier:	GPL-2.0+
5 */
6
7OUTPUT_ARCH(powerpc)
8
9SECTIONS
10{
11
12  /* Read-only sections, merged into text segment: */
13  .text      :
14  {
15    arch/powerpc/cpu/mpc86xx/start.o	(.text*)
16    arch/powerpc/cpu/mpc86xx/traps.o	(.text*)
17    *(.text*)
18   }
19    _etext = .;
20    PROVIDE (etext = .);
21    .rodata    :
22   {
23    *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
24  }
25
26  /* Read-write section, merged into data segment: */
27  . = (. + 0x00FF) & 0xFFFFFF00;
28  _erotext = .;
29  PROVIDE (erotext = .);
30  .reloc   :
31  {
32    _GOT2_TABLE_ = .;
33    KEEP(*(.got2))
34    KEEP(*(.got))
35    _FIXUP_TABLE_ = .;
36    KEEP(*(.fixup))
37  }
38  __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1;
39  __fixup_entries = (. - _FIXUP_TABLE_) >> 2;
40
41  .data    :
42  {
43    *(.data*)
44    *(.sdata*)
45  }
46  _edata  =  .;
47  PROVIDE (edata = .);
48
49  . = .;
50
51  . = ALIGN(4);
52  .u_boot_list : {
53	KEEP(*(SORT(.u_boot_list*)));
54  }
55
56  . = .;
57  __start___ex_table = .;
58  __ex_table : { *(__ex_table) }
59  __stop___ex_table = .;
60
61  . = ALIGN(256);
62  __init_begin = .;
63  .text.init : { *(.text.init) }
64  .data.init : { *(.data.init) }
65  . = ALIGN(256);
66  __init_end = .;
67
68  __bss_start = .;
69  .bss (NOLOAD)       :
70  {
71   *(.bss*)
72   *(.sbss*)
73   *(COMMON)
74   . = ALIGN(4);
75  }
76  __bss_end = . ;
77  PROVIDE (end = .);
78}
79