On Mon, 16 Apr 2012 22:39:51 +0200, Daniel Vetter <daniel at ffwll.ch> wrote: > On Mon, Apr 16, 2012 at 03:18:33PM +0100, Chris Wilson wrote: > > As we may kick off a delayed workqueue task to switch of the VDD lines, we > > need to complete that task prior to turning off the panel (which itself > > depends upon VDD being off). > > > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk> > > Cc: Keith Packard <keithp at keithp.com> > > I've looked a bit at this and I think we just need a call to > ironlake_panel_vdd_off_sync instead of the WARN. The work will do the > right thing when the vdd is already off, so no problem there. The WARN is valid and did help to document the design of the code. Good point about the cancel_sync taking the mutex again, oops, and indeed all we need here is just the call to sync. As far as I can see, the timer will expire gracefully under normal conditions with the only cancel_sync being during shutdown, so serialisation of the tasklet under mode_config looks robust. -Chris -- Chris Wilson, Intel Open Source Technology Centre