11da177e4SLinus Torvalds/* ld script to make SparcLinux kernel */ 21da177e4SLinus Torvalds 31da177e4SLinus Torvalds#include <asm-generic/vmlinux.lds.h> 4bcbe40ebSSam 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 24bcbe40ebSSam Ravnborg .data : { 25ca967258SSam Ravnborg DATA_DATA 261da177e4SLinus Torvalds CONSTRUCTORS 271da177e4SLinus Torvalds } 28bcbe40ebSSam Ravnborg .data1 : { 29bcbe40ebSSam Ravnborg *(.data1) 30bcbe40ebSSam Ravnborg } 311da177e4SLinus Torvalds _edata = .; 321da177e4SLinus Torvalds PROVIDE (edata = .); 33bcbe40ebSSam Ravnborg 34bcbe40ebSSam Ravnborg .fixup : { 351da177e4SLinus Torvalds __start___fixup = .; 36bcbe40ebSSam Ravnborg *(.fixup) 371da177e4SLinus Torvalds __stop___fixup = .; 38bcbe40ebSSam Ravnborg } 39bcbe40ebSSam Ravnborg __ex_table : { 401da177e4SLinus Torvalds __start___ex_table = .; 41bcbe40ebSSam Ravnborg *(__ex_table) 421da177e4SLinus Torvalds __stop___ex_table = .; 43bcbe40ebSSam Ravnborg } 441da177e4SLinus Torvalds 450c0d345eSDavid S. Miller NOTES 460c0d345eSDavid S. Miller 47bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 481da177e4SLinus Torvalds __init_begin = .; 49ab5da288SMartin Habets .init.text : { 50bcbe40ebSSam Ravnborg _sinittext = .; 51*01ba2bdcSSam Ravnborg INIT_TEXT 52ab5da288SMartin Habets _einittext = .; 531da177e4SLinus Torvalds } 54bcbe40ebSSam Ravnborg __init_text_end = .; 55bcbe40ebSSam Ravnborg .init.data : { 56*01ba2bdcSSam Ravnborg INIT_DATA 57bcbe40ebSSam Ravnborg } 58bcbe40ebSSam Ravnborg . = ALIGN(16); 59bcbe40ebSSam Ravnborg .init.setup : { 60bcbe40ebSSam Ravnborg __setup_start = .; 61bcbe40ebSSam Ravnborg *(.init.setup) 62bcbe40ebSSam Ravnborg __setup_end = .; 63bcbe40ebSSam Ravnborg } 64bcbe40ebSSam Ravnborg .initcall.init : { 65bcbe40ebSSam Ravnborg __initcall_start = .; 66bcbe40ebSSam Ravnborg INITCALLS 671da177e4SLinus Torvalds __initcall_end = .; 68bcbe40ebSSam Ravnborg } 69bcbe40ebSSam Ravnborg .con_initcall.init : { 701da177e4SLinus Torvalds __con_initcall_start = .; 71bcbe40ebSSam Ravnborg *(.con_initcall.init) 721da177e4SLinus Torvalds __con_initcall_end = .; 73bcbe40ebSSam Ravnborg } 741da177e4SLinus Torvalds SECURITY_INIT 7567d38229SJean-Paul Saman 7667d38229SJean-Paul Saman#ifdef CONFIG_BLK_DEV_INITRD 77bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 78bcbe40ebSSam Ravnborg .init.ramfs : { 791da177e4SLinus Torvalds __initramfs_start = .; 80bcbe40ebSSam Ravnborg *(.init.ramfs) 811da177e4SLinus Torvalds __initramfs_end = .; 82bcbe40ebSSam Ravnborg } 8367d38229SJean-Paul Saman#endif 8467d38229SJean-Paul Saman 85bcbe40ebSSam Ravnborg PERCPU(PAGE_SIZE) 86bcbe40ebSSam Ravnborg . = ALIGN(PAGE_SIZE); 871da177e4SLinus Torvalds __init_end = .; 881da177e4SLinus Torvalds . = ALIGN(32); 89bcbe40ebSSam Ravnborg .data.cacheline_aligned : { 90bcbe40ebSSam Ravnborg *(.data.cacheline_aligned) 91bcbe40ebSSam Ravnborg } 921da177e4SLinus Torvalds 931da177e4SLinus Torvalds __bss_start = .; 94bcbe40ebSSam Ravnborg .sbss : { 95bcbe40ebSSam Ravnborg *(.sbss) 96bcbe40ebSSam Ravnborg *(.scommon) } 97bcbe40ebSSam Ravnborg .bss : { 981da177e4SLinus Torvalds *(.dynbss) 991da177e4SLinus Torvalds *(.bss) 1001da177e4SLinus Torvalds *(COMMON) 1011da177e4SLinus Torvalds } 1021da177e4SLinus Torvalds _end = . ; 1031da177e4SLinus Torvalds PROVIDE (end = .); 104bcbe40ebSSam Ravnborg /DISCARD/ : { 105*01ba2bdcSSam Ravnborg EXIT_TEXT 106*01ba2bdcSSam Ravnborg EXIT_DATA 107bcbe40ebSSam Ravnborg *(.exitcall.exit) 108bcbe40ebSSam Ravnborg } 109d5784b57SDavid S. Miller 110d5784b57SDavid S. Miller STABS_DEBUG 111d5784b57SDavid S. Miller DWARF_DEBUG 1121da177e4SLinus Torvalds} 113