path: root/apps/voice_thread.c
diff options
authorMichael Sevakis <>2008-04-06 04:34:57 +0000
committerMichael Sevakis <>2008-04-06 04:34:57 +0000
commit05099149f193cac0c81b0129c17feb78b1a9681a (patch)
tree3dd5494dd494bcb4490ddcedef99e9f3a895cd3f /apps/voice_thread.c
parentbe698f086de4641a45dffd9289671588c2391a3c (diff)
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:// a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/voice_thread.c')
1 files changed, 5 insertions, 5 deletions
diff --git a/apps/voice_thread.c b/apps/voice_thread.c
index 0da441191f..c59089d672 100644
--- a/apps/voice_thread.c
+++ b/apps/voice_thread.c
@@ -57,10 +57,10 @@ static long voice_stack[0x7c0/sizeof(long)] IBSS_ATTR_VOICE_STACK;
static const char voice_thread_name[] = "voice";
/* Voice thread synchronization objects */
-static struct event_queue voice_queue NOCACHEBSS_ATTR;
-static struct mutex voice_mutex NOCACHEBSS_ATTR;
-static struct event voice_event NOCACHEBSS_ATTR;
-static struct queue_sender_list voice_queue_sender_list NOCACHEBSS_ATTR;
+static struct event_queue voice_queue SHAREDBSS_ATTR;
+static struct mutex voice_mutex SHAREDBSS_ATTR;
+static struct event voice_event SHAREDBSS_ATTR;
+static struct queue_sender_list voice_queue_sender_list SHAREDBSS_ATTR;
/* Buffer for decoded samples */
static spx_int16_t voice_output_buf[VOICE_FRAME_SIZE] CACHEALIGN_ATTR;
@@ -115,7 +115,7 @@ void mp3_play_data(const unsigned char* start, int size,
/* Shared struct to get data to the thread - once it replies, it has
* safely cached it in its own private data */
- static struct voice_info voice_clip NOCACHEBSS_ATTR;
+ static struct voice_info voice_clip SHAREDBSS_ATTR;
if (get_more != NULL && start != NULL && (ssize_t)size > 0)