summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoris Gjenero <boris.gjenero@gmail.com>2012-02-04 22:27:42 -0500
committerBoris Gjenero <boris.gjenero@gmail.com>2012-02-04 22:27:42 -0500
commit0a8235d0525b531ba932cdbb27c9092ec58a9323 (patch)
treed810b11d97cbe263deba10f4b10704132c720252
parent67dd4d6995c2bef9910e031f23aae88e07354587 (diff)
downloadrockbox-0a8235d0525b531ba932cdbb27c9092ec58a9323.tar.gz
rockbox-0a8235d0525b531ba932cdbb27c9092ec58a9323.zip
Use commit_dcache() instead of commit_discard_idcache() where possible
- PCM playback DMA doesn't need the discard. Only recording DMA would need it. - When creating threads for another core, the core creating the thread only needs to commit. The discard on the other core is handled elsewhere. Change-Id: I864a0777e22f221a66218efd2c02ff3ad3889736
-rw-r--r--firmware/target/arm/pp/pcm-pp.c4
-rw-r--r--firmware/thread.c2
2 files changed, 3 insertions, 3 deletions
diff --git a/firmware/target/arm/pp/pcm-pp.c b/firmware/target/arm/pp/pcm-pp.c
index 3854206ae8..1b38994f7b 100644
--- a/firmware/target/arm/pp/pcm-pp.c
+++ b/firmware/target/arm/pp/pcm-pp.c
@@ -158,7 +158,7 @@ void ICODE_ATTR __attribute__((interrupt("FIQ"))) fiq_playback(void)
if (dma_play_data.addr < UNCACHED_BASE_ADDR) {
/* Flush any pending cache writes */
dma_play_data.addr = UNCACHED_ADDR(dma_play_data.addr);
- commit_discard_idcache();
+ commit_dcache();
}
}
}
@@ -444,7 +444,7 @@ void pcm_play_dma_start(const void *addr, size_t size)
if ((unsigned long)addr < UNCACHED_BASE_ADDR) {
/* Flush any pending cache writes */
addr = UNCACHED_ADDR(addr);
- commit_discard_idcache();
+ commit_dcache();
}
dma_play_data.addr = (unsigned long)addr;
diff --git a/firmware/thread.c b/firmware/thread.c
index 4c15fcc294..ce9252ccc6 100644
--- a/firmware/thread.c
+++ b/firmware/thread.c
@@ -1609,7 +1609,7 @@ unsigned int create_thread(void (*function)(void),
/* Writeback stack munging or anything else before starting */
if (core != CURRENT_CORE)
{
- commit_discard_idcache();
+ commit_dcache();
}
#endif