Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/arch/avr32/kernel/vmlinux.lds.S
10817 views
1
/*
2
* AVR32 linker script for the Linux kernel
3
*
4
* Copyright (C) 2004-2006 Atmel Corporation
5
*
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation.
9
*/
10
#define LOAD_OFFSET 0x00000000
11
#include <asm-generic/vmlinux.lds.h>
12
#include <asm/cache.h>
13
#include <asm/thread_info.h>
14
15
OUTPUT_FORMAT("elf32-avr32", "elf32-avr32", "elf32-avr32")
16
OUTPUT_ARCH(avr32)
17
ENTRY(_start)
18
19
/* Big endian */
20
jiffies = jiffies_64 + 4;
21
22
SECTIONS
23
{
24
. = CONFIG_ENTRY_ADDRESS;
25
.init : AT(ADDR(.init) - LOAD_OFFSET) {
26
_stext = .;
27
__init_begin = .;
28
_sinittext = .;
29
*(.text.reset)
30
INIT_TEXT
31
/*
32
* .exit.text is discarded at runtime, not
33
* link time, to deal with references from
34
* __bug_table
35
*/
36
EXIT_TEXT
37
_einittext = .;
38
. = ALIGN(4);
39
__tagtable_begin = .;
40
*(.taglist.init)
41
__tagtable_end = .;
42
}
43
INIT_DATA_SECTION(16)
44
. = ALIGN(PAGE_SIZE);
45
__init_end = .;
46
47
.text : AT(ADDR(.text) - LOAD_OFFSET) {
48
_evba = .;
49
_text = .;
50
*(.ex.text)
51
*(.irq.text)
52
KPROBES_TEXT
53
TEXT_TEXT
54
SCHED_TEXT
55
LOCK_TEXT
56
*(.fixup)
57
*(.gnu.warning)
58
_etext = .;
59
} = 0xd703d703
60
61
EXCEPTION_TABLE(4)
62
RODATA
63
64
.data : AT(ADDR(.data) - LOAD_OFFSET) {
65
_data = .;
66
_sdata = .;
67
68
INIT_TASK_DATA(THREAD_SIZE)
69
PAGE_ALIGNED_DATA(PAGE_SIZE);
70
CACHELINE_ALIGNED_DATA(L1_CACHE_BYTES)
71
*(.data.rel*)
72
DATA_DATA
73
CONSTRUCTORS
74
75
_edata = .;
76
}
77
78
BSS_SECTION(0, 8, 8)
79
_end = .;
80
81
DWARF_DEBUG
82
83
/* When something in the kernel is NOT compiled as a module, the module
84
* cleanup code and data are put into these segments. Both can then be
85
* thrown away, as cleanup code is never called unless it's a module.
86
*/
87
DISCARDS
88
}
89
90