11ccea77eSThomas Gleixner/* SPDX-License-Identifier: GPL-2.0-or-later */
201623627SLey Foon Tan/*
301623627SLey Foon Tan * Copyright (C) 2009 Thomas Chou <thomas@wytron.com.tw>
401623627SLey Foon Tan */
501623627SLey Foon Tan
601623627SLey Foon Tan#include <asm-generic/vmlinux.lds.h>
701623627SLey Foon Tan
801623627SLey Foon TanOUTPUT_FORMAT("elf32-littlenios2", "elf32-littlenios2", "elf32-littlenios2")
901623627SLey Foon Tan
1001623627SLey Foon TanOUTPUT_ARCH(nios)
1101623627SLey Foon TanENTRY(_start)	/* Defined in head.S */
1201623627SLey Foon Tan
1301623627SLey Foon TanSECTIONS
1401623627SLey Foon Tan{
1501623627SLey Foon Tan	. = (CONFIG_NIOS2_MEM_BASE + CONFIG_NIOS2_BOOT_LINK_OFFSET) |	\
1601623627SLey Foon Tan		CONFIG_NIOS2_KERNEL_REGION_BASE;
1701623627SLey Foon Tan
1801623627SLey Foon Tan	_text = .;
1901623627SLey Foon Tan	.text : { *(.text) } = 0
2001623627SLey Foon Tan	.rodata : { *(.rodata) *(.rodata.*) }
2101623627SLey Foon Tan	_etext = .;
2201623627SLey Foon Tan
2301623627SLey Foon Tan	. = ALIGN(32 / 8);
2401623627SLey Foon Tan	.data : { *(.data) }
2501623627SLey Foon Tan	. = ALIGN(32 / 8);
2601623627SLey Foon Tan	_got = .;
2701623627SLey Foon Tan	.got : {
2801623627SLey Foon Tan		*(.got.plt)
2901623627SLey Foon Tan		*(.igot.plt)
3001623627SLey Foon Tan		*(.got)
3101623627SLey Foon Tan		*(.igot)
3201623627SLey Foon Tan	}
3301623627SLey Foon Tan	_egot = .;
3401623627SLey Foon Tan	_edata =  .;
3501623627SLey Foon Tan
3601623627SLey Foon Tan	. = ALIGN(32 / 8);
3701623627SLey Foon Tan	__bss_start = .;
3801623627SLey Foon Tan	.bss : { *(.bss) *(.sbss) }
3901623627SLey Foon Tan	. = ALIGN(32 / 8);
4001623627SLey Foon Tan	_ebss = .;
4101623627SLey Foon Tan	end = . ;
4201623627SLey Foon Tan	_end = . ;
4301623627SLey Foon Tan
4401623627SLey Foon Tan	got_len = (_egot - _got);
4501623627SLey Foon Tan}
46