Re: [alsa-devel] [PATCHv4 7/7] ASoC: TWL6030: Detect power-up sequence completion

2010-03-01 Thread Mark Brown
On Fri, Feb 26, 2010 at 06:22:34PM -0600, Olaya, Margarita wrote:

 Do you mean something like this?
 time_left = wait_for_completion_timeout(priv-ready,
 msecs_to_jiffies(48));
 if(!time_left) {
   twl_i2c_read_u8(TWL4030_MODULE_AUDIO_VOICE, intid,
 TWL6040_REG_INTID);
   if (!(intid  TWL6040_READYINT))
   goto error;
 }
 
   return 0;
 
 error:
   dev_err(codec-dev, timeout waiting for READYINT\n);
   return -ETIMEDOUT;

Yes, or wrapped in a for loop with shorter timeouts on the individual
waits.

 but in this case will it not take unnecessarily 48ms when the
 interruption line is not valid?

You're always going to get some additional delay when polling unless you
busy wait for completion, which obviously has its own problems.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [alsa-devel] [PATCHv4 7/7] ASoC: TWL6030: Detect power-up sequence completion

2010-03-01 Thread Olaya, Margarita
On Monday, March 01, 2010 6:14 AM  Mark Brown wrote: 

 On Fri, Feb 26, 2010 at 06:22:34PM -0600, Olaya, Margarita wrote:
 
 Do you mean something like this?
 time_left = wait_for_completion_timeout(priv-ready,
 msecs_to_jiffies(48));
  if(!time_left) { twl_i2c_read_u8(TWL4030_MODULE_AUDIO_VOICE,
 intid, TWL6040_REG_INTID);
   if (!(intid  TWL6040_READYINT))
  goto error;
 }
 
  return 0;
 
 error:
  dev_err(codec-dev, timeout waiting for READYINT\n);
  return -ETIMEDOUT;
 
 Yes, or wrapped in a for loop with shorter timeouts on the
 individual waits. 
 
 but in this case will it not take unnecessarily 48ms when the
 interruption line is not valid?
 
 You're always going to get some additional delay when polling
 unless you
 busy wait for completion, which obviously has its own problems.

Ok, thanks for the comment I'll re-write the loop for next version of
patches--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [alsa-devel] [PATCHv4 7/7] ASoC: TWL6030: Detect power-up sequence completion

2010-02-26 Thread Mark Brown
On Fri, Feb 26, 2010 at 03:04:22PM -0600, Olaya, Margarita wrote:

 In both cases if READYINIT is not set before the timeout runs out it means
 the codec is not powering on and the driver reports an error.

That's kind of my point - because you're checking for the same status
there shouldn't be any need to special case the situation where there's
no interrupt, I'd expect to be able to use wait_for_timeout_interruptible()
for the delay and have the timeout completion interrupt cause that to be
signalled.  No *terribly* important but it makes it clearer what's going
on.
--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [alsa-devel] [PATCHv4 7/7] ASoC: TWL6030: Detect power-up sequence completion

2010-02-26 Thread Olaya, Margarita
On Friday, February 26, 2010 3:27 PM  Mark Brown wrote: 

 On Fri, Feb 26, 2010 at 03:04:22PM -0600, Olaya, Margarita wrote:
 
 In both cases if READYINIT is not set before the timeout runs out
 it means the codec is not powering on and the driver reports an
 error. 
 
 That's kind of my point - because you're checking for the same
 status there shouldn't be any need to special case the situation
 where there's
 no interrupt, I'd expect to be able to use
 wait_for_timeout_interruptible()
 for the delay and have the timeout completion interrupt cause
 that to be
 signalled.  No *terribly* important but it makes it clearer
 what's going
 on.

Do you mean something like this?
time_left = wait_for_completion_timeout(priv-ready,
msecs_to_jiffies(48));
if(!time_left) {
twl_i2c_read_u8(TWL4030_MODULE_AUDIO_VOICE, intid,
TWL6040_REG_INTID);
  if (!(intid  TWL6040_READYINT))
goto error;
}

return 0;

error:
dev_err(codec-dev, timeout waiting for READYINT\n);
return -ETIMEDOUT;

but in this case will it not take unnecessarily 48ms when the
interruption line is not valid?

Regards,
Margarita

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html