xref: /openbmc/linux/arch/nios2/kernel/vmlinux.lds.S (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
11ccea77eSThomas Gleixner/* SPDX-License-Identifier: GPL-2.0-or-later */
22fc8483fSLey Foon Tan/*
32fc8483fSLey Foon Tan * Copyright (C) 2009 Thomas Chou <thomas@wytron.com.tw>
42fc8483fSLey Foon Tan */
52fc8483fSLey Foon Tan#include <asm/page.h>
62fc8483fSLey Foon Tan#include <asm-generic/vmlinux.lds.h>
72fc8483fSLey Foon Tan#include <asm/cache.h>
82fc8483fSLey Foon Tan#include <asm/thread_info.h>
92fc8483fSLey Foon Tan
102fc8483fSLey Foon TanOUTPUT_FORMAT("elf32-littlenios2", "elf32-littlenios2", "elf32-littlenios2")
112fc8483fSLey Foon Tan
122fc8483fSLey Foon TanOUTPUT_ARCH(nios)
132fc8483fSLey Foon TanENTRY(_start)	/* Defined in head.S */
142fc8483fSLey Foon Tan
152fc8483fSLey Foon Tanjiffies = jiffies_64;
162fc8483fSLey Foon Tan
172fc8483fSLey Foon TanSECTIONS
182fc8483fSLey Foon Tan{
192fc8483fSLey Foon Tan	. = CONFIG_NIOS2_MEM_BASE | CONFIG_NIOS2_KERNEL_REGION_BASE;
202fc8483fSLey Foon Tan
212fc8483fSLey Foon Tan	_text = .;
222fc8483fSLey Foon Tan	_stext = .;
232fc8483fSLey Foon Tan	HEAD_TEXT_SECTION
242fc8483fSLey Foon Tan	.text : {
252fc8483fSLey Foon Tan		TEXT_TEXT
262fc8483fSLey Foon Tan		SCHED_TEXT
272fc8483fSLey Foon Tan		LOCK_TEXT
282fc8483fSLey Foon Tan		IRQENTRY_TEXT
29be7635e7SAlexander Potapenko		SOFTIRQENTRY_TEXT
302fc8483fSLey Foon Tan		KPROBES_TEXT
312fc8483fSLey Foon Tan	} =0
322fc8483fSLey Foon Tan	_etext = .;
332fc8483fSLey Foon Tan
342fc8483fSLey Foon Tan	.got : {
352fc8483fSLey Foon Tan		*(.got.plt)
362fc8483fSLey Foon Tan		*(.igot.plt)
372fc8483fSLey Foon Tan		*(.got)
382fc8483fSLey Foon Tan		*(.igot)
392fc8483fSLey Foon Tan	}
402fc8483fSLey Foon Tan
412fc8483fSLey Foon Tan	EXCEPTION_TABLE(L1_CACHE_BYTES)
422fc8483fSLey Foon Tan
432fc8483fSLey Foon Tan	. = ALIGN(PAGE_SIZE);
442fc8483fSLey Foon Tan	__init_begin = .;
452fc8483fSLey Foon Tan	INIT_TEXT_SECTION(PAGE_SIZE)
462fc8483fSLey Foon Tan	INIT_DATA_SECTION(PAGE_SIZE)
472fc8483fSLey Foon Tan	PERCPU_SECTION(L1_CACHE_BYTES)
482fc8483fSLey Foon Tan	__init_end = .;
492fc8483fSLey Foon Tan
502fc8483fSLey Foon Tan	_sdata = .;
5193240b32SKees Cook	RO_DATA(PAGE_SIZE)
52c9174047SKees Cook	RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
532fc8483fSLey Foon Tan	_edata = .;
542fc8483fSLey Foon Tan
552fc8483fSLey Foon Tan	BSS_SECTION(0, 0, 0)
562fc8483fSLey Foon Tan	_end = .;
572fc8483fSLey Foon Tan
582fc8483fSLey Foon Tan	STABS_DEBUG
592fc8483fSLey Foon Tan	DWARF_DEBUG
60*c604abc3SKees Cook	ELF_DETAILS
612fc8483fSLey Foon Tan
622fc8483fSLey Foon Tan	DISCARDS
632fc8483fSLey Foon Tan}
64