11da177e4SLinus Torvalds/* ld script to make SparcLinux kernel */ 21da177e4SLinus Torvalds 31da177e4SLinus Torvalds#include <asm-generic/vmlinux.lds.h> 4*bcbe40ebSSam Ravnborg#include <asm/page.h> 51da177e4SLinus Torvalds 61da177e4SLinus TorvaldsOUTPUT_FORMAT("elf32-sparc", "elf32-sparc", "elf32-sparc") 71da177e4SLinus TorvaldsOUTPUT_ARCH(sparc) 81da177e4SLinus TorvaldsENTRY(_start) 91da177e4SLinus Torvaldsjiffies = jiffies_64 + 4; 101da177e4SLinus TorvaldsSECTIONS 111da177e4SLinus Torvalds{ 121da177e4SLinus Torvalds . = 0x10000 + SIZEOF_HEADERS; 131da177e4SLinus Torvalds .text 0xf0004000 : 141da177e4SLinus Torvalds { 15fd593d12SEric W. Biederman _text = .; 167664709bSSam Ravnborg TEXT_TEXT 171da177e4SLinus Torvalds SCHED_TEXT 181da177e4SLinus Torvalds LOCK_TEXT 191da177e4SLinus Torvalds *(.gnu.warning) 201da177e4SLinus Torvalds } = 0 211da177e4SLinus Torvalds _etext = .; 221da177e4SLinus Torvalds PROVIDE (etext = .); 231da177e4SLinus Torvalds RODATA 24*bcbe40ebSSam Ravnborg .data : { 25ca967258SSam Ravnborg DATA_DATA 261da177e4SLinus Torvalds CONSTRUCTORS 271da177e4SLinus Torvalds } 28*bcbe40ebSSam Ravnborg .data1 : { 29*bcbe40ebSSam Ravnborg *(.data1) 30*bcbe40ebSSam Ravnborg } 311da177e4SLinus Torvalds _edata = .; 321da177e4SLinus Torvalds PROVIDE (edata = .); 33*bcbe40ebSSam Ravnborg 34*bcbe40ebSSam Ravnborg .fixup : { 351da177e4SLinus Torvalds __start___fixup = .; 36*bcbe40ebSSam Ravnborg *(.fixup) 371da177e4SLinus Torvalds __stop___fixup = .; 38*bcbe40ebSSam Ravnborg } 39*bcbe40ebSSam Ravnborg __ex_table : { 401da177e4SLinus Torvalds __start___ex_table = .; 41*bcbe40ebSSam Ravnborg *(__ex_table) 421da177e4SLinus Torvalds __stop___ex_table = .; 43*bcbe40ebSSam Ravnborg } 441da177e4SLinus Torvalds 450c0d345eSDavid S. Miller NOTES 460c0d345eSDavid S. Miller 47*bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 481da177e4SLinus Torvalds __init_begin = .; 49ab5da288SMartin Habets .init.text : { 50*bcbe40ebSSam Ravnborg _sinittext = .; 511da177e4SLinus Torvalds *(.init.text) 52ab5da288SMartin Habets _einittext = .; 531da177e4SLinus Torvalds } 54*bcbe40ebSSam Ravnborg __init_text_end = .; 55*bcbe40ebSSam Ravnborg .init.data : { 56*bcbe40ebSSam Ravnborg *(.init.data) 57*bcbe40ebSSam Ravnborg } 58*bcbe40ebSSam Ravnborg . = ALIGN(16); 59*bcbe40ebSSam Ravnborg .init.setup : { 60*bcbe40ebSSam Ravnborg __setup_start = .; 61*bcbe40ebSSam Ravnborg *(.init.setup) 62*bcbe40ebSSam Ravnborg __setup_end = .; 63*bcbe40ebSSam Ravnborg } 64*bcbe40ebSSam Ravnborg .initcall.init : { 65*bcbe40ebSSam Ravnborg __initcall_start = .; 66*bcbe40ebSSam Ravnborg INITCALLS 671da177e4SLinus Torvalds __initcall_end = .; 68*bcbe40ebSSam Ravnborg } 69*bcbe40ebSSam Ravnborg .con_initcall.init : { 701da177e4SLinus Torvalds __con_initcall_start = .; 71*bcbe40ebSSam Ravnborg *(.con_initcall.init) 721da177e4SLinus Torvalds __con_initcall_end = .; 73*bcbe40ebSSam Ravnborg } 741da177e4SLinus Torvalds SECURITY_INIT 7567d38229SJean-Paul Saman 7667d38229SJean-Paul Saman#ifdef CONFIG_BLK_DEV_INITRD 77*bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 78*bcbe40ebSSam Ravnborg .init.ramfs : { 791da177e4SLinus Torvalds __initramfs_start = .; 80*bcbe40ebSSam Ravnborg *(.init.ramfs) 811da177e4SLinus Torvalds __initramfs_end = .; 82*bcbe40ebSSam Ravnborg } 8367d38229SJean-Paul Saman#endif 8467d38229SJean-Paul Saman 85*bcbe40ebSSam Ravnborg PERCPU(PAGE_SIZE) 86*bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 871da177e4SLinus Torvalds __init_end = .; 881da177e4SLinus Torvalds . = ALIGN(32); 89*bcbe40ebSSam Ravnborg .data.cacheline_aligned : { 90*bcbe40ebSSam Ravnborg *(.data.cacheline_aligned) 91*bcbe40ebSSam Ravnborg } 921da177e4SLinus Torvalds 931da177e4SLinus Torvalds __bss_start = .; 94*bcbe40ebSSam Ravnborg .sbss : { 95*bcbe40ebSSam Ravnborg *(.sbss) 96*bcbe40ebSSam Ravnborg *(.scommon) } 97*bcbe40ebSSam Ravnborg .bss : { 981da177e4SLinus Torvalds *(.dynbss) 991da177e4SLinus Torvalds *(.bss) 1001da177e4SLinus Torvalds *(COMMON) 1011da177e4SLinus Torvalds } 1021da177e4SLinus Torvalds _end = . ; 1031da177e4SLinus Torvalds PROVIDE (end = .); 104*bcbe40ebSSam Ravnborg /DISCARD/ : { 105*bcbe40ebSSam Ravnborg *(.exit.text) 106*bcbe40ebSSam Ravnborg *(.exit.data) 107*bcbe40ebSSam Ravnborg *(.exitcall.exit) 108*bcbe40ebSSam Ravnborg } 109d5784b57SDavid S. Miller 110d5784b57SDavid S. Miller STABS_DEBUG 111d5784b57SDavid S. Miller DWARF_DEBUG 1121da177e4SLinus Torvalds} 113