blob: e91b7e1ec7cca7a250b8563ef0ec1b671c8bee96 [file] [log] [blame]
wdenk4e5ca3e2003-12-08 01:34:36 +00001/*
wdenkbf9e3b32004-02-12 00:47:09 +00002 * (C) Copyright 2000
wdenk4e5ca3e2003-12-08 01:34:36 +00003 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4 *
Wolfgang Denk1a459662013-07-08 09:37:19 +02005 * SPDX-License-Identifier: GPL-2.0+
wdenk4e5ca3e2003-12-08 01:34:36 +00006 */
7
8OUTPUT_ARCH(m68k)
stany MARCEL25ceb272011-10-14 04:38:01 +00009
wdenk4e5ca3e2003-12-08 01:34:36 +000010SECTIONS
11{
wdenk4e5ca3e2003-12-08 01:34:36 +000012 .text :
13 {
stany MARCEL25ceb272011-10-14 04:38:01 +000014 arch/m68k/cpu/mcf52x2/start.o (.text*)
wdenk4e5ca3e2003-12-08 01:34:36 +000015
wdenkbf9e3b32004-02-12 00:47:09 +000016 . = DEFINED(env_offset) ? env_offset : .;
stany MARCEL25ceb272011-10-14 04:38:01 +000017 common/env_embedded.o (.text)
wdenk4e5ca3e2003-12-08 01:34:36 +000018
stany MARCEL25ceb272011-10-14 04:38:01 +000019 *(.text*)
wdenk4e5ca3e2003-12-08 01:34:36 +000020 }
21 _etext = .;
22 PROVIDE (etext = .);
23 .rodata :
24 {
Trent Piephof62fb992009-02-18 15:22:05 -080025 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
wdenk4e5ca3e2003-12-08 01:34:36 +000026 }
wdenk4e5ca3e2003-12-08 01:34:36 +000027
28 /* Read-write section, merged into data segment: */
29 . = (. + 0x00FF) & 0xFFFFFF00;
30 _erotext = .;
31 PROVIDE (erotext = .);
wdenkbf9e3b32004-02-12 00:47:09 +000032
wdenk4e5ca3e2003-12-08 01:34:36 +000033 .reloc :
34 {
wdenkbf9e3b32004-02-12 00:47:09 +000035 __got_start = .;
stany MARCEL25ceb272011-10-14 04:38:01 +000036 KEEP(*(.got))
wdenkbf9e3b32004-02-12 00:47:09 +000037 __got_end = .;
wdenk4e5ca3e2003-12-08 01:34:36 +000038 _GOT2_TABLE_ = .;
stany MARCEL25ceb272011-10-14 04:38:01 +000039 KEEP(*(.got2))
wdenk4e5ca3e2003-12-08 01:34:36 +000040 _FIXUP_TABLE_ = .;
stany MARCEL25ceb272011-10-14 04:38:01 +000041 KEEP(*(.fixup))
wdenk4e5ca3e2003-12-08 01:34:36 +000042 }
43 __got2_entries = (_FIXUP_TABLE_ - _GOT2_TABLE_) >>2;
44 __fixup_entries = (. - _FIXUP_TABLE_)>>2;
45
46 .data :
47 {
stany MARCEL25ceb272011-10-14 04:38:01 +000048 *(.data*)
49 *(.sdata*)
wdenk4e5ca3e2003-12-08 01:34:36 +000050 }
51 _edata = .;
52 PROVIDE (edata = .);
53
Wolfgang Denk807d5d72005-08-31 12:28:00 +020054 . = .;
wdenkbf9e3b32004-02-12 00:47:09 +000055
Marek Vasut55675142012-10-12 10:27:03 +000056 . = ALIGN(4);
57 .u_boot_list : {
Albert ARIBAUDef123c52013-02-25 00:59:00 +000058 KEEP(*(SORT(.u_boot_list*)));
Marek Vasut55675142012-10-12 10:27:03 +000059 }
60
Wolfgang Denk807d5d72005-08-31 12:28:00 +020061 . = .;
wdenk4e5ca3e2003-12-08 01:34:36 +000062 __start___ex_table = .;
63 __ex_table : { *(__ex_table) }
64 __stop___ex_table = .;
65
66 . = ALIGN(256);
67 __init_begin = .;
68 .text.init : { *(.text.init) }
69 .data.init : { *(.data.init) }
70 . = ALIGN(256);
71 __init_end = .;
72
73 __bss_start = .;
stany MARCEL25ceb272011-10-14 04:38:01 +000074 .bss (NOLOAD) :
wdenk4e5ca3e2003-12-08 01:34:36 +000075 {
76 _sbss = .;
stany MARCEL25ceb272011-10-14 04:38:01 +000077 *(.bss*)
78 *(.sbss*)
wdenk4e5ca3e2003-12-08 01:34:36 +000079 *(COMMON)
80 . = ALIGN(4);
81 _ebss = .;
82 }
Simon Glass3929fb02013-03-14 06:54:53 +000083 __bss_end = . ;
wdenk4e5ca3e2003-12-08 01:34:36 +000084 PROVIDE (end = .);
85}