OpenCores
URL https://opencores.org/ocsvn/test_project/test_project/trunk

Subversion Repositories test_project

[/] [test_project/] [trunk/] [linux_sd_driver/] [arch/] [s390/] [kernel/] [vmlinux.lds.S] - Blame information for rev 63

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 63 marcus.erl
/* ld script to make s390 Linux kernel
2
 * Written by Martin Schwidefsky (schwidefsky@de.ibm.com)
3
 */
4
 
5
#include 
6
#include 
7
 
8
#ifndef CONFIG_64BIT
9
OUTPUT_FORMAT("elf32-s390", "elf32-s390", "elf32-s390")
10
OUTPUT_ARCH(s390)
11
ENTRY(_start)
12
jiffies = jiffies_64 + 4;
13
#else
14
OUTPUT_FORMAT("elf64-s390", "elf64-s390", "elf64-s390")
15
OUTPUT_ARCH(s390:64-bit)
16
ENTRY(_start)
17
jiffies = jiffies_64;
18
#endif
19
 
20
SECTIONS
21
{
22
        . = 0x00000000;
23
        .text : {
24
        _text = .;              /* Text and read-only data */
25
                *(.text.head)
26
        TEXT_TEXT
27
                SCHED_TEXT
28
                LOCK_TEXT
29
                KPROBES_TEXT
30
                *(.fixup)
31
                *(.gnu.warning)
32
        } = 0x0700
33
 
34
        _etext = .;             /* End of text section */
35
 
36
        RODATA
37
 
38
#ifdef CONFIG_SHARED_KERNEL
39
        . = ALIGN(0x100000);    /* VM shared segments are 1MB aligned */
40
#endif
41
 
42
        . = ALIGN(PAGE_SIZE);
43
        _eshared = .;           /* End of shareable data */
44
 
45
        . = ALIGN(16);          /* Exception table */
46
        __ex_table : {
47
                __start___ex_table = .;
48
                *(__ex_table)
49
                __stop___ex_table = .;
50
        }
51
 
52
        NOTES
53
        BUG_TABLE
54
 
55
        .data : {               /* Data */
56
                DATA_DATA
57
                CONSTRUCTORS
58
        }
59
 
60
        . = ALIGN(PAGE_SIZE);
61
        .data_nosave : {
62
        __nosave_begin = .;
63
                *(.data.nosave)
64
        }
65
        . = ALIGN(PAGE_SIZE);
66
        __nosave_end = .;
67
 
68
        . = ALIGN(PAGE_SIZE);
69
        .data.page_aligned : {
70
                *(.data.idt)
71
        }
72
 
73
        . = ALIGN(0x100);
74
        .data.cacheline_aligned : {
75
                *(.data.cacheline_aligned)
76
        }
77
 
78
        . = ALIGN(0x100);
79
        .data.read_mostly : {
80
                *(.data.read_mostly)
81
        }
82
        _edata = .;             /* End of data section */
83
 
84
        . = ALIGN(2 * PAGE_SIZE);       /* init_task */
85
        .data.init_task : {
86
                *(.data.init_task)
87
        }
88
 
89
        /* will be freed after init */
90
        . = ALIGN(PAGE_SIZE);   /* Init code and data */
91
        __init_begin = .;
92
        .init.text : {
93
                _sinittext = .;
94
                *(.init.text)
95
                _einittext = .;
96
        }
97
        /*
98
         * .exit.text is discarded at runtime, not link time,
99
         * to deal with references from __bug_table
100
        */
101
        .exit.text : {
102
                *(.exit.text)
103
        }
104
 
105
        .init.data : {
106
                *(.init.data)
107
        }
108
        . = ALIGN(0x100);
109
        .init.setup : {
110
                __setup_start = .;
111
                *(.init.setup)
112
                __setup_end = .;
113
        }
114
        .initcall.init : {
115
                __initcall_start = .;
116
                INITCALLS
117
                __initcall_end = .;
118
        }
119
 
120
        .con_initcall.init : {
121
                __con_initcall_start = .;
122
                *(.con_initcall.init)
123
                __con_initcall_end = .;
124
        }
125
        SECURITY_INIT
126
 
127
#ifdef CONFIG_BLK_DEV_INITRD
128
        . = ALIGN(0x100);
129
        .init.ramfs : {
130
                __initramfs_start = .;
131
                *(.init.ramfs)
132
                . = ALIGN(2);
133
                __initramfs_end = .;
134
        }
135
#endif
136
 
137
        PERCPU(PAGE_SIZE)
138
        . = ALIGN(PAGE_SIZE);
139
        __init_end = .;         /* freed after init ends here */
140
 
141
        /* BSS */
142
        .bss : {
143
                __bss_start = .;
144
                *(.bss)
145
                . = ALIGN(2);
146
                __bss_stop = .;
147
        }
148
 
149
        _end = . ;
150
 
151
        /* Sections to be discarded */
152
        /DISCARD/ : {
153
                *(.exit.data)
154
                *(.exitcall.exit)
155
        }
156
 
157
        /* Debugging sections.  */
158
        STABS_DEBUG
159
        DWARF_DEBUG
160
}

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.