18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * ld.script for compressed kernel support of MIPS
38c2ecf20Sopenharmony_ci *
48c2ecf20Sopenharmony_ci * Copyright (C) 2009 Lemote Inc.
58c2ecf20Sopenharmony_ci * Author: Wu Zhangjin <wuzhanjing@gmail.com>
68c2ecf20Sopenharmony_ci * Copyright (C) 2010 "Wu Zhangjin" <wuzhanjing@gmail.com>
78c2ecf20Sopenharmony_ci */
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciOUTPUT_ARCH(mips)
108c2ecf20Sopenharmony_ciENTRY(start)
118c2ecf20Sopenharmony_ciPHDRS {
128c2ecf20Sopenharmony_ci	text PT_LOAD FLAGS(7); /* RWX */
138c2ecf20Sopenharmony_ci}
148c2ecf20Sopenharmony_ciSECTIONS
158c2ecf20Sopenharmony_ci{
168c2ecf20Sopenharmony_ci	/* Text and read-only data */
178c2ecf20Sopenharmony_ci	/* . = VMLINUZ_LOAD_ADDRESS; */
188c2ecf20Sopenharmony_ci	.text : {
198c2ecf20Sopenharmony_ci		*(.text)
208c2ecf20Sopenharmony_ci		*(.rodata)
218c2ecf20Sopenharmony_ci	}: text
228c2ecf20Sopenharmony_ci	/* End of text section */
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci	/* Writable data */
258c2ecf20Sopenharmony_ci	.data : {
268c2ecf20Sopenharmony_ci		*(.data)
278c2ecf20Sopenharmony_ci		/* Put the compressed image here */
288c2ecf20Sopenharmony_ci		__image_begin = .;
298c2ecf20Sopenharmony_ci		*(.image)
308c2ecf20Sopenharmony_ci		__image_end = .;
318c2ecf20Sopenharmony_ci		CONSTRUCTORS
328c2ecf20Sopenharmony_ci		. = ALIGN(16);
338c2ecf20Sopenharmony_ci	}
348c2ecf20Sopenharmony_ci	__appended_dtb = .;
358c2ecf20Sopenharmony_ci	/* leave space for appended DTB */
368c2ecf20Sopenharmony_ci	. += 0x100000;
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci	_edata = .;
398c2ecf20Sopenharmony_ci	/* End of data section */
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci	/* BSS */
428c2ecf20Sopenharmony_ci	.bss : {
438c2ecf20Sopenharmony_ci		*(.bss)
448c2ecf20Sopenharmony_ci	}
458c2ecf20Sopenharmony_ci	. = ALIGN(16);
468c2ecf20Sopenharmony_ci	_end = .;
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci	/* Sections to be discarded */
498c2ecf20Sopenharmony_ci	/DISCARD/ : {
508c2ecf20Sopenharmony_ci		*(.MIPS.options)
518c2ecf20Sopenharmony_ci		*(.options)
528c2ecf20Sopenharmony_ci		*(.pdr)
538c2ecf20Sopenharmony_ci		*(.reginfo)
548c2ecf20Sopenharmony_ci		*(.comment)
558c2ecf20Sopenharmony_ci		*(.note)
568c2ecf20Sopenharmony_ci	}
578c2ecf20Sopenharmony_ci}
58