1 2OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") 3OUTPUT_ARCH(arm) 4ENTRY(_start) 5SECTIONS 6{ 7 . = 0x80700000; 8 __image_copy_start =.; 9 . = ALIGN(4); 10 .text : 11 { 12 __text_start = .; 13 start.o (.text*) 14 init_registers.o (.text*) 15 lowlevel_init_v300.o (.text*) 16 ddr_training_impl.o (.text*) 17 ddr_training_console.o (.text*) 18 ddr_training_ctl.o (.text*) 19 ddr_training_boot.o (.text*) 20 ddr_training_custom.o (.text*) 21 uart.o (.text*) 22 div0.o (.text*) 23 emmc_boot.o (.text*) 24 image_data.o (.text*) 25 startup.o(.text*) 26 reset.o(.text*) 27 __init_end = .; 28 ASSERT(((__init_end - __text_start) < 0x6000), "init sections too big!"); 29 *(.text*) 30 } 31 __text_end = .; 32 33 . = ALIGN(4); 34 .image : { *(.image) } 35 36 . = ALIGN(4); 37 .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } 38 39 . = ALIGN(4); 40 .data : { *(.data) } 41 42 . = ALIGN(4); 43 .got : { *(.got) } 44 45 . = ALIGN(4); 46 __image_copy_end =.; 47 __bss_start = .; 48 .bss : { *(.bss) } 49 __bss_end = .; 50 _end = .; 51} 52