Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/hexagon/kernel/vmlinux.lds.S
26424 views
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
/*
3
* Linker script for Hexagon kernel
4
*
5
* Copyright (c) 2010-2014, The Linux Foundation. All rights reserved.
6
*/
7
8
#include <asm-generic/vmlinux.lds.h>
9
#include <asm/asm-offsets.h> /* Most of the kernel defines are here */
10
#include <asm/mem-layout.h> /* except for page_offset */
11
#include <asm/cache.h> /* and now we're pulling cache line size */
12
#include <asm/thread_info.h> /* and we need THREAD_SIZE too */
13
14
OUTPUT_ARCH(hexagon)
15
ENTRY(stext)
16
17
jiffies = jiffies_64;
18
19
/*
20
See asm-generic/vmlinux.lds.h for expansion of some of these macros.
21
See asm-generic/sections.h for seemingly required labels.
22
*/
23
24
#define PAGE_SIZE _PAGE_SIZE
25
26
SECTIONS
27
{
28
. = PAGE_OFFSET;
29
30
__init_begin = .;
31
HEAD_TEXT_SECTION
32
INIT_TEXT_SECTION(PAGE_SIZE)
33
PERCPU_SECTION(L1_CACHE_BYTES)
34
__init_end = .;
35
36
. = ALIGN(_PAGE_SIZE);
37
_stext = .;
38
.text : AT(ADDR(.text)) {
39
_text = .;
40
TEXT_TEXT
41
IRQENTRY_TEXT
42
SOFTIRQENTRY_TEXT
43
SCHED_TEXT
44
LOCK_TEXT
45
KPROBES_TEXT
46
*(.fixup)
47
}
48
_etext = .;
49
50
INIT_DATA_SECTION(PAGE_SIZE)
51
52
_sdata = .;
53
RW_DATA(32,PAGE_SIZE,_THREAD_SIZE)
54
RO_DATA(PAGE_SIZE)
55
_edata = .;
56
57
EXCEPTION_TABLE(16)
58
59
BSS_SECTION(_PAGE_SIZE, _PAGE_SIZE, _PAGE_SIZE)
60
61
_end = .;
62
63
STABS_DEBUG
64
DWARF_DEBUG
65
ELF_DETAILS
66
.hexagon.attributes 0 : { *(.hexagon.attributes) }
67
68
DISCARDS
69
}
70
71