Hi Ulf, On Thu, Mar 1, 2018 at 12:22 PM, Ulf Hansson <ulf.hansson at linaro.org> wrote: > On 1 March 2018 at 11:37, Geert Uytterhoeven <geert at linux-m68k.org> wrote: >> On Thu, Mar 1, 2018 at 11:18 AM, Ulf Hansson <ulf.hansson at linaro.org> wrote: >>> Another problem with the PM clk is, more exactly with >>> pm_clk_suspend|resume(), that those invokes only clk_enable|disable(). >>> pm_clk_suspend|resume() can't call clk_prepare|unprepare(), because we >>> don't know if we running in atomic context when those are executed. >>> Potentially this means leaving the clocks ungated - all the time. >>> >>> I have though about how to fix the above, several times, but I always >>> ends up with thinking that's it more easy, to let the driver deal with >>> the clocks, as then the problem goes away. >> >> There's a similar issue with powering on/off power areas. > > I don't follow. Can you elaborate? I intended to comment on the atomic context (or not). But I think I was wrong, and PM domain drivers do busy loops instead of sleeps. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds