Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | /* SPDX-License-Identifier: GPL-2.0+ */ MEMORY { .spl_mem : ORIGIN = IMAGE_TEXT_BASE, \ LENGTH = IMAGE_MAX_SIZE } MEMORY { .bss_mem : ORIGIN = CONFIG_SPL_BSS_START_ADDR, \ LENGTH = CONFIG_SPL_BSS_MAX_SIZE } OUTPUT_ARCH(mips) ENTRY(_start) SECTIONS { . = 0x00000000; . = ALIGN(4); .text : { __text_start = .; *(.text*) __text_end = .; } > .spl_mem . = ALIGN(4); .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } > .spl_mem . = ALIGN(4); .data : { *(SORT_BY_ALIGNMENT(.data*)) *(SORT_BY_ALIGNMENT(.sdata*)) . = ALIGN(8); } > .spl_mem #if defined(CONFIG_SPL_DM) || defined(CONFIG_SPL_LOADER_SUPPORT) . = ALIGN(4); __u_boot_list : { KEEP(*(SORT(__u_boot_list*))); . = ALIGN(8); } > .spl_mem #endif __image_copy_end = .; __image_copy_len = __image_copy_end - __text_start; _image_binary_end = .; .bss (NOLOAD) : { __bss_start = .; *(.bss*) *(.sbss*) *(COMMON) . = ALIGN(4); __bss_end = .; } > .bss_mem /* These mark the ABI of U-Boot for debuggers. */ .mdebug.abi32 : { KEEP(*(.mdebug.abi32)) } .mdebug.abi64 : { KEEP(*(.mdebug.abi64)) } /* This is the MIPS specific mdebug section. */ .mdebug : { *(.mdebug) } /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } .stab.excl 0 : { *(.stab.excl) } .stab.exclstr 0 : { *(.stab.exclstr) } .stab.index 0 : { *(.stab.index) } .stab.indexstr 0 : { *(.stab.indexstr) } .comment 0 : { *(.comment) } /* * DWARF debug sections. * Symbols in the DWARF debugging sections are relative to * the beginning of the section so we begin them at 0. */ /* DWARF 1 */ .debug 0 : { *(.debug) } .line 0 : { *(.line) } /* GNU DWARF 1 extensions */ .debug_srcinfo 0 : { *(.debug_srcinfo) } .debug_sfnames 0 : { *(.debug_sfnames) } /* DWARF 1.1 and DWARF 2 */ .debug_aranges 0 : { *(.debug_aranges) } .debug_pubnames 0 : { *(.debug_pubnames) } /* DWARF 2 */ .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_frame 0 : { *(.debug_frame) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_macinfo 0 : { *(.debug_macinfo) } .debug_pubtypes 0 : { *(.debug_pubtypes) } /* DWARF 3 */ .debug_ranges 0 : { *(.debug_ranges) } /* SGI/MIPS DWARF 2 extensions */ .debug_weaknames 0 : { *(.debug_weaknames) } .debug_funcnames 0 : { *(.debug_funcnames) } .debug_typenames 0 : { *(.debug_typenames) } .debug_varnames 0 : { *(.debug_varnames) } /* GNU DWARF 2 extensions */ .debug_gnu_pubnames 0 : { *(.debug_gnu_pubnames) } .debug_gnu_pubtypes 0 : { *(.debug_gnu_pubtypes) } /* DWARF 4 */ .debug_types 0 : { *(.debug_types) } /* DWARF 5 */ .debug_macro 0 : { *(.debug_macro) } .debug_addr 0 : { *(.debug_addr) } /DISCARD/ : { /* ABI crap starts here */ *(.MIPS.abiflags) *(.MIPS.options) *(.options) *(.pdr) *(.reginfo) *(.eh_frame) } } ASSERT(_image_binary_end % 8 == 0, \ "_image_binary_end must be 8-byte aligned for device tree"); |