Loading...
1/* SPDX-License-Identifier: GPL-2.0 */
2#include <asm-generic/vmlinux.lds.h>
3
4#ifdef CONFIG_PPC64_BOOT_WRAPPER
5OUTPUT_ARCH(powerpc:common64)
6#else
7OUTPUT_ARCH(powerpc:common)
8#endif
9ENTRY(_zimage_start)
10EXTERN(_zimage_start)
11SECTIONS
12{
13 .text :
14 {
15 _start = .;
16 *(.text)
17 *(.fixup)
18 _etext = .;
19 }
20 . = ALIGN(4096);
21 .data :
22 {
23 *(.rodata*)
24 *(.data*)
25 *(.sdata*)
26#ifndef CONFIG_PPC64_BOOT_WRAPPER
27 *(.got2)
28#endif
29 }
30 .dynsym : { *(.dynsym) }
31 .dynstr : { *(.dynstr) }
32 .dynamic :
33 {
34 __dynamic_start = .;
35 *(.dynamic)
36 }
37
38#ifdef CONFIG_PPC64_BOOT_WRAPPER
39 .got : ALIGN(256)
40 {
41 *(.got .toc)
42 }
43#endif
44
45 .hash : { *(.hash) }
46 .interp : { *(.interp) }
47 .rela.dyn :
48 {
49#ifdef CONFIG_PPC64_BOOT_WRAPPER
50 __rela_dyn_start = .;
51#endif
52 *(.rela*)
53 }
54
55 . = ALIGN(8);
56 .kernel:dtb :
57 {
58 _dtb_start = .;
59 *(.kernel:dtb)
60 _dtb_end = .;
61 }
62
63 . = ALIGN(4096);
64 .kernel:vmlinux.strip :
65 {
66 _vmlinux_start = .;
67 *(.kernel:vmlinux.strip)
68 _vmlinux_end = .;
69 }
70
71 . = ALIGN(4096);
72 .kernel:initrd :
73 {
74 _initrd_start = .;
75 *(.kernel:initrd)
76 _initrd_end = .;
77 }
78
79 . = ALIGN(4096);
80 .kernel:esm_blob :
81 {
82 _esm_blob_start = .;
83 *(.kernel:esm_blob)
84 _esm_blob_end = .;
85 }
86
87 . = ALIGN(4096);
88 .bss :
89 {
90 _edata = .;
91 __bss_start = .;
92 *(.sbss)
93 *(.bss)
94 *(COMMON)
95 _end = . ;
96 }
97}
1#include <asm-generic/vmlinux.lds.h>
2
3#ifdef CONFIG_PPC64_BOOT_WRAPPER
4OUTPUT_ARCH(powerpc:common64)
5#else
6OUTPUT_ARCH(powerpc:common)
7#endif
8ENTRY(_zimage_start)
9EXTERN(_zimage_start)
10SECTIONS
11{
12 .text :
13 {
14 _start = .;
15 *(.text)
16 *(.fixup)
17 _etext = .;
18 }
19 . = ALIGN(4096);
20 .data :
21 {
22 *(.rodata*)
23 *(.data*)
24 *(.sdata*)
25#ifndef CONFIG_PPC64_BOOT_WRAPPER
26 *(.got2)
27#endif
28 }
29 .dynsym : { *(.dynsym) }
30 .dynstr : { *(.dynstr) }
31 .dynamic :
32 {
33 __dynamic_start = .;
34 *(.dynamic)
35 }
36 .hash : { *(.hash) }
37 .interp : { *(.interp) }
38 .rela.dyn :
39 {
40#ifdef CONFIG_PPC64_BOOT_WRAPPER
41 __rela_dyn_start = .;
42#endif
43 *(.rela*)
44 }
45
46 . = ALIGN(8);
47 .kernel:dtb :
48 {
49 _dtb_start = .;
50 *(.kernel:dtb)
51 _dtb_end = .;
52 }
53
54 . = ALIGN(4096);
55 .kernel:vmlinux.strip :
56 {
57 _vmlinux_start = .;
58 *(.kernel:vmlinux.strip)
59 _vmlinux_end = .;
60 }
61
62 . = ALIGN(4096);
63 .kernel:initrd :
64 {
65 _initrd_start = .;
66 *(.kernel:initrd)
67 _initrd_end = .;
68 }
69
70#ifdef CONFIG_PPC64_BOOT_WRAPPER
71 .got :
72 {
73 __toc_start = .;
74 *(.got)
75 *(.toc)
76 }
77#endif
78
79 . = ALIGN(4096);
80 .bss :
81 {
82 _edata = .;
83 __bss_start = .;
84 *(.sbss)
85 *(.bss)
86 *(COMMON)
87 _end = . ;
88 }
89}