linux/arch/h8300/kernel/vmlinux.lds.S
<<
>>
Prefs
   1#include <asm-generic/vmlinux.lds.h>
   2#include <asm/page.h>
   3
   4/* target memory map */
   5#ifdef CONFIG_H8300H_GENERIC
   6#define ROMTOP  0x000000
   7#define ROMSIZE 0x400000
   8#define RAMTOP  0x400000
   9#define RAMSIZE 0x400000
  10#endif
  11
  12#ifdef CONFIG_H8300H_AKI3068NET
  13#define ROMTOP  0x000000
  14#define ROMSIZE 0x080000
  15#define RAMTOP  0x400000
  16#define RAMSIZE 0x200000
  17#endif
  18
  19#ifdef CONFIG_H8300H_H8MAX
  20#define ROMTOP  0x000000
  21#define ROMSIZE 0x080000
  22#define RAMTOP  0x400000
  23#define RAMSIZE 0x200000
  24#endif
  25
  26#ifdef CONFIG_H8300H_SIM
  27#define ROMTOP  0x000000
  28#define ROMSIZE 0x400000
  29#define RAMTOP  0x400000
  30#define RAMSIZE 0x400000
  31#endif
  32
  33#ifdef CONFIG_H8S_SIM
  34#define ROMTOP  0x000000
  35#define ROMSIZE 0x400000
  36#define RAMTOP  0x400000
  37#define RAMSIZE 0x800000
  38#endif
  39
  40#ifdef CONFIG_H8S_EDOSK2674
  41#define ROMTOP  0x000000
  42#define ROMSIZE 0x400000
  43#define RAMTOP  0x400000
  44#define RAMSIZE 0x800000
  45#endif
  46
  47#if defined(CONFIG_H8300H_SIM) || defined(CONFIG_H8S_SIM)
  48INPUT(romfs.o)
  49#endif
  50
  51_jiffies = _jiffies_64 + 4;
  52
  53ENTRY(__start)
  54
  55SECTIONS
  56{
  57#if defined(CONFIG_ROMKERNEL)
  58        . = ROMTOP; 
  59        .vectors :
  60        {
  61        __vector = . ;
  62                *(.vectors*)
  63        }
  64#else
  65        . = RAMTOP; 
  66        .bootvec :      
  67        {
  68                *(.bootvec)
  69        }
  70#endif
  71        .text :
  72        {
  73        _text = .;
  74#if defined(CONFIG_ROMKERNEL)
  75        *(.int_redirect)
  76#endif
  77        __stext = . ;
  78        TEXT_TEXT
  79        SCHED_TEXT
  80        LOCK_TEXT
  81        __etext = . ;
  82        }
  83        EXCEPTION_TABLE(16)
  84
  85        RODATA
  86#if defined(CONFIG_ROMKERNEL)
  87        SECURITY_INIT
  88#endif
  89        ROEND = .; 
  90#if defined(CONFIG_ROMKERNEL)
  91        . = RAMTOP;
  92        .data : AT(ROEND)
  93#else
  94        .data : 
  95#endif
  96        {
  97        __sdata = . ;
  98        ___data_start = . ;
  99
 100        INIT_TASK_DATA(0x2000)
 101        . = ALIGN(0x4) ;
 102                DATA_DATA
 103        . = ALIGN(0x4) ;
 104                *(.data.*)      
 105
 106        . = ALIGN(0x4) ;
 107        ___init_begin = .;
 108        __sinittext = .; 
 109                INIT_TEXT
 110        __einittext = .; 
 111                INIT_DATA
 112        . = ALIGN(0x4) ;
 113        INIT_SETUP(0x4)
 114        ___setup_start = .;
 115                *(.init.setup)
 116        . = ALIGN(0x4) ;
 117        ___setup_end = .;
 118        INIT_CALLS
 119        CON_INITCALL
 120                EXIT_TEXT
 121                EXIT_DATA
 122        INIT_RAM_FS
 123        . = ALIGN(0x4) ;
 124        ___init_end = .;
 125        __edata = . ;
 126        }
 127#if defined(CONFIG_RAMKERNEL)
 128        SECURITY_INIT
 129#endif
 130        __begin_data = LOADADDR(.data);
 131        .bss : 
 132        {
 133        . = ALIGN(0x4) ;
 134        __sbss = . ;
 135                *(.bss*)
 136        . = ALIGN(0x4) ;
 137                *(COMMON)
 138        . = ALIGN(0x4) ;
 139        __ebss = . ;
 140        __end = . ;
 141        __ramstart = .;
 142        }
 143        .romfs :        
 144        {
 145                *(.romfs*)
 146        }
 147        . = RAMTOP+RAMSIZE;
 148        .dummy :
 149        {
 150        COMMAND_START = . - 0x200 ;
 151        __ramend = . ;
 152        }
 153
 154        DISCARDS
 155}
 156