9 Jul
2015
9 Jul
'15
12:48 p.m.
On Thu, Jul 09, 2015 at 09:57:41AM +0530, Vinod Koul wrote:
On Wed, Jul 08, 2015 at 07:36:21PM +0100, Mark Brown wrote:
- for (time = 0; time < timeout; time++) {
if ((sst_dsp_shim_read_unlocked(ctx, offset) & mask) == expected_value)
break;
mdelay(1);
- }
mdelay() not msleep()? If we're waiting for multiple miliseconds that could be lots of busy waiting.
Usually this should get reflected in 1st iteration as the register update would get updated farrily quickly. msleep will add up lots of latency to this.
A common approach for that is to do a busy wait for say the first milisecond (perhaps polling more often too) and then fall back to something sleepy if things are slow.