summaryrefslogtreecommitdiff
path: root/apps/plugins
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2009-02-11 12:55:51 +0000
committerMichael Sevakis <jethead71@rockbox.org>2009-02-11 12:55:51 +0000
commit21f0c9a2829415f52b64cbdf965b01525e78f17a (patch)
treeb5cb8021097722969f75784011c9f64f991c0c3d /apps/plugins
parent4cd7597172d916db9fc99bde4c03b669366f852a (diff)
downloadrockbox-21f0c9a2829415f52b64cbdf965b01525e78f17a.tar.gz
rockbox-21f0c9a2829415f52b64cbdf965b01525e78f17a.zip
Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins')
-rw-r--r--apps/plugins/mpegplayer/alloc.c2
-rw-r--r--apps/plugins/mpegplayer/mpegplayer.c2
-rw-r--r--apps/plugins/mpegplayer/video_thread.c8
-rw-r--r--apps/plugins/rockboy/dynarec.c2
-rw-r--r--apps/plugins/test_codec.c6
5 files changed, 9 insertions, 11 deletions
diff --git a/apps/plugins/mpegplayer/alloc.c b/apps/plugins/mpegplayer/alloc.c
index a69b6accf8..da92f8754a 100644
--- a/apps/plugins/mpegplayer/alloc.c
+++ b/apps/plugins/mpegplayer/alloc.c
@@ -149,7 +149,7 @@ bool mpeg_alloc_init(unsigned char *buf, size_t mallocsize)
149 return false; 149 return false;
150 } 150 }
151 151
152 IF_COP(invalidate_icache()); 152 IF_COP(rb->cpucache_invalidate());
153 return true; 153 return true;
154} 154}
155 155
diff --git a/apps/plugins/mpegplayer/mpegplayer.c b/apps/plugins/mpegplayer/mpegplayer.c
index 6e8f9350f8..eaf8f246c6 100644
--- a/apps/plugins/mpegplayer/mpegplayer.c
+++ b/apps/plugins/mpegplayer/mpegplayer.c
@@ -296,8 +296,6 @@ CONFIG_KEYPAD == SANSA_M200_PAD
296#endif 296#endif
297#endif 297#endif
298 298
299CACHE_FUNCTION_WRAPPERS;
300
301/* One thing we can do here for targets with remotes is having a display 299/* One thing we can do here for targets with remotes is having a display
302 * always on the remote instead of always forcing a popup on the main display */ 300 * always on the remote instead of always forcing a popup on the main display */
303 301
diff --git a/apps/plugins/mpegplayer/video_thread.c b/apps/plugins/mpegplayer/video_thread.c
index 8b84686a3b..6d60e64131 100644
--- a/apps/plugins/mpegplayer/video_thread.c
+++ b/apps/plugins/mpegplayer/video_thread.c
@@ -524,7 +524,7 @@ static void video_thread_msg(struct video_thread_data *td)
524 } 524 }
525 else 525 else
526 { 526 {
527 IF_COP(invalidate_icache()); 527 IF_COP(rb->cpucache_invalidate());
528 vo_lock(); 528 vo_lock();
529 rb->lcd_update(); 529 rb->lcd_update();
530 vo_unlock(); 530 vo_unlock();
@@ -996,7 +996,7 @@ bool video_thread_init(void)
996{ 996{
997 intptr_t rep; 997 intptr_t rep;
998 998
999 IF_COP(flush_icache()); 999 IF_COP(rb->cpucache_flush());
1000 1000
1001 video_str.hdr.q = &video_str_queue; 1001 video_str.hdr.q = &video_str_queue;
1002 rb->queue_init(video_str.hdr.q, false); 1002 rb->queue_init(video_str.hdr.q, false);
@@ -1014,7 +1014,7 @@ bool video_thread_init(void)
1014 1014
1015 /* Wait for thread to initialize */ 1015 /* Wait for thread to initialize */
1016 rep = str_send_msg(&video_str, STREAM_NULL, 0); 1016 rep = str_send_msg(&video_str, STREAM_NULL, 0);
1017 IF_COP(invalidate_icache()); 1017 IF_COP(rb->cpucache_invalidate());
1018 1018
1019 return rep == 0; /* Normally STREAM_NULL should be ignored */ 1019 return rep == 0; /* Normally STREAM_NULL should be ignored */
1020} 1020}
@@ -1026,7 +1026,7 @@ void video_thread_exit(void)
1026 { 1026 {
1027 str_post_msg(&video_str, STREAM_QUIT, 0); 1027 str_post_msg(&video_str, STREAM_QUIT, 0);
1028 rb->thread_wait(video_str.thread); 1028 rb->thread_wait(video_str.thread);
1029 IF_COP(invalidate_icache()); 1029 IF_COP(rb->cpucache_invalidate());
1030 video_str.thread = 0; 1030 video_str.thread = 0;
1031 } 1031 }
1032} 1032}
diff --git a/apps/plugins/rockboy/dynarec.c b/apps/plugins/rockboy/dynarec.c
index 7c466de986..afe6caaf1a 100644
--- a/apps/plugins/rockboy/dynarec.c
+++ b/apps/plugins/rockboy/dynarec.c
@@ -1905,7 +1905,7 @@ void dynamic_recompile (struct dynarec_block *newblock)
1905 PC=oldpc; 1905 PC=oldpc;
1906 setmallocpos(dynapointer); 1906 setmallocpos(dynapointer);
1907 newblock->length=dynapointer-newblock->block; 1907 newblock->length=dynapointer-newblock->block;
1908 invalidate_icache(); 1908 IF_COP(rb->cpucache_invalidate());
1909 snprintf(meow,499,"/dyna_0x%x_code.rb",PC); 1909 snprintf(meow,499,"/dyna_0x%x_code.rb",PC);
1910 fd=open(meow,O_WRONLY|O_CREAT|O_TRUNC); 1910 fd=open(meow,O_WRONLY|O_CREAT|O_TRUNC);
1911 if(fd>=0) 1911 if(fd>=0)
diff --git a/apps/plugins/test_codec.c b/apps/plugins/test_codec.c
index ec5c8e9800..3260360882 100644
--- a/apps/plugins/test_codec.c
+++ b/apps/plugins/test_codec.c
@@ -480,9 +480,9 @@ static void init_ci(void)
480 ci.profile_func_exit = rb->profile_func_exit; 480 ci.profile_func_exit = rb->profile_func_exit;
481#endif 481#endif
482 482
483#ifdef CACHE_FUNCTIONS_AS_CALL 483#if NUM_CORES > 1
484 ci.invalidate_icache = invalidate_icache; 484 ci.cpucache_invalidate = rb->cpucache_invalidate;
485 ci.flush_icache = flush_icache; 485 ci.cpucache_flush = rb->cpucache_flush;
486#endif 486#endif
487 487
488#if NUM_CORES > 1 488#if NUM_CORES > 1