summaryrefslogtreecommitdiff
path: root/apps/codecs/libmad/synth.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/libmad/synth.c')
-rw-r--r--apps/codecs/libmad/synth.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/apps/codecs/libmad/synth.c b/apps/codecs/libmad/synth.c
index bdec4258fb..4315e239e8 100644
--- a/apps/codecs/libmad/synth.c
+++ b/apps/codecs/libmad/synth.c
@@ -42,6 +42,11 @@ void mad_synth_init(struct mad_synth *synth)
42 synth->pcm.samplerate = 0; 42 synth->pcm.samplerate = 0;
43 synth->pcm.channels = 0; 43 synth->pcm.channels = 0;
44 synth->pcm.length = 0; 44 synth->pcm.length = 0;
45 #if defined(CPU_COLDFIRE) && !defined(SIMULATOR)
46 /* init the emac unit here, since this function should always be called
47 before using libmad */
48 coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_SATURATE | EMAC_ROUND);
49 #endif
45} 50}
46 51
47/* 52/*
@@ -582,8 +587,6 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
582 mad_fixed_t const (*Dptr)[32]; 587 mad_fixed_t const (*Dptr)[32];
583 mad_fixed64hi_t hi; 588 mad_fixed64hi_t hi;
584 589
585 asm volatile("move.l #0x20, %macsr"); /* fractional mode */
586
587 for (ch = 0; ch < nch; ++ch) { 590 for (ch = 0; ch < nch; ++ch) {
588 sbsample = &frame->sbsample[ch]; 591 sbsample = &frame->sbsample[ch];
589 filter = &synth->filter[ch]; 592 filter = &synth->filter[ch];