On 25 Feb 2010, at 00:24, "Olaya, Margarita" <magi.olaya@xxxxxx> wrote: > > >> -----Original Message----- >> From: Mark Brown [mailto:broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx] >> Sent: Wednesday, February 24, 2010 7:59 AM >> To: Olaya, Margarita >> Cc: alsa-devel@xxxxxxxxxxxxxxxx; linux-omap@xxxxxxxxxxxxxxx; lrg@xxxxxxxxxxxxxxx >> Subject: Re: [PATCHv4 7/7] ASoC: TWL6030: Detect power-up sequence >> completion >> >> On Tue, Feb 23, 2010 at 06:10:54PM -0600, Olaya, Margarita wrote: >> >>> + if (naudint) { >>> + /* wait for ready interrupt with 48 ms timeout */ >>> + time_left = wait_for_completion_timeout(&priv->ready, >>> + msecs_to_jiffies(48)); >>> + } else { >>> + /* retry 3 times only */ >>> + for (time_left = 3; time_left > 0; time_left--) { >>> + mdelay(16); >>> + twl_i2c_read_u8(TWL4030_MODULE_AUDIO_VOICE, &intid, >>> + TWL6030_REG_INTID); >>> + if (intid & TWL6030_READYINT) >>> + break; >>> + } >>> + } >> >> It strikes me that you could combine these two cases - the >> wait_for_completion_timeout() will function just as well as a delay. >> I'd also expect to see an error reported if the device doesn't >> report as >> ready one way or another. > > It is split to prevent the case of none valid irq line connected, in > such case, wait_for_completion won't work It will - you can specify a timeout so if the interrupt doesn't happen all that happens is that you delay for the specified timeout. > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel