1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Copyright (C) 2009 Thomas Chou <thomas@wytron.com.tw>
4 */
5#include <asm/page.h>
6#include <asm-generic/vmlinux.lds.h>
7#include <asm/cache.h>
8#include <asm/thread_info.h>
9
10OUTPUT_FORMAT("elf32-littlenios2", "elf32-littlenios2", "elf32-littlenios2")
11
12OUTPUT_ARCH(nios)
13ENTRY(_start)	/* Defined in head.S */
14
15jiffies = jiffies_64;
16
17SECTIONS
18{
19	. = CONFIG_NIOS2_MEM_BASE | CONFIG_NIOS2_KERNEL_REGION_BASE;
20
21	_text = .;
22	_stext = .;
23	HEAD_TEXT_SECTION
24	.text : {
25		TEXT_TEXT
26		SCHED_TEXT
27		CPUIDLE_TEXT
28		LOCK_TEXT
29		IRQENTRY_TEXT
30		SOFTIRQENTRY_TEXT
31		KPROBES_TEXT
32	} =0
33	_etext = .;
34
35	.got : {
36		*(.got.plt)
37		*(.igot.plt)
38		*(.got)
39		*(.igot)
40	}
41
42	EXCEPTION_TABLE(L1_CACHE_BYTES)
43
44	. = ALIGN(PAGE_SIZE);
45	__init_begin = .;
46	INIT_TEXT_SECTION(PAGE_SIZE)
47	INIT_DATA_SECTION(PAGE_SIZE)
48	PERCPU_SECTION(L1_CACHE_BYTES)
49	__init_end = .;
50
51	_sdata = .;
52	RO_DATA(PAGE_SIZE)
53	RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
54	_edata = .;
55
56	BSS_SECTION(0, 0, 0)
57	_end = .;
58
59	STABS_DEBUG
60	DWARF_DEBUG
61	ELF_DETAILS
62
63	DISCARDS
64}
65