···11-/* ld script to make the Linux/CRIS kernel22- * Authors: Bjorn Wesen (bjornw@axis.com)33- *44- * It is VERY DANGEROUS to fiddle around with the symbols in this55- * script. It is for example quite vital that all generated sections66- * that are used are actually named here, otherwise the linker will77- * put them at the end, where the init stuff is which is FREED after88- * the kernel has booted. 99- */ 1010-1111-#include <asm-generic/vmlinux.lds.h>1212-#include <asm/page.h>1313-1414-jiffies = jiffies_64;1515-SECTIONS1616-{1717- . = DRAM_VIRTUAL_BASE;1818- dram_start = .;1919- ibr_start = .;2020- . = . + 0x4000; /* see head.S and pages reserved at the start */2121-2222- _text = .; /* Text and read-only data */2323- text_start = .; /* lots of aliases */2424- _stext = .;2525- __stext = .;2626- .text : {2727- TEXT_TEXT2828- SCHED_TEXT2929- LOCK_TEXT3030- *(.fixup)3131- *(.text.__*)3232- }3333-3434- _etext = . ; /* End of text section */ 3535- __etext = .;3636-3737- . = ALIGN(4); /* Exception table */3838- __start___ex_table = .;3939- __ex_table : { *(__ex_table) }4040- __stop___ex_table = .;4141-4242- RODATA4343-4444- . = ALIGN (4);4545- ___data_start = . ;4646- __Sdata = . ;4747- .data : { /* Data */4848- DATA_DATA4949- }5050- __edata = . ; /* End of data section */5151- _edata = . ;5252-5353- . = ALIGN(PAGE_SIZE); /* init_task and stack, must be aligned */5454- .data.init_task : { *(.data.init_task) }5555-5656- . = ALIGN(PAGE_SIZE); /* Init code and data */5757- __init_begin = .;5858- .init.text : { 5959- _sinittext = .;6060- INIT_TEXT6161- _einittext = .;6262- }6363- .init.data : { INIT_DATA }6464- . = ALIGN(16);6565- __setup_start = .;6666- .init.setup : { *(.init.setup) }6767- __setup_end = .;6868- .initcall.init : {6969- __initcall_start = .;7070- INITCALLS7171- __initcall_end = .; 7272- }7373-7474- .con_initcall.init : {7575- __con_initcall_start = .;7676- *(.con_initcall.init)7777- __con_initcall_end = .;7878- } 7979- SECURITY_INIT8080-8181-#ifdef CONFIG_BLK_DEV_INITRD8282- .init.ramfs : {8383- __initramfs_start = .;8484- *(.init.ramfs)8585- __initramfs_end = .;8686- }8787-#endif8888- __vmlinux_end = .; /* last address of the physical file */8989-9090- /*9191- * We fill to the next page, so we can discard all init9292- * pages without needing to consider what payload might be9393- * appended to the kernel image.9494- */9595- . = ALIGN(PAGE_SIZE);9696-9797- __init_end = .;9898-9999- __data_end = . ; /* Move to _edata ? */100100- __bss_start = .; /* BSS */101101- .bss : {102102- *(COMMON)103103- *(.bss)104104- }105105-106106- . = ALIGN (0x20);107107- _end = .;108108- __end = .;109109-110110- /* Sections to be discarded */111111- /DISCARD/ : {112112- EXIT_TEXT113113- EXIT_DATA114114- *(.exitcall.exit)115115- }116116-117117- dram_end = dram_start + CONFIG_ETRAX_DRAM_SIZE*1024*1024;118118-}
+14-2
arch/cris/arch-v32/boot/compressed/head.S
···2828 beq dram_init_finished2929 nop30303131-#include "../../mach/dram_init.S"3131+#if defined CONFIG_ETRAXFS3232+#include "../../mach-fs/dram_init.S"3333+#elif defined CONFIG_CRIS_MACH_ARTPEC33434+#include "../../mach-a3/dram_init.S"3535+#else3636+#error Only ETRAXFS and ARTPEC-3 supported!3737+#endif32383339dram_init_finished:3440···136130_boot_source:137131 .dword 0138132139139-#include "../../mach/hw_settings.S"133133+#if defined CONFIG_ETRAXFS134134+#include "../../mach-fs/hw_settings.S"135135+#elif defined CONFIG_CRIS_MACH_ARTPEC3136136+#include "../../mach-a3/hw_settings.S"137137+#else138138+#error Only ETRAXFS and ARTPEC-3 supported!139139+#endif
···1010 * The macros found in mmu_defs_asm.h uses the ## concatenation operator, so1111 * -traditional must not be used when assembling this file.1212 */1313-#include <hwregs/reg_rdwr.h>1313+#include <linux/autoconf.h>1414#include <arch/memmap.h>1515+#include <hwregs/reg_rdwr.h>1516#include <hwregs/intr_vect.h>1617#include <hwregs/asm/mmu_defs_asm.h>1718#include <hwregs/asm/reg_map_asm.h>···218217 beq _dram_initialized219218 nop220219221221-#include "../mach/dram_init.S"220220+#if defined CONFIG_ETRAXFS221221+#include "../mach-fs/dram_init.S"222222+#elif defined CONFIG_CRIS_MACH_ARTPEC3223223+#include "../mach-a3/dram_init.S"224224+#else225225+#error Only ETRAXFS and ARTPEC-3 supported!226226+#endif227227+222228223229_dram_initialized:224230 ;; Copy the text and data section to DRAM. This depends on that the···480472481473 .section ".init.data", "aw"482474483483-#include "../mach/hw_settings.S"475475+#if defined CONFIG_ETRAXFS476476+#include "../mach-fs/hw_settings.S"477477+#elif defined CONFIG_CRIS_MACH_ARTPEC3478478+#include "../mach-a3/hw_settings.S"479479+#else480480+#error Only ETRAXFS and ARTPEC-3 supported!481481+#endif