95 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			95 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0+ */
 | |
| /*
 | |
|  * Copyright (c) 2004-2008 Texas Instruments
 | |
|  *
 | |
|  * (C) Copyright 2002
 | |
|  * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
 | |
|  */
 | |
| 
 | |
| OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
 | |
| OUTPUT_ARCH(arm)
 | |
| ENTRY(_start)
 | |
| SECTIONS
 | |
| {
 | |
| 	. = 0x00000000;
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 	.text :
 | |
| 	{
 | |
| 		__image_copy_start = .;
 | |
| 		*(.vectors)
 | |
| 		CPUDIR/start.o (.text*)
 | |
| 		*(.text*)
 | |
| 		*(.glue*)
 | |
| 	}
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 	.rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) }
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 	.data : {
 | |
| 		*(.data*)
 | |
| 	}
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 	.u_boot_list : {
 | |
| 		KEEP(*(SORT(.u_boot_list*)));
 | |
| 	}
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 	.binman_sym_table : {
 | |
| 		__binman_sym_start = .;
 | |
| 		KEEP(*(SORT(.binman_sym*)));
 | |
| 		__binman_sym_end = .;
 | |
| 	}
 | |
| 
 | |
| 	. = ALIGN(4);
 | |
| 
 | |
| 	__image_copy_end = .;
 | |
| 
 | |
| 	.rel.dyn : {
 | |
| 		__rel_dyn_start = .;
 | |
| 		*(.rel*)
 | |
| 		__rel_dyn_end = .;
 | |
| 	}
 | |
| 
 | |
| 	.end :
 | |
| 	{
 | |
| 		*(.__end)
 | |
| 	}
 | |
| 
 | |
| 	_image_binary_end = .;
 | |
| 
 | |
| 	.bss __rel_dyn_start (OVERLAY) : {
 | |
| 		__bss_start = .;
 | |
| 		*(.bss*)
 | |
| 		 . = ALIGN(4);
 | |
| 		__bss_end = .;
 | |
| 	}
 | |
| 	__bss_size = __bss_end - __bss_start;
 | |
| 	.dynsym _image_binary_end : { *(.dynsym) }
 | |
| 	.dynbss : { *(.dynbss) }
 | |
| 	.dynstr : { *(.dynstr*) }
 | |
| 	.dynamic : { *(.dynamic*) }
 | |
| 	.hash : { *(.hash*) }
 | |
| 	.plt : { *(.plt*) }
 | |
| 	.interp : { *(.interp*) }
 | |
| 	.gnu : { *(.gnu*) }
 | |
| 	.ARM.exidx : { *(.ARM.exidx*) }
 | |
| }
 | |
| 
 | |
| #if defined(IMAGE_MAX_SIZE)
 | |
| ASSERT(__image_copy_end - __image_copy_start < (IMAGE_MAX_SIZE), \
 | |
| 	"SPL image too big");
 | |
| #endif
 | |
| 
 | |
| #if defined(CONFIG_SPL_BSS_MAX_SIZE)
 | |
| ASSERT(__bss_end - __bss_start < (CONFIG_SPL_BSS_MAX_SIZE), \
 | |
| 	"SPL image BSS too big");
 | |
| #endif
 | |
| 
 | |
| #if defined(CONFIG_SPL_MAX_FOOTPRINT)
 | |
| ASSERT(__bss_end - _start < (CONFIG_SPL_MAX_FOOTPRINT), \
 | |
| 	"SPL image plus BSS too big");
 | |
| #endif
 | 
