blob: 8ef0620ee15e4c8a9544a4ca8e21857f5612a271 [file] [log] [blame]
Wolfgang Wegner406471c2010-01-25 11:27:44 +01001/*
2 * (C) Copyright 2000
3 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
Wolfgang Wegner406471c2010-01-25 11:27:44 +01006 */
7
8OUTPUT_ARCH(m68k)
Jason Jin99c82b42012-10-16 16:38:39 +08009
Wolfgang Wegner406471c2010-01-25 11:27:44 +010010SECTIONS
11{
12 /* Read-only sections, merged into text segment: */
Wolfgang Wegner406471c2010-01-25 11:27:44 +010013 .text :
14 {
Jason Jin99c82b42012-10-16 16:38:39 +080015 arch/m68k/cpu/mcf532x/start.o (.text*)
Wolfgang Wegner406471c2010-01-25 11:27:44 +010016
17 . = DEFINED(env_offset) ? env_offset : .;
Jason Jin99c82b42012-10-16 16:38:39 +080018 common/env_embedded.o (.text*)
Wolfgang Wegner406471c2010-01-25 11:27:44 +010019
Jason Jin99c82b42012-10-16 16:38:39 +080020 *(.text*)
Wolfgang Wegner406471c2010-01-25 11:27:44 +010021 }
22 _etext = .;
23 PROVIDE (etext = .);
24 .rodata :
25 {
26 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
27 }
Wolfgang Wegner406471c2010-01-25 11:27:44 +010028
29 /* Read-write section, merged into data segment: */
30 . = (. + 0x00FF) & 0xFFFFFF00;
31 _erotext = .;
32 PROVIDE (erotext = .);
33
34 .reloc :
35 {
36 __got_start = .;
Jason Jin99c82b42012-10-16 16:38:39 +080037 KEEP(*(.got))
Wolfgang Wegner406471c2010-01-25 11:27:44 +010038 __got_end = .;
39 _GOT2_TABLE_ = .;
Jason Jin99c82b42012-10-16 16:38:39 +080040 KEEP(*(.got2))
Wolfgang Wegner406471c2010-01-25 11:27:44 +010041 _FIXUP_TABLE_ = .;
Jason Jin99c82b42012-10-16 16:38:39 +080042 KEEP(*(.fixup))
Wolfgang Wegner406471c2010-01-25 11:27:44 +010043 }
44 __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
45 __fixup_entries = (. - _FIXUP_TABLE_)>>2;
46
47 .data :
48 {
Jason Jin99c82b42012-10-16 16:38:39 +080049 *(.data*)
50 *(.sdata*)
Wolfgang Wegner406471c2010-01-25 11:27:44 +010051 }
52 _edata = .;
53 PROVIDE (edata = .);
54
55 . = .;
Wolfgang Wegner406471c2010-01-25 11:27:44 +010056
Marek Vasut607092a2012-10-12 10:27:03 +000057 . = ALIGN(4);
58 .u_boot_list : {
Albert ARIBAUDc24895e2013-02-25 00:59:00 +000059 KEEP(*(SORT(.u_boot_list*)));
Marek Vasut607092a2012-10-12 10:27:03 +000060 }
61
Wolfgang Wegner406471c2010-01-25 11:27:44 +010062 . = .;
63 __start___ex_table = .;
64 __ex_table : { *(__ex_table) }
65 __stop___ex_table = .;
66
67 . = ALIGN(256);
68 __init_begin = .;
69 .text.init : { *(.text.init) }
70 .data.init : { *(.data.init) }
71 . = ALIGN(256);
72 __init_end = .;
73
74 __bss_start = .;
75 .bss :
76 {
77 _sbss = .;
Jason Jin99c82b42012-10-16 16:38:39 +080078 *(.sbss*)
79 *(.bss*)
Wolfgang Wegner406471c2010-01-25 11:27:44 +010080 *(COMMON)
81 . = ALIGN(4);
82 _ebss = .;
83 }
Simon Glassed70c8f2013-03-14 06:54:53 +000084 __bss_end = . ;
Wolfgang Wegner406471c2010-01-25 11:27:44 +010085 PROVIDE (end = .);
86}