diff options
Diffstat (limited to 'arch/microblaze/kernel/vmlinux.lds.S')
-rw-r--r-- | arch/microblaze/kernel/vmlinux.lds.S | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/arch/microblaze/kernel/vmlinux.lds.S b/arch/microblaze/kernel/vmlinux.lds.S index a09f2962fbec..ac0e1a5d4782 100644 --- a/arch/microblaze/kernel/vmlinux.lds.S +++ b/arch/microblaze/kernel/vmlinux.lds.S | |||
@@ -8,7 +8,6 @@ | |||
8 | * for more details. | 8 | * for more details. |
9 | */ | 9 | */ |
10 | 10 | ||
11 | OUTPUT_FORMAT("elf32-microblaze", "elf32-microblaze", "elf32-microblaze") | ||
12 | OUTPUT_ARCH(microblaze) | 11 | OUTPUT_ARCH(microblaze) |
13 | ENTRY(microblaze_start) | 12 | ENTRY(microblaze_start) |
14 | 13 | ||
@@ -16,7 +15,11 @@ ENTRY(microblaze_start) | |||
16 | #include <asm-generic/vmlinux.lds.h> | 15 | #include <asm-generic/vmlinux.lds.h> |
17 | #include <asm/thread_info.h> | 16 | #include <asm/thread_info.h> |
18 | 17 | ||
18 | #ifdef __MICROBLAZEEL__ | ||
19 | jiffies = jiffies_64; | ||
20 | #else | ||
19 | jiffies = jiffies_64 + 4; | 21 | jiffies = jiffies_64 + 4; |
22 | #endif | ||
20 | 23 | ||
21 | SECTIONS { | 24 | SECTIONS { |
22 | . = CONFIG_KERNEL_START; | 25 | . = CONFIG_KERNEL_START; |
@@ -67,11 +70,6 @@ SECTIONS { | |||
67 | RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE) | 70 | RW_DATA_SECTION(32, PAGE_SIZE, THREAD_SIZE) |
68 | _edata = . ; | 71 | _edata = . ; |
69 | 72 | ||
70 | /* Reserve some low RAM for r0 based memory references */ | ||
71 | . = ALIGN(0x4) ; | ||
72 | r0_ram = . ; | ||
73 | . = . + PAGE_SIZE; /* a page should be enough */ | ||
74 | |||
75 | /* Under the microblaze ABI, .sdata and .sbss must be contiguous */ | 73 | /* Under the microblaze ABI, .sdata and .sbss must be contiguous */ |
76 | . = ALIGN(8); | 74 | . = ALIGN(8); |
77 | .sdata : AT(ADDR(.sdata) - LOAD_OFFSET) { | 75 | .sdata : AT(ADDR(.sdata) - LOAD_OFFSET) { |
@@ -120,20 +118,10 @@ SECTIONS { | |||
120 | 118 | ||
121 | __init_end_before_initramfs = .; | 119 | __init_end_before_initramfs = .; |
122 | 120 | ||
123 | .init.ramfs ALIGN(PAGE_SIZE) : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { | 121 | .init.ramfs : AT(ADDR(.init.ramfs) - LOAD_OFFSET) { |
124 | __initramfs_start = .; | 122 | INIT_RAM_FS |
125 | *(.init.ramfs) | ||
126 | __initramfs_end = .; | ||
127 | . = ALIGN(4); | ||
128 | LONG(0); | ||
129 | /* | ||
130 | * FIXME this can break initramfs for MMU. | ||
131 | * Pad init.ramfs up to page boundary, | ||
132 | * so that __init_end == __bss_start. This will make image.elf | ||
133 | * consistent with the image.bin | ||
134 | */ | ||
135 | /* . = ALIGN(PAGE_SIZE); */ | ||
136 | } | 123 | } |
124 | |||
137 | __init_end = .; | 125 | __init_end = .; |
138 | 126 | ||
139 | .bss ALIGN (PAGE_SIZE) : AT(ADDR(.bss) - LOAD_OFFSET) { | 127 | .bss ALIGN (PAGE_SIZE) : AT(ADDR(.bss) - LOAD_OFFSET) { |