MEMORY { rom : ORIGIN = 0x9FC00000, LENGTH = 0x00002000 /* 8K */ ram : ORIGIN = 0x80000000, LENGTH = 0x04000000 /* 64M */ flash_u : ORIGIN = 0xA4000000, LENGTH = 0x00800000 /* 8M */ flash_c : ORIGIN = 0x88000000, LENGTH = 0x00800000 /* 8M */ io : ORIGIN = 0xAC000000, LENGTH = 0x00800000 /* 8M */ } stack_ptr = 0x83FFEFF0; baudrate = 0x0D; sys_led_port = 0xAC000000; sys_uart_data = 0xAC010000; sys_uart_stat = 0xAC010004; sys_uart_baud = 0xAC010008; sys_timer_usec = 0xAC00008; sys_timer_sec = 0xAC00000C; SECTIONS { .init ORIGIN(rom) : { start = ALIGN(4); entry = ALIGN(4); _entry = ALIGN(4); __entry = ALIGN(4); *(.stext) } > rom .ktext ORIGIN(rom) + 0x180 : { *(.ktext) } > rom .text . : { *(.text) } > rom .rodata . : { *(.rodata*) } > rom .data ORIGIN(ram) : { _ram_start = ALIGN(4); *(.*data) *(.*bss) *(.*common) } > ram }