mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-12-09 05:05:20 -05:00
Reclaim .iram areas in DRAM by overlapping their load addresses with the uninitialized data sections. I did what I could test out-- not any flash image linker scripts or other target processors. Move any .iram copies in crt0.S's to be the first operation even if not _strictly_ necessary to be emphatic (aka. 'beware').
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20061 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
07ae1e4fb9
commit
ec67912b63
11 changed files with 76 additions and 65 deletions
|
|
@ -94,6 +94,7 @@ SECTIONS
|
|||
} > IRAM AT> DRAM
|
||||
|
||||
_iramcopy = LOADADDR(.iram);
|
||||
_noloaddram = LOADADDR(.iram);
|
||||
|
||||
.ibss (NOLOAD) :
|
||||
{
|
||||
|
|
@ -103,7 +104,7 @@ SECTIONS
|
|||
_iend = .;
|
||||
} > IRAM
|
||||
|
||||
.stack :
|
||||
.stack (NOLOAD) :
|
||||
{
|
||||
*(.stack)
|
||||
stackbegin = .;
|
||||
|
|
@ -111,7 +112,7 @@ SECTIONS
|
|||
stackend = .;
|
||||
} > IRAM
|
||||
|
||||
.bss ADDR(.data) + SIZEOF(.data) + SIZEOF(.iram):
|
||||
.bss _noloaddram (NOLOAD):
|
||||
{
|
||||
_edata = .;
|
||||
*(.bss*)
|
||||
|
|
@ -120,25 +121,26 @@ SECTIONS
|
|||
_end = .;
|
||||
} > DRAM
|
||||
|
||||
.audiobuf ALIGN(4) :
|
||||
.audiobuf (NOLOAD) :
|
||||
{
|
||||
. = ALIGN(4);
|
||||
_audiobuffer = .;
|
||||
audiobuffer = .;
|
||||
} > DRAM
|
||||
|
||||
.audiobufend ENDAUDIOADDR:
|
||||
.audiobufend ENDAUDIOADDR (NOLOAD) :
|
||||
{
|
||||
audiobufend = .;
|
||||
_audiobufend = .;
|
||||
} > DRAM
|
||||
|
||||
.codec ENDAUDIOADDR:
|
||||
.codec ENDAUDIOADDR (NOLOAD) :
|
||||
{
|
||||
codecbuf = .;
|
||||
_codecbuf = .;
|
||||
}
|
||||
|
||||
.plugin ENDADDR:
|
||||
.plugin ENDADDR (NOLOAD) :
|
||||
{
|
||||
_pluginbuf = .;
|
||||
pluginbuf = .;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue