Mercurial > nand-ecoscentric
comparison packages/hal/sparclite/sleb/current/include/pkgconf/mlt_sparclite_sleb_rom.ldi @ 46:797268ecc331 ecos-sw-1999-10-19
Merge from eCos master repository on 1999-10-19-18:55:31-BST
| author | jlarmour |
|---|---|
| date | Tue, 19 Oct 1999 19:19:52 +0000 |
| parents | 443894e2e912 |
| children | c38311975d4f |
comparison
equal
deleted
inserted
replaced
| 45:91d213c0da48 | 46:797268ecc331 |
|---|---|
| 24 // ------------------------------------------- | 24 // ------------------------------------------- |
| 25 // | 25 // |
| 26 //####COPYRIGHTEND#### | 26 //####COPYRIGHTEND#### |
| 27 //=========================================================================== | 27 //=========================================================================== |
| 28 | 28 |
| 29 // Leave 512 bytes free at the start of RAM for trampoline code to be | 29 |
| 30 // copied in from the vectors. | 30 // The ram_vectors section is to allow some free space to copy vectors into |
| 31 // There is no nice way of automating the choice of size for this. | 31 // from the ROM. This is required to be variable size to accomodate SVT or |
| 32 // MVT; 80 bytes vs 4kB. Copying is not necessary with MVT, but it is | |
| 33 // optional because it may offer performance gains. Copying is required | |
| 34 // for SVT because the (aligned) start of ROM contains initialization | |
| 35 // instructions. RAM copy is used rather than leave a big gap in the ROM | |
| 36 // to get an aligned address for the trampoline code. For RAM startup, | |
| 37 // ram_vectors will usually be of size zero, unless MVT and copying are | |
| 38 // enabled for memory estimation reasons. | |
| 32 | 39 |
| 33 MEMORY | 40 MEMORY |
| 34 { | 41 { |
| 35 rom : ORIGIN = 0x00000000, LENGTH = 0x020000 | 42 rom : ORIGIN = 0x00000000, LENGTH = 0x020000 |
| 36 ram : ORIGIN = 0x04000200, LENGTH = 0x3ffe00 | 43 ram : ORIGIN = 0x04000000, LENGTH = 0x400000 |
| 37 } | 44 } |
| 38 | 45 |
| 39 SECTIONS | 46 SECTIONS |
| 40 { | 47 { |
| 41 SECTIONS_BEGIN | 48 SECTIONS_BEGIN |
| 44 SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA) | 51 SECTION_fini (rom, ALIGN (0x4), LMA_EQ_VMA) |
| 45 SECTION_rodata (rom, ALIGN (0x8), LMA_EQ_VMA) | 52 SECTION_rodata (rom, ALIGN (0x8), LMA_EQ_VMA) |
| 46 SECTION_rodata1 (rom, ALIGN (0x8), LMA_EQ_VMA) | 53 SECTION_rodata1 (rom, ALIGN (0x8), LMA_EQ_VMA) |
| 47 SECTION_fixup (rom, ALIGN (0x8), LMA_EQ_VMA) | 54 SECTION_fixup (rom, ALIGN (0x8), LMA_EQ_VMA) |
| 48 SECTION_gcc_except_table (rom, ALIGN (0x8), LMA_EQ_VMA) | 55 SECTION_gcc_except_table (rom, ALIGN (0x8), LMA_EQ_VMA) |
| 49 SECTION_data (ram, 0x4000200, FOLLOWING (.gcc_except_table)) | 56 SECTION_ram_vectors(ram, 0x04000000, LMA_EQ_VMA) |
| 57 SECTION_data (ram, ALIGN (0x8), FOLLOWING (.gcc_except_table)) | |
| 50 SECTION_bss (ram, ALIGN (0x8), LMA_EQ_VMA) | 58 SECTION_bss (ram, ALIGN (0x8), LMA_EQ_VMA) |
| 51 SECTIONS_END | 59 SECTIONS_END |
| 52 } | 60 } |
