source: rtems/c/src/lib/libbsp/m68k/gen68360/startup/linkcmds @ 996a9cb4

4.104.114.84.95
Last change on this file since 996a9cb4 was 996a9cb4, checked in by Joel Sherrill <joel.sherrill@…>, on 05/01/96 at 15:25:33

Updates from Eric Norum.

  • Property mode set to 100644
File size: 2.5 KB
RevLine 
[457b6ae]1/*
2 *  This file contains GNU linker directives for a generic MC68360 board.
3 *
4 * Saskatchewan Accelerator Laboratory
5 * University of Saskatchewan
6 * Saskatoon, Saskatchewan, CANADA
7 * eric@skatter.usask.ca
8 *
9 *  $Id$
10 */
11
12/*
13 * Declare on-board memory
14 */
15MEMORY {
[996a9cb4]16          ram : ORIGIN = 0x00000000, LENGTH = 4M
17          rom : ORIGIN = 0xFF000000, LENGTH = 1M
18        dpram : ORIGIN = 0xFE000000, LENGTH = 8k
[457b6ae]19}
20
21/*
22 * Declare some sizes
[996a9cb4]23 * XXX: The assignment of ". += XyzSize;" fails in older gld's if the
24 *      number used there is not constant.  If this happens to you, edit
25 *      the lines marked below to use a constant value.
[457b6ae]26 */
[996a9cb4]27HeapSize = DEFINED(HeapSize) ? HeapSize : 0x10000;
28StackSize = DEFINED(StackSize) ? StackSize : 0x1000;
[11532ca]29
30/*
[996a9cb4]31 * Declare low-order three octets of Ethernet address
[11532ca]32 */
[996a9cb4]33ETHERNET_ADDRESS = DEFINED(ETHERNET_ADDRESS) ? ETHERNET_ADDRESS : 0xDEAD12;
[457b6ae]34
35/*
36 * Load objects
37 */
38SECTIONS {
[996a9cb4]39        /*
40         * Boot PROM
41         */
42        rom : {
43                _RomBase = .;
44                __RomBase = .;
45        } >rom
46
47        /*
48         * Dynamic RAM
49         */
50        ram : {
51                _RamBase = .;
52                __RamBase = .;
53        } >ram
54
55        /*
56         * Text, data and bss segments
57         */
[457b6ae]58        .text : {
[996a9cb4]59                CREATE_OBJECT_SYMBOLS
60                *(.text)
61                . = ALIGN (16);
62                etext = .;
63                _etext = .;
[457b6ae]64        } >ram
65        .data : {
[996a9cb4]66                copy_start = .;
67                *(.data)
68                . = ALIGN (16);
69                _edata = .;
70                copy_end = .;
[457b6ae]71        } >ram
72        .bss : {
[996a9cb4]73                M68Kvec = .;
74                _M68Kvec = .;
75                . += (256 * 4);
76                clear_start = .;
77                *(.bss)
78                *(COMMON)
79                . = ALIGN (16);
80                _end = .;
[11532ca]81
[996a9cb4]82                _HeapStart = .;
83                __HeapStart = .;
84                /* . += HeapSize;  */ /* XXX -- Old gld can't handle this */
85                /* . += StackSize; */ /* XXX -- Old gld can't handle this */
86                . += 0x10000; /* HeapSize for old gld */
87                . += 0x1000;  /* StackSize for old gld */
88                . = ALIGN (16);
89                stack_init = .;
90                clear_end = .;
[457b6ae]91
[996a9cb4]92                _WorkspaceBase = .;
93                __WorkspaceBase = .;
94        } >ram
[457b6ae]95
[996a9cb4]96        /*
97         * On-chip memory/peripherals
98         */
99        dpram : {
100                m360 = .;
101                _m360 = .;
102                . += (8 * 1024);
[457b6ae]103
[996a9cb4]104        } >dpram
[457b6ae]105}
Note: See TracBrowser for help on using the repository browser.