#define VMLINUX_SYMBOL(_sym_) _##_sym_#include <asm-generic/vmlinux.lds.h> /* target memory map */#ifdef CONFIG_H8300H_GENERIC#define ROMTOP 0x000000#define ROMSIZE 0x400000#define RAMTOP 0x400000#define RAMSIZE 0x400000#endif #ifdef CONFIG_H8300H_AKI3068NET#define ROMTOP 0x000000#define ROMSIZE 0x080000#define RAMTOP 0x400000#define RAMSIZE 0x200000#endif #ifdef CONFIG_H8300H_H8MAX#define ROMTOP 0x000000#define ROMSIZE 0x080000#define RAMTOP 0x400000#define RAMSIZE 0x200000#endif #ifdef CONFIG_H8300H_SIM#define ROMTOP 0x000000#define ROMSIZE 0x400000#define RAMTOP 0x400000#define RAMSIZE 0x400000#endif #ifdef CONFIG_H8S_SIM#define ROMTOP 0x000000#define ROMSIZE 0x400000#define RAMTOP 0x400000#define RAMSIZE 0x800000#endif #ifdef CONFIG_H8S_EDOSK2674#define ROMTOP 0x000000#define ROMSIZE 0x400000#define RAMTOP 0x400000#define RAMSIZE 0x800000#endif #if defined(CONFIG_H8300H_SIM) || defined(CONFIG_H8S_SIM)INPUT(romfs.o)#endif _jiffies = _jiffies_64 + 4; ENTRY(__start) SECTIONS{#if defined(CONFIG_ROMKERNEL) . = ROMTOP; .vectors : { __vector = . ; *(.vectors*) }#else . = RAMTOP; .bootvec : { *(.bootvec) }#endif .text : { _text = .;#if defined(CONFIG_ROMKERNEL) *(.int_redirect)#endif __stext = . ; *(.text) SCHED_TEXT LOCK_TEXT __etext = . ; . = ALIGN(16); /* Exception table */ ___start___ex_table = .; *(__ex_table) ___stop___ex_table = .; } RODATA#if defined(CONFIG_ROMKERNEL) SECURITY_INIT#endif ROEND = .; #if defined(CONFIG_ROMKERNEL) . = RAMTOP; .data : AT(ROEND)#else .data : #endif { __sdata = . ; ___data_start = . ; . = ALIGN(0x2000) ; *(.data.init_task) . = ALIGN(0x4) ; *(.data) . = ALIGN(0x4) ; *(.data.*) . = ALIGN(0x4) ; ___init_begin = .; __sinittext = .; *(.init.text) __einittext = .; *(.init.data) . = ALIGN(0x4) ; ___setup_start = .; *(.init.setup) . = ALIGN(0x4) ; ___setup_end = .; ___initcall_start = .; INITCALLS ___initcall_end = .; ___con_initcall_start = .; *(.con_initcall.init) ___con_initcall_end = .; *(.exit.text) *(.exit.data)#if defined(CONFIG_BLK_DEV_INITRD) . = ALIGN(4); ___initramfs_start = .; *(.init.ramfs) ___initramfs_end = .;#endif . = ALIGN(0x4) ; ___init_end = .; __edata = . ; }#if defined(CONFIG_RAMKERNEL) SECURITY_INIT#endif __begin_data = LOADADDR(.data); .bss : { . = ALIGN(0x4) ; __sbss = . ; *(.bss*) . = ALIGN(0x4) ; *(COMMON) . = ALIGN(0x4) ; __ebss = . ; __end = . ; __ramstart = .; } /DISCARD/ : { *(.exitcall.exit) } .romfs : { *(.romfs*) } . = RAMTOP+RAMSIZE; .dummy : { COMMAND_START = . - 0x200 ; __ramend = . ; }}
#define VMLINUX_SYMBOL(_sym_) _##_sym_
#include <asm-generic/vmlinux.lds.h>
/* target memory map */
#ifdef CONFIG_H8300H_GENERIC
#define ROMTOP 0x000000
#define ROMSIZE 0x400000
#define RAMTOP 0x400000
#define RAMSIZE 0x400000
#endif
#ifdef CONFIG_H8300H_AKI3068NET
#define ROMTOP 0x000000
#define ROMSIZE 0x080000
#define RAMTOP 0x400000
#define RAMSIZE 0x200000
#endif
#ifdef CONFIG_H8300H_H8MAX
#define ROMTOP 0x000000
#define ROMSIZE 0x080000
#define RAMTOP 0x400000
#define RAMSIZE 0x200000
#endif
#ifdef CONFIG_H8300H_SIM
#define ROMTOP 0x000000
#define ROMSIZE 0x400000
#define RAMTOP 0x400000
#define RAMSIZE 0x400000
#endif
#ifdef CONFIG_H8S_SIM
#define ROMTOP 0x000000
#define ROMSIZE 0x400000
#define RAMTOP 0x400000
#define RAMSIZE 0x800000
#endif
#ifdef CONFIG_H8S_EDOSK2674
#define ROMTOP 0x000000
#define ROMSIZE 0x400000
#define RAMTOP 0x400000
#define RAMSIZE 0x800000
#endif
#if defined(CONFIG_H8300H_SIM) || defined(CONFIG_H8S_SIM)
INPUT(romfs.o)
#endif
_jiffies = _jiffies_64 + 4;
ENTRY(__start)
SECTIONS
{
#if defined(CONFIG_ROMKERNEL)
. = ROMTOP;
.vectors :
{
__vector = . ;
*(.vectors*)
}
#else
. = RAMTOP;
.bootvec :
{
*(.bootvec)
}
#endif
.text :
{
_text = .;
#if defined(CONFIG_ROMKERNEL)
*(.int_redirect)
#endif
__stext = . ;
*(.text)
SCHED_TEXT
LOCK_TEXT
__etext = . ;
. = ALIGN(16); /* Exception table */
___start___ex_table = .;
*(__ex_table)
___stop___ex_table = .;
}
RODATA
#if defined(CONFIG_ROMKERNEL)
SECURITY_INIT
#endif
ROEND = .;
#if defined(CONFIG_ROMKERNEL)
. = RAMTOP;
.data : AT(ROEND)
#else
.data :
#endif
{
__sdata = . ;
___data_start = . ;
. = ALIGN(0x2000) ;
*(.data.init_task)
. = ALIGN(0x4) ;
*(.data)
. = ALIGN(0x4) ;
*(.data.*)
. = ALIGN(0x4) ;
___init_begin = .;
__sinittext = .;
*(.init.text)
__einittext = .;
*(.init.data)
. = ALIGN(0x4) ;
___setup_start = .;
*(.init.setup)
. = ALIGN(0x4) ;
___setup_end = .;
___initcall_start = .;
INITCALLS
___initcall_end = .;
___con_initcall_start = .;
*(.con_initcall.init)
___con_initcall_end = .;
*(.exit.text)
*(.exit.data)
#if defined(CONFIG_BLK_DEV_INITRD)
. = ALIGN(4);
___initramfs_start = .;
*(.init.ramfs)
___initramfs_end = .;
#endif
. = ALIGN(0x4) ;
___init_end = .;
__edata = . ;
}
#if defined(CONFIG_RAMKERNEL)
SECURITY_INIT
#endif
__begin_data = LOADADDR(.data);
.bss :
{
. = ALIGN(0x4) ;
__sbss = . ;
*(.bss*)
. = ALIGN(0x4) ;
*(COMMON)
. = ALIGN(0x4) ;
__ebss = . ;
__end = . ;
__ramstart = .;
}
/DISCARD/ : {
*(.exitcall.exit)
}
.romfs :
{
*(.romfs*)
}
. = RAMTOP+RAMSIZE;
.dummy :
{
COMMAND_START = . - 0x200 ;
__ramend = . ;
}
}