| .. | .. | 
|---|
| 9 | 9 |  | 
|---|
| 10 | 10 | #include <linux/sizes.h> | 
|---|
| 11 | 11 |  | 
|---|
| 12 |  | -#include <asm-generic/vmlinux.lds.h> | 
|---|
|  | 12 | +#include <asm/vmlinux.lds.h> | 
|---|
| 13 | 13 | #include <asm/cache.h> | 
|---|
| 14 | 14 | #include <asm/thread_info.h> | 
|---|
| 15 | 15 | #include <asm/memory.h> | 
|---|
| 16 | 16 | #include <asm/mpu.h> | 
|---|
| 17 | 17 | #include <asm/page.h> | 
|---|
| 18 |  | - | 
|---|
| 19 |  | -#include "vmlinux.lds.h" | 
|---|
| 20 | 18 |  | 
|---|
| 21 | 19 | OUTPUT_ARCH(arm) | 
|---|
| 22 | 20 | ENTRY(stext) | 
|---|
| .. | .. | 
|---|
| 42 | 40 | ARM_DISCARD | 
|---|
| 43 | 41 | *(.alt.smp.init) | 
|---|
| 44 | 42 | *(.pv_table) | 
|---|
|  | 43 | +#ifndef CONFIG_ARM_UNWIND | 
|---|
|  | 44 | +		*(.ARM.exidx) *(.ARM.exidx.*) | 
|---|
|  | 45 | +		*(.ARM.extab) *(.ARM.extab.*) | 
|---|
|  | 46 | +#endif | 
|---|
| 45 | 47 | } | 
|---|
| 46 | 48 |  | 
|---|
| 47 | 49 | . = XIP_VIRT_ADDR(CONFIG_XIP_PHYS_ADDR); | 
|---|
| .. | .. | 
|---|
| 70 | 72 | ARM_UNWIND_SECTIONS | 
|---|
| 71 | 73 | #endif | 
|---|
| 72 | 74 |  | 
|---|
| 73 |  | -	NOTES | 
|---|
| 74 |  | - | 
|---|
| 75 | 75 | _etext = .;			/* End of text and rodata section */ | 
|---|
| 76 | 76 |  | 
|---|
| 77 | 77 | ARM_VECTORS | 
|---|
| .. | .. | 
|---|
| 96 | 96 | INIT_SETUP(16) | 
|---|
| 97 | 97 | INIT_CALLS | 
|---|
| 98 | 98 | CON_INITCALL | 
|---|
| 99 |  | -		SECURITY_INITCALL | 
|---|
| 100 | 99 | INIT_RAM_FS | 
|---|
| 101 | 100 | } | 
|---|
| 102 | 101 |  | 
|---|
| .. | .. | 
|---|
| 115 | 114 |  | 
|---|
| 116 | 115 | . = ALIGN(THREAD_SIZE); | 
|---|
| 117 | 116 | _sdata = .; | 
|---|
| 118 |  | -	RW_DATA_SECTION(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE) | 
|---|
|  | 117 | +	RW_DATA(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE) | 
|---|
| 119 | 118 | .data.ro_after_init : AT(ADDR(.data.ro_after_init) - LOAD_OFFSET) { | 
|---|
| 120 | 119 | *(.data..ro_after_init) | 
|---|
| 121 | 120 | } | 
|---|
| .. | .. | 
|---|
| 155 | 154 | _end = .; | 
|---|
| 156 | 155 |  | 
|---|
| 157 | 156 | STABS_DEBUG | 
|---|
|  | 157 | +	DWARF_DEBUG | 
|---|
|  | 158 | +	ARM_DETAILS | 
|---|
|  | 159 | + | 
|---|
|  | 160 | +	ARM_ASSERTS | 
|---|
| 158 | 161 | } | 
|---|
| 159 | 162 |  | 
|---|
| 160 | 163 | /* | 
|---|
| .. | .. | 
|---|
| 164 | 167 | */ | 
|---|
| 165 | 168 | ASSERT((__proc_info_end - __proc_info_begin), "missing CPU support") | 
|---|
| 166 | 169 | ASSERT((__arch_info_end - __arch_info_begin), "no machine record defined") | 
|---|
| 167 |  | - | 
|---|
| 168 |  | -/* | 
|---|
| 169 |  | - * The HYP init code can't be more than a page long, | 
|---|
| 170 |  | - * and should not cross a page boundary. | 
|---|
| 171 |  | - * The above comment applies as well. | 
|---|
| 172 |  | - */ | 
|---|
| 173 |  | -ASSERT(__hyp_idmap_text_end - (__hyp_idmap_text_start & PAGE_MASK) <= PAGE_SIZE, | 
|---|
| 174 |  | -	"HYP init code too big or misaligned") | 
|---|
| 175 | 170 |  | 
|---|
| 176 | 171 | #ifdef CONFIG_XIP_DEFLATED_DATA | 
|---|
| 177 | 172 | /* | 
|---|