annotate target-utils/env/iram.lds @ 629:e7ba9fcb3637

target-utils: move loadagent to 0x838000 in preparation for ramImages that load iram.text directly into IRAM
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Mon, 01 Sep 2014 08:32:22 +0000
parents 40f607bb0a2c
children a7b0b426f9ca
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2 OUTPUT_ARCH(arm)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 ENTRY(_entry)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 SECTIONS
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5 {
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 /* code */
629
e7ba9fcb3637 target-utils: move loadagent to 0x838000 in preparation for ramImages that
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 11
diff changeset
7 . = Base_addr;
2
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8 .text : {
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9 /* regular code */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 *(.text*)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11 /* gcc voodoo */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 *(.glue_7t) *(.glue_7) *(.vfp11_veneer) *(.v4_bx)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
13 . = ALIGN(4);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
14 }
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
15
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
16 /* read-only data */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
17 . = ALIGN(4);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
18 .rodata : {
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
19 *(.rodata*)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
20 }
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
21
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
22 /* initialized data */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
23 . = ALIGN(4);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
24 .data : {
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
25 *(.data)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
26 }
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
27 PROVIDE(edata = .);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
28
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
29 /* uninitialized data */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
30 .bss (NOLOAD) : {
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
31 . = ALIGN(4);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
32 __bss_start = .;
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
33 *(.bss)
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
34 }
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
35 . = ALIGN(4);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
36 __bss_end = .;
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
37 /* end of image */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
38 _end = .;
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
39 PROVIDE(end = .);
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
40 }
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
41
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
42 /* a few absolute definitions */
ddda170fa6f4 loadagent.elf compiled and linked, no printf yet
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
43 rom_vars = 0x800518;
11
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
44 /* stack_bottom = 0x83FFFC; */
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
45
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
46 /*
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
47 * stack_bottom will be set via the --defsym option to ld.
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
48 * Some programs have minimal IRAM requirements, so it would make more
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
49 * sense to set stack_bottom to 0x83FFFC, don't use the upper half of
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
50 * IRAM for anything, and make that program portable to Calypso Lite
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
51 * devices. But for some other programs we might have some use for
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
52 * the larger IRAM of our full Calypso devices, in which case we would
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
53 * want to set stack_bottom to 0x87FFFC instead.
40f607bb0a2c target-utils refactored
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 2
diff changeset
54 */