Merge tag 'sched-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
[linux/fpc-iii.git] / arch / nds32 / kernel / vmlinux.lds.S
blob6a91b965fb1ea5c7dc88fd9155611f2c6e8c7a02
1 // SPDX-License-Identifier: GPL-2.0
2 // Copyright (C) 2005-2017 Andes Technology Corporation
4 #include <asm/page.h>
5 #include <asm/thread_info.h>
6 #include <asm/cache.h>
7 #include <asm/memory.h>
9 #define LOAD_OFFSET     (PAGE_OFFSET - PHYS_OFFSET)
10 #include <asm-generic/vmlinux.lds.h>
12 OUTPUT_ARCH(nds32)
13 ENTRY(_stext_lma)
14 jiffies = jiffies_64;
16 #if defined(CONFIG_GCOV_KERNEL)
17 #define NDS32_EXIT_KEEP(x)      x
18 #else
19 #define NDS32_EXIT_KEEP(x)
20 #endif
22 SECTIONS
24         _stext_lma = TEXTADDR - LOAD_OFFSET;
25         . = TEXTADDR;
26         __init_begin = .;
27         HEAD_TEXT_SECTION
28         .exit.text : {
29                 NDS32_EXIT_KEEP(EXIT_TEXT)
30         }
31         INIT_TEXT_SECTION(PAGE_SIZE)
32         INIT_DATA_SECTION(16)
33         .exit.data : {
34                 NDS32_EXIT_KEEP(EXIT_DATA)
35         }
36         PERCPU_SECTION(L1_CACHE_BYTES)
37         __init_end = .;
39         . = ALIGN(PAGE_SIZE);
40         _stext = .;
41         /* Real text segment */
42         .text : AT(ADDR(.text) - LOAD_OFFSET) {
43                 _text = .;              /* Text and read-only data      */
44                 TEXT_TEXT
45                 SCHED_TEXT
46                 CPUIDLE_TEXT
47                 LOCK_TEXT
48                 KPROBES_TEXT
49                 IRQENTRY_TEXT
50                 SOFTIRQENTRY_TEXT
51                 *(.fixup)
52         }
54         _etext = .;                     /* End of text and rodata section */
56         _sdata = .;
57         RO_DATA(PAGE_SIZE)
58         RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
59         _edata  =  .;
61         EXCEPTION_TABLE(16)
62         BSS_SECTION(4, 4, 4)
63         _end = .;
65         STABS_DEBUG
66         DWARF_DEBUG
67         ELF_DETAILS
69         DISCARDS