There is currently no corresponding ELF program header for the "text" loadable segment which is confusing for some bootloader out there such as CFE because it expects to find a program header matching the segment it is trying to load. The Linux kernel ELF binary "vmlinux" has a similar program header for the text segment so we just mimic this here too. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Cc: linux-mips@linux-mips.org Cc: blogic@openwrt.org Cc: james.hogan@imgtec.com Patchwork: https://patchwork.linux-mips.org/patch/5827/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
		
			
				
	
	
		
			53 lines
		
	
	
	
		
			827 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
	
		
			827 B
			
		
	
	
	
		
			Text
		
	
	
	
	
	
/*
 | 
						|
 * ld.script for compressed kernel support of MIPS
 | 
						|
 *
 | 
						|
 * Copyright (C) 2009 Lemote Inc.
 | 
						|
 * Author: Wu Zhangjin <wuzhanjing@gmail.com>
 | 
						|
 * Copyright (C) 2010 "Wu Zhangjin" <wuzhanjing@gmail.com>
 | 
						|
 */
 | 
						|
 | 
						|
OUTPUT_ARCH(mips)
 | 
						|
ENTRY(start)
 | 
						|
PHDRS {
 | 
						|
	text PT_LOAD FLAGS(7); /* RWX */
 | 
						|
}
 | 
						|
SECTIONS
 | 
						|
{
 | 
						|
	/* Text and read-only data */
 | 
						|
	/* . = VMLINUZ_LOAD_ADDRESS; */
 | 
						|
	.text : {
 | 
						|
		*(.text)
 | 
						|
		*(.rodata)
 | 
						|
	}: text
 | 
						|
	/* End of text section */
 | 
						|
 | 
						|
	/* Writable data */
 | 
						|
	.data : {
 | 
						|
		*(.data)
 | 
						|
		/* Put the compressed image here */
 | 
						|
		__image_begin = .;
 | 
						|
		*(.image)
 | 
						|
		__image_end = .;
 | 
						|
		CONSTRUCTORS
 | 
						|
	}
 | 
						|
	. = ALIGN(16);
 | 
						|
	_edata = .;
 | 
						|
	/* End of data section */
 | 
						|
 | 
						|
	/* BSS */
 | 
						|
	.bss : {
 | 
						|
		*(.bss)
 | 
						|
	}
 | 
						|
	. = ALIGN(16);
 | 
						|
	_end = .;
 | 
						|
 | 
						|
	/* Sections to be discarded */
 | 
						|
	/DISCARD/ : {
 | 
						|
		*(.MIPS.options)
 | 
						|
		*(.options)
 | 
						|
		*(.pdr)
 | 
						|
		*(.reginfo)
 | 
						|
		*(.comment)
 | 
						|
		*(.note)
 | 
						|
	}
 | 
						|
}
 |