Found these two bugs while browsing through the code. The first one is a cut-n-paste bug, instead of disabling the clock when request_irq() fails, it enabled it once more. The second one fixes a debug printout, AT91_SSC_IER is write only, AT91_SSC_IMR is readable (the printed string actually says imr). Frank Mandarino was busy so he asked me to send these to this list. /Patrik Signed-off-by: Patrik Sevallius <patrik.sevallius@xxxxxxxx> Signed-off-by: Frank Mandarino <fmandarino@xxxxxxxxxxxx> ================================================================================ --- sound/soc/at91/at91-ssc.c.orig 2008-05-07 09:33:49.000000000 +0200 +++ sound/soc/at91/at91-ssc.c 2008-05-07 09:34:18.000000000 +0200 @@ -590,7 +590,7 @@ printk(KERN_WARNING "at91-ssc: request_irq failure\n"); DBG("Stopping pid %d clock\n", ssc_p->ssc.pid); - at91_sys_write(AT91_PMC_PCER, 1<<ssc_p->ssc.pid); + at91_sys_write(AT91_PMC_PCDR, 1<<ssc_p->ssc.pid); return ret; } --- sound/soc/at91/at91-pcm.c.orig 2008-05-07 13:23:12.000000000 +0200 +++ sound/soc/at91/at91-pcm.c 2008-05-07 13:26:40.000000000 +0200 @@ -194,7 +194,7 @@ at91_ssc_write(params->ssc_base + ATMEL_PDC_PTCR, params->mask->pdc_enable); DBG("sr=%lx imr=%lx\n", at91_ssc_read(params->ssc_base + AT91_SSC_SR), - at91_ssc_read(params->ssc_base + AT91_SSC_IER)); + at91_ssc_read(params->ssc_base + AT91_SSC_IMR)); break; case SNDRV_PCM_TRIGGER_STOP: _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel