On Tue, Jun 21, 2011 at 01:57:08PM +0200, Rafael J. Wysocki wrote: > On Tuesday, June 21, 2011, Rafael J. Wysocki wrote: > > On Monday, June 20, 2011, Paul Mundt wrote: > > > Given that these functions can return errors, it's probably more prudent > > > to implement some timeout logic on top of the busy loop. Hardware does > > > get stuck, after all. > > > > Yes, it does, but we don't really know what timeout value to use in there. > > > > In fact, failures of pd_power_down() don't really matter (at worst the power > > domain won't be powered off really) and pd_power_up() should only return error > > code if the error is known to be unrecoverable. > > > > So, what about this: repeat certain number of times (I verified that it took > > several iterations of the loop until the new value settled on my hardware) > > and then return from pd_power_down() or go to sleep for a short time and repeat > > in pd_power_up()? > > Having discussed that with Magnus I changed pd_power_down() to use a timeout. > Specifically, it will bail out if the state doesn't change after approximately > 1 ms. > Looks good to me, thanks for fixing it up. Acked-by: Paul Mundt <lethal@xxxxxxxxxxxx> _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm