From 630b4fc55537721c68462e71d0910a3734baa852 Mon Sep 17 00:00:00 2001 From: Michael Sevakis Date: Wed, 5 May 2010 07:15:20 +0000 Subject: i.MX31/Gigabeat S: The nested IRQ code was just totally wrong and not actually working anyway (which is why it wasn't crashing). AVIC doesn't seem truthful about priority of current ISR either :\. Sometimes there were channel swaps during really active DVFS due to FIFO underflow from a needed long delay in the ISR (100us, and IIS TX only has 45us reserve) and DMARQ *must* be serviced low-latency. Get it doing as was intended. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25822 a1c6a512-1295-4272-9138-f99709370657 --- firmware/target/arm/imx31/dvfs_dptc-imx31.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'firmware/target/arm/imx31/dvfs_dptc-imx31.c') diff --git a/firmware/target/arm/imx31/dvfs_dptc-imx31.c b/firmware/target/arm/imx31/dvfs_dptc-imx31.c index 5e1a598428..680b015c81 100644 --- a/firmware/target/arm/imx31/dvfs_dptc-imx31.c +++ b/firmware/target/arm/imx31/dvfs_dptc-imx31.c @@ -230,7 +230,7 @@ static void __attribute__((used)) dvfs_int(void) static __attribute__((naked, interrupt("IRQ"))) void CCM_DVFS_HANDLER(void) { /* Audio can glitch with the long udelay if nested IRQ isn't allowed. */ - AVIC_NESTED_NI_CALL_PROLOGUE(); + AVIC_NESTED_NI_CALL_PROLOGUE(INT_PRIO_DVFS); asm volatile ("bl dvfs_int"); AVIC_NESTED_NI_CALL_EPILOGUE(); } -- cgit v1.2.3