diff options
author | Rob Purchase <shotofadds@rockbox.org> | 2008-03-10 21:39:04 +0000 |
---|---|---|
committer | Rob Purchase <shotofadds@rockbox.org> | 2008-03-10 21:39:04 +0000 |
commit | 9603e4e92ff9a4ae656cc4a857bdb655cf126375 (patch) | |
tree | 4c4836092f7ba7001bb8f27ba39d094b26a614fe /firmware | |
parent | 292f139f4c897b4332592f5fe93d2950fb6f24e7 (diff) | |
download | rockbox-9603e4e92ff9a4ae656cc4a857bdb655cf126375.tar.gz rockbox-9603e4e92ff9a4ae656cc4a857bdb655cf126375.zip |
D2: Fix IRAM usage, but disable it for now as Tremor does not fit ('make zip' works now). Fix duplicate CONFIG_LCD value.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16623 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/app.lds | 15 | ||||
-rw-r--r-- | firmware/export/config.h | 4 | ||||
-rw-r--r-- | firmware/target/arm/tcc780x/crt0.S | 10 |
3 files changed, 24 insertions, 5 deletions
diff --git a/firmware/app.lds b/firmware/app.lds index d2a9582a3d..5850a35fe1 100644 --- a/firmware/app.lds +++ b/firmware/app.lds | |||
@@ -261,7 +261,6 @@ SECTIONS | |||
261 | .itcm : | 261 | .itcm : |
262 | { | 262 | { |
263 | _itcmstart = .; | 263 | _itcmstart = .; |
264 | *(.icode) | ||
265 | _itcmend = .; | 264 | _itcmend = .; |
266 | } > ITCM AT> DRAM | 265 | } > ITCM AT> DRAM |
267 | 266 | ||
@@ -270,13 +269,23 @@ SECTIONS | |||
270 | .dtcm : | 269 | .dtcm : |
271 | { | 270 | { |
272 | _dtcmstart = .; | 271 | _dtcmstart = .; |
273 | *(.irodata) | ||
274 | *(.idata) | ||
275 | _dtcmend = .; | 272 | _dtcmend = .; |
276 | } > DTCM AT> DRAM | 273 | } > DTCM AT> DRAM |
277 | 274 | ||
278 | _dtcmcopy = LOADADDR(.dtcm); | 275 | _dtcmcopy = LOADADDR(.dtcm); |
279 | 276 | ||
277 | .iram : | ||
278 | { | ||
279 | _iramstart = .; | ||
280 | *(.irodata) | ||
281 | *(.idata) | ||
282 | *(.icode) | ||
283 | . = ALIGN(0x4); | ||
284 | _iramend = .; | ||
285 | } > SRAM AT> DRAM | ||
286 | |||
287 | _iramcopy = LOADADDR(.iram); | ||
288 | |||
280 | .ibss (NOLOAD) : | 289 | .ibss (NOLOAD) : |
281 | { | 290 | { |
282 | _iedata = .; | 291 | _iedata = .; |
diff --git a/firmware/export/config.h b/firmware/export/config.h index 12a6b1cacd..c2033dfe23 100644 --- a/firmware/export/config.h +++ b/firmware/export/config.h | |||
@@ -114,9 +114,9 @@ | |||
114 | #define LCD_MROBE100 19 /* as used by Olympus M:Robe 100 */ | 114 | #define LCD_MROBE100 19 /* as used by Olympus M:Robe 100 */ |
115 | #define LCD_LOGIKDAX 20 /* as used by Logik DAX - SSD1815 */ | 115 | #define LCD_LOGIKDAX 20 /* as used by Logik DAX - SSD1815 */ |
116 | #define LCD_IAUDIO67 21 /* as used by iAudio 6/7 - unknown */ | 116 | #define LCD_IAUDIO67 21 /* as used by iAudio 6/7 - unknown */ |
117 | #define LCD_COWOND2 21 /* as used by Cowon D2 - LTV250QV, TCC7801 driver */ | ||
118 | #define LCD_CREATIVEZVM 22 /* as used by Creative Zen Vision:M */ | 117 | #define LCD_CREATIVEZVM 22 /* as used by Creative Zen Vision:M */ |
119 | #define LCD_TL0350A 23 /* as used by the iAudio M3 remote, treated as main LCD */ | 118 | #define LCD_TL0350A 23 /* as used by the iAudio M3 remote, treated as main LCD */ |
119 | #define LCD_COWOND2 24 /* as used by Cowon D2 - LTV250QV, TCC7801 driver */ | ||
120 | 120 | ||
121 | /* LCD_PIXELFORMAT */ | 121 | /* LCD_PIXELFORMAT */ |
122 | #define HORIZONTAL_PACKING 1 | 122 | #define HORIZONTAL_PACKING 1 |
@@ -402,7 +402,7 @@ | |||
402 | defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \ | 402 | defined(CPU_COLDFIRE) || /* Coldfire: core, plugins, codecs */ \ |
403 | defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \ | 403 | defined(CPU_PP) || /* PortalPlayer: core, plugins, codecs */ \ |
404 | defined(CPU_TCC77X) || /* Telechips: core, plugins, codecs */ \ | 404 | defined(CPU_TCC77X) || /* Telechips: core, plugins, codecs */ \ |
405 | defined(CPU_TCC780X) || /* Telechips: core, plugins, codecs */ \ | 405 | /*defined(CPU_TCC780X) || /. Telechips: core, plugins, codecs */ \ |
406 | (CONFIG_CPU == PNX0101)) | 406 | (CONFIG_CPU == PNX0101)) |
407 | #define ICODE_ATTR __attribute__ ((section(".icode"))) | 407 | #define ICODE_ATTR __attribute__ ((section(".icode"))) |
408 | #define ICONST_ATTR __attribute__ ((section(".irodata"))) | 408 | #define ICONST_ATTR __attribute__ ((section(".irodata"))) |
diff --git a/firmware/target/arm/tcc780x/crt0.S b/firmware/target/arm/tcc780x/crt0.S index 6e092bcd82..af37b40814 100644 --- a/firmware/target/arm/tcc780x/crt0.S +++ b/firmware/target/arm/tcc780x/crt0.S | |||
@@ -133,6 +133,16 @@ copied_start: | |||
133 | ldrhi r5, [r4], #4 | 133 | ldrhi r5, [r4], #4 |
134 | strhi r5, [r2], #4 | 134 | strhi r5, [r2], #4 |
135 | bhi 1b | 135 | bhi 1b |
136 | |||
137 | /* Copy the IRAM (SRAM) */ | ||
138 | ldr r2, =_iramcopy | ||
139 | ldr r3, =_iramstart | ||
140 | ldr r4, =_iramend | ||
141 | 1: | ||
142 | cmp r4, r3 | ||
143 | ldrhi r5, [r2], #4 | ||
144 | strhi r5, [r3], #4 | ||
145 | bhi 1b | ||
136 | 146 | ||
137 | /* Zero out IBSS */ | 147 | /* Zero out IBSS */ |
138 | ldr r2, =_iedata | 148 | ldr r2, =_iedata |