^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) * ld.script for compressed kernel support of MIPS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) *
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * Copyright (C) 2009 Lemote Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) * Author: Wu Zhangjin <wuzhanjing@gmail.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) * Copyright (C) 2010 "Wu Zhangjin" <wuzhanjing@gmail.com>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) OUTPUT_ARCH(mips)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) ENTRY(start)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) PHDRS {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) text PT_LOAD FLAGS(7); /* RWX */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) SECTIONS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) /* Text and read-only data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) /* . = VMLINUZ_LOAD_ADDRESS; */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) .text : {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) *(.text)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) *(.rodata)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) }: text
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) /* End of text section */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) /* Writable data */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) .data : {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) *(.data)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) /* Put the compressed image here */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) __image_begin = .;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) *(.image)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) __image_end = .;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) CONSTRUCTORS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) . = ALIGN(16);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) __appended_dtb = .;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) /* leave space for appended DTB */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) . += 0x100000;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) _edata = .;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) /* End of data section */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) /* BSS */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) .bss : {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) *(.bss)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) . = ALIGN(16);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) _end = .;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) /* Sections to be discarded */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) /DISCARD/ : {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) *(.MIPS.options)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) *(.options)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) *(.pdr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) *(.reginfo)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) *(.comment)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) *(.note)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) }