diff options
author | Karl Kurbjun <kkurbjun@gmail.com> | 2009-04-01 03:21:18 +0000 |
---|---|---|
committer | Karl Kurbjun <kkurbjun@gmail.com> | 2009-04-01 03:21:18 +0000 |
commit | 4fa96fbc914ae8fd69aedafd73f4f1798679d29f (patch) | |
tree | ea0deb3e1573e1dfd540441002e58b403670d178 /firmware/target/arm/tms320dm320/boot.lds | |
parent | a606121dd860245328198ac773d454980191abc3 (diff) | |
download | rockbox-4fa96fbc914ae8fd69aedafd73f4f1798679d29f.tar.gz rockbox-4fa96fbc914ae8fd69aedafd73f4f1798679d29f.zip |
M:Robe 500i: More LCD initialization, and beginnings of support for QVGA as well as VGA on the LCD. MPEGPlayer now works with reasonable performance on smaller videos, but YUV blitting persists after MPEGPlayer is left, some cleanup/changes to the initialization code. This should be functionally equivalent for the ZVM, but the #ifdef's may need to be added back for app.lds. Get the bootloader building again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20598 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/tms320dm320/boot.lds')
-rw-r--r-- | firmware/target/arm/tms320dm320/boot.lds | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/firmware/target/arm/tms320dm320/boot.lds b/firmware/target/arm/tms320dm320/boot.lds index 97274a2c04..e391526dc5 100644 --- a/firmware/target/arm/tms320dm320/boot.lds +++ b/firmware/target/arm/tms320dm320/boot.lds | |||
@@ -1,11 +1,17 @@ | |||
1 | #include "config.h" | 1 | #include "config.h" |
2 | 2 | ||
3 | ENTRY(start) | 3 | ENTRY(start) |
4 | |||
4 | OUTPUT_FORMAT(elf32-littlearm) | 5 | OUTPUT_FORMAT(elf32-littlearm) |
5 | OUTPUT_ARCH(arm) | 6 | OUTPUT_ARCH(arm) |
6 | STARTUP(target/arm/tms320dm320/crt0.o) | 7 | STARTUP(target/arm/tms320dm320/crt0.o) |
7 | 8 | ||
8 | #define DRAMSIZE (MEMORYSIZE * 0x100000) | 9 | #define LCD_BUFFER_SIZE (LCD_WIDTH*LCD_HEIGHT*2) |
10 | |||
11 | /* must be 16Kb (0x4000) aligned */ | ||
12 | #define TTB_SIZE (0x4000) | ||
13 | |||
14 | #define DRAMSIZE (MEMORYSIZE * 0x100000) - TTB_SIZE - LCD_BUFFER_SIZE | ||
9 | 15 | ||
10 | #define DRAMORIG 0x01900000 /* actually it's 0x00900000 */ | 16 | #define DRAMORIG 0x01900000 /* actually it's 0x00900000 */ |
11 | #define IRAMORIG 0x00000000 | 17 | #define IRAMORIG 0x00000000 |
@@ -13,6 +19,12 @@ STARTUP(target/arm/tms320dm320/crt0.o) | |||
13 | #define FLASHORIG 0x00100000 | 19 | #define FLASHORIG 0x00100000 |
14 | #define FLASHSIZE 8M | 20 | #define FLASHSIZE 8M |
15 | 21 | ||
22 | /* Now we have the LCD buffer */ | ||
23 | #define LCDBEGIN (DRAMSIZE+0x00900000) | ||
24 | |||
25 | /* Finally the TTB table */ | ||
26 | #define TTBBEGIN (LCDBEGIN + LCD_BUFFER_SIZE) | ||
27 | |||
16 | MEMORY | 28 | MEMORY |
17 | { | 29 | { |
18 | DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE | 30 | DRAM : ORIGIN = DRAMORIG, LENGTH = DRAMSIZE |
@@ -28,6 +40,7 @@ SECTIONS | |||
28 | loadaddress = .; | 40 | loadaddress = .; |
29 | _loadaddress = .; | 41 | _loadaddress = .; |
30 | *(.init.text) | 42 | *(.init.text) |
43 | *(.icode) | ||
31 | *(.text*) | 44 | *(.text*) |
32 | *(.glue_7) | 45 | *(.glue_7) |
33 | *(.glue_7t) | 46 | *(.glue_7t) |
@@ -40,6 +53,7 @@ SECTIONS | |||
40 | *(.rodata*) | 53 | *(.rodata*) |
41 | *(.rodata.str1.1) | 54 | *(.rodata.str1.1) |
42 | *(.rodata.str1.4) | 55 | *(.rodata.str1.4) |
56 | *(.irodata) | ||
43 | . = ALIGN(0x4); | 57 | . = ALIGN(0x4); |
44 | 58 | ||
45 | /* Pseudo-allocate the copies of the data sections */ | 59 | /* Pseudo-allocate the copies of the data sections */ |
@@ -47,8 +61,6 @@ SECTIONS | |||
47 | } > DRAM | 61 | } > DRAM |
48 | 62 | ||
49 | .data : { | 63 | .data : { |
50 | *(.icode) | ||
51 | *(.irodata) | ||
52 | *(.idata) | 64 | *(.idata) |
53 | *(.data*) | 65 | *(.data*) |
54 | . = ALIGN(0x4); | 66 | . = ALIGN(0x4); |
@@ -84,4 +96,14 @@ SECTIONS | |||
84 | _vectorsend = .; | 96 | _vectorsend = .; |
85 | } AT > DRAM | 97 | } AT > DRAM |
86 | _vectorscopy = LOADADDR(.vectors); | 98 | _vectorscopy = LOADADDR(.vectors); |
99 | |||
100 | .lcdbuffer LCDBEGIN (NOLOAD) : | ||
101 | { | ||
102 | _lcdbuf = .; | ||
103 | } | ||
104 | |||
105 | .ttbtable TTBBEGIN (NOLOAD) : | ||
106 | { | ||
107 | _ttbstart = .; | ||
108 | } | ||
87 | } | 109 | } |