forked from len0rd/rockbox
Enable nocache sections using the linker. PP5022/4 must use SW_CORELOCK now with shared variables in DRAM (it seems swp(b) is at least partially broken on all PP or I'm doing something very wrong here :\). For core-shared data use SHAREDBSS/DATA_ATTR. NOCACHEBSS/DATA_ATTR is available whether or not single core is forced for static peripheral-DMA buffer allocation without use of the UNCACHED_ADDR macro in code and is likely useful on a non-PP target with a data cache (although not actually enabled in config.h and the .lds's in this commit).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16981 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
be698f086d
commit
05099149f1
40 changed files with 323 additions and 126 deletions
|
@ -231,7 +231,7 @@ static struct
|
|||
struct event emu_evt_reply;
|
||||
intptr_t retval;
|
||||
struct sample_queue_chunk wav_chunk[WAV_NUM_CHUNKS];
|
||||
} sample_queue NOCACHEBSS_ATTR;
|
||||
} sample_queue SHAREDBSS_ATTR;
|
||||
|
||||
static inline void samples_release_wrbuf(void)
|
||||
{
|
||||
|
|
|
@ -97,10 +97,10 @@
|
|||
#endif
|
||||
|
||||
#if SPC_DUAL_CORE
|
||||
#undef NOCACHEBSS_ATTR
|
||||
#define NOCACHEBSS_ATTR __attribute__ ((section(".ibss")))
|
||||
#undef NOCACHEDATA_ATTR
|
||||
#define NOCACHEDATA_ATTR __attribute__((section(".idata")))
|
||||
#undef SHAREDBSS_ATTR
|
||||
#define SHAREDBSS_ATTR __attribute__ ((section(".ibss")))
|
||||
#undef SHAREDDATA_ATTR
|
||||
#define SHAREDDATA_ATTR __attribute__((section(".idata")))
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue