]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blob - arch/sh64/boot/compressed/vmlinux.lds.S
Remove obsolete #include <linux/config.h>
[mirror_ubuntu-jammy-kernel.git] / arch / sh64 / boot / compressed / vmlinux.lds.S
1 /*
2 * ld script to make compressed SuperH/shmedia Linux kernel+decompression
3 * bootstrap
4 * Modified by Stuart Menefy from arch/sh/vmlinux.lds.S written by Niibe Yutaka
5 */
6
7
8 #ifdef CONFIG_LITTLE_ENDIAN
9 /* OUTPUT_FORMAT("elf32-sh64l-linux", "elf32-sh64l-linux", "elf32-sh64l-linux") */
10 #define NOP 0x6ff0fff0
11 #else
12 /* OUTPUT_FORMAT("elf32-sh64", "elf32-sh64", "elf32-sh64") */
13 #define NOP 0xf0fff06f
14 #endif
15
16 OUTPUT_FORMAT("elf32-sh64-linux")
17 OUTPUT_ARCH(sh)
18 ENTRY(_start)
19
20 #define ALIGNED_GAP(section, align) (((ADDR(section)+SIZEOF(section)+(align)-1) & ~((align)-1))-ADDR(section))
21 #define FOLLOWING(section, align) AT (LOADADDR(section) + ALIGNED_GAP(section,align))
22
23 SECTIONS
24 {
25 _text = .; /* Text and read-only data */
26
27 .text : {
28 *(.text)
29 *(.text64)
30 *(.text..SHmedia32)
31 *(.fixup)
32 *(.gnu.warning)
33 } = NOP
34 . = ALIGN(4);
35 .rodata : { *(.rodata) }
36
37 /* There is no 'real' reason for eight byte alignment, four would work
38 * as well, but gdb downloads much (*4) faster with this.
39 */
40 . = ALIGN(8);
41 .image : { *(.image) }
42 . = ALIGN(4);
43 _etext = .; /* End of text section */
44
45 .data : /* Data */
46 FOLLOWING(.image, 4)
47 {
48 _data = .;
49 *(.data)
50 }
51 _data_image = LOADADDR(.data);/* Address of data section in ROM */
52
53 _edata = .; /* End of data section */
54
55 .stack : { stack = .; _stack = .; }
56
57 . = ALIGN(4);
58 __bss_start = .; /* BSS */
59 .bss : {
60 *(.bss)
61 }
62 . = ALIGN(4);
63 _end = . ;
64 }