Path: blob/master/arch/mn10300/kernel/vmlinux.lds.S
10817 views
/* MN10300 Main kernel linker script1*2* Copyright (C) 2007 Red Hat, Inc. All Rights Reserved.3* Written by David Howells ([email protected])4*5* This program is free software; you can redistribute it and/or6* modify it under the terms of the GNU General Public Licence7* as published by the Free Software Foundation; either version8* 2 of the Licence, or (at your option) any later version.9*/10#define __VMLINUX_LDS__11#include <asm-generic/vmlinux.lds.h>12#include <asm/thread_info.h>13#include <asm/page.h>1415OUTPUT_FORMAT("elf32-am33lin", "elf32-am33lin", "elf32-am33lin")16OUTPUT_ARCH(mn10300)17ENTRY(_start)18jiffies = jiffies_64;19#ifndef CONFIG_MN10300_CURRENT_IN_E220current = __current;21#endif22SECTIONS23{24. = CONFIG_KERNEL_TEXT_ADDRESS;25/* read-only */26_stext = .;27_text = .; /* Text and read-only data */28.text : {29HEAD_TEXT30TEXT_TEXT31SCHED_TEXT32LOCK_TEXT33KPROBES_TEXT34*(.fixup)35*(.gnu.warning)36} = 0xcb3738_etext = .; /* End of text section */3940EXCEPTION_TABLE(16)41BUG_TABLE4243RO_DATA(PAGE_SIZE)4445/* writeable */46_sdata = .; /* Start of rw data section */47RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE)48_edata = .;4950/* might get freed after init */51. = ALIGN(PAGE_SIZE);52.smp_locks : AT(ADDR(.smp_locks) - LOAD_OFFSET) {53__smp_locks = .;54*(.smp_locks)55__smp_locks_end = .;56}5758/* will be freed after init */59. = ALIGN(PAGE_SIZE); /* Init code and data */60__init_begin = .;61INIT_TEXT_SECTION(PAGE_SIZE)62INIT_DATA_SECTION(16)63. = ALIGN(4);64__alt_instructions = .;65.altinstructions : { *(.altinstructions) }66__alt_instructions_end = .;67.altinstr_replacement : { *(.altinstr_replacement) }68/* .exit.text is discard at runtime, not link time, to deal with references69from .altinstructions and .eh_frame */70.exit.text : { EXIT_TEXT; }71.exit.data : { EXIT_DATA; }7273PERCPU_SECTION(32)74. = ALIGN(PAGE_SIZE);75__init_end = .;76/* freed after init ends here */7778BSS_SECTION(0, PAGE_SIZE, 4)7980_end = . ;8182/* This is where the kernel creates the early boot page tables */83. = ALIGN(PAGE_SIZE);84pg0 = .;8586STABS_DEBUG8788DWARF_DEBUG8990/* Sections to be discarded */91DISCARDS92}939495