summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Arnold <amiconn@rockbox.org>2010-01-03 13:34:29 +0000
committerJens Arnold <amiconn@rockbox.org>2010-01-03 13:34:29 +0000
commit5c1432c9cf0c5b83637fa015b80f0f102ad54916 (patch)
treeaf2e434c4cf8ea54dae6eda0b554f177ac4f17b0
parent1bc9228ac74e4df52f677c98c0afda2c3ab58378 (diff)
downloadrockbox-5c1432c9cf0c5b83637fa015b80f0f102ad54916.tar.gz
rockbox-5c1432c9cf0c5b83637fa015b80f0f102ad54916.zip
Coldfire targets: Restore EMAC status after using the EMAC for bitmap resizing. Fixes FS #10412. The tone and EQ filter calculation relies on the proper EMAC mode. EQ filters were not affected because they're set from a different thread, hence FS #10412 only affected the iAudios (coldfire + albumart + software tone controls).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24164 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/recorder/resize.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/apps/recorder/resize.c b/apps/recorder/resize.c
index 49b8980ceb..0f227f8b09 100644
--- a/apps/recorder/resize.c
+++ b/apps/recorder/resize.c
@@ -921,6 +921,7 @@ int resize_on_load(struct bitmap *bm, bool dither, struct dim *src,
921 } 921 }
922#endif 922#endif
923#ifdef CPU_COLDFIRE 923#ifdef CPU_COLDFIRE
924 unsigned old_macsr = coldfire_get_macsr();
924 coldfire_set_macsr(EMAC_UNSIGNED); 925 coldfire_set_macsr(EMAC_UNSIGNED);
925#endif 926#endif
926#ifdef HAVE_UPSCALER 927#ifdef HAVE_UPSCALER
@@ -951,6 +952,11 @@ int resize_on_load(struct bitmap *bm, bool dither, struct dim *src,
951 ret = scale_v_linear(rset, &ctx); 952 ret = scale_v_linear(rset, &ctx);
952 } 953 }
953#endif 954#endif
955#ifdef CPU_COLDFIRE
956 /* Restore emac status; other modules like tone control filter
957 * calculation may rely on it. */
958 coldfire_set_macsr(old_macsr);
959#endif
954#ifdef HAVE_ADJUSTABLE_CPU_FREQ 960#ifdef HAVE_ADJUSTABLE_CPU_FREQ
955 cpu_boost(false); 961 cpu_boost(false);
956#endif 962#endif