summaryrefslogtreecommitdiff
path: root/firmware/target/arm/as3525/system-as3525.c
diff options
context:
space:
mode:
authorMichael Sevakis <jethead71@rockbox.org>2011-12-12 20:12:22 +0000
committerMichael Sevakis <jethead71@rockbox.org>2011-12-12 20:12:22 +0000
commit184459fa54f1d3f1a6c13c6e729fa116689f225c (patch)
tree968dcda6fc2ad82e945f2ee7f750eb6873c0cc63 /firmware/target/arm/as3525/system-as3525.c
parent5c1e9365928592a3b54b07e008ccfb5a0656932e (diff)
downloadrockbox-184459fa54f1d3f1a6c13c6e729fa116689f225c.tar.gz
rockbox-184459fa54f1d3f1a6c13c6e729fa116689f225c.zip
Deal with a complication when transferring recording method from PP5024: since the FIFO POP is always read until empty, keep track of sample parity instead of always saving the first one in the FIFO upon entering the ISR or else the first of a duplicate that is also the last in the FIFO would get duplicated. Also, give top priority to audio interrupts in all cases.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31218 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/target/arm/as3525/system-as3525.c')
-rw-r--r--firmware/target/arm/as3525/system-as3525.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/firmware/target/arm/as3525/system-as3525.c b/firmware/target/arm/as3525/system-as3525.c
index dcea7a2a2e..7e2e480eda 100644
--- a/firmware/target/arm/as3525/system-as3525.c
+++ b/firmware/target/arm/as3525/system-as3525.c
@@ -107,15 +107,15 @@ static void UIRQ(void)
107static const struct { int source; void (*isr) (void); } vec_int_srcs[] = 107static const struct { int source; void (*isr) (void); } vec_int_srcs[] =
108{ 108{
109 /* Highest priority at the top of the list */ 109 /* Highest priority at the top of the list */
110 { INT_SRC_DMAC, INT_DMAC }, 110#ifdef HAVE_RECORDING
111 { INT_SRC_I2SIN, INT_I2SIN }, /* For recording */
112#endif
113 { INT_SRC_DMAC, INT_DMAC }, /* Playback follows recording */
111 { INT_SRC_NAND, INT_NAND }, 114 { INT_SRC_NAND, INT_NAND },
112#if (defined HAVE_MULTIDRIVE && CONFIG_CPU == AS3525) 115#if (defined HAVE_MULTIDRIVE && CONFIG_CPU == AS3525)
113 { INT_SRC_MCI0, INT_MCI0 }, 116 { INT_SRC_MCI0, INT_MCI0 },
114#endif 117#endif
115 { INT_SRC_USB, INT_USB, }, 118 { INT_SRC_USB, INT_USB, },
116#ifdef HAVE_RECORDING
117 { INT_SRC_I2SIN, INT_I2SIN, },
118#endif
119 { INT_SRC_TIMER1, INT_TIMER1 }, 119 { INT_SRC_TIMER1, INT_TIMER1 },
120 { INT_SRC_TIMER2, INT_TIMER2 }, 120 { INT_SRC_TIMER2, INT_TIMER2 },
121 { INT_SRC_I2C_AUDIO, INT_I2C_AUDIO }, 121 { INT_SRC_I2C_AUDIO, INT_I2C_AUDIO },