2 * ld script for the c6x kernel
4 * Copyright (C) 2010, 2011 Texas Instruments Incorporated
5 * Mark Salter <msalter@redhat.com>
7 #include <asm-generic/vmlinux.lds.h>
8 #include <asm/thread_info.h>
13 #if defined(CONFIG_CPU_BIG_ENDIAN)
14 jiffies = jiffies_64 + 4;
19 #define READONLY_SEGMENT_START \
21 #define READWRITE_SEGMENT_START \
28 * Start kernel read only segment
30 READONLY_SEGMENT_START
47 * This section contains data which may be shared with other
48 * cores. It needs to be a fixed offset from PAGE_OFFSET
49 * regardless of kernel configuration.
66 __init_begin = _stext;
89 RO_DATA_SECTION(PAGE_SIZE)
92 *(.const .const.* .gnu.linkonce.r.*)
97 __fdt_blob : AT(ADDR(__fdt_blob) - LOAD_OFFSET)
99 _fdt_start = . ; /* place for fdt blob */
100 *(__fdt_blob) ; /* Any link-placed DTB */
101 BYTE(0); /* section always has contents */
102 . = _fdt_start + 0x4000; /* Pad up to 16kbyte */
109 * Start kernel read-write segment.
111 READWRITE_SEGMENT_START
114 .fardata : AT(ADDR(.fardata) - LOAD_OFFSET)
116 INIT_TASK_DATA(THREAD_SIZE)
118 PAGE_ALIGNED_DATA(PAGE_SIZE)
119 CACHELINE_ALIGNED_DATA(128)
120 READ_MOSTLY_DATA(128)
124 *(.fardata .fardata.*)
128 .neardata ALIGN(8) : AT(ADDR(.neardata) - LOAD_OFFSET)
130 *(.neardata2 .neardata2.* .gnu.linkonce.s2.*)
131 *(.neardata .neardata.* .gnu.linkonce.s.*)
144 *(.far .far.* .gnu.linkonce.b.*)