Hi all, This v3 patch set aims to address the issue with devfreq devices' frequency during suspend/resume. It extends suspend/resume by calls to Devfreq framework. In the devfreq framework there is a small refactoring to avoid code duplication in changging frequency (patch 1) and there are extensions for suspending devices. The suspending device has now chance to set proper state when the system is going for suspend. This phase is the right place to set needed frequences for the next resume process. It has been tested on Odroid u3 with Exynos 4412. The patch set draws on Tobias Jakobi's work posted ~2 years ago, who tried to solve issue with devfreq device's frequency during suspend/resume. During the discussion on LKML some corner cases and comments appeared related to the design. This patch set address them keeping in mind suggestions from Chanwoo Choi. Tobias's paches: https://www.spinics.net/lists/linux-samsung-soc/msg56602.html Changes: v3: - cleaned commit messages according to Chanwoo's comments - moved atomic operation to beggining of function in devfreq_{suspend|resume}_device() - changed dev_warn() to dev_err() with also new error message, when devfreq_{suspend|resume}() failed v2: - refactored patchset and merget patch 1 and 3 as suggested by Chanwoo Choi, - changed devfreq_{susped|resume}_device functions, - added doxygen information for new entres in 'struct devfreq', - devfreq_set_target skipped one argument, now resume_freq is set inside, - minor changes addresing comments from maintainers regarding the style, Regards, Lukasz Luba Lukasz Luba (5): devfreq: refactor set_target frequency function devfreq: add support for suspend/resume of a devfreq device devfreq: add devfreq_suspend/resume() functions drivers: power: suspend: call devfreq suspend/resume arm: dts: exynos4: opp-suspend in DMC and leftbus arch/arm/boot/dts/exynos4210.dtsi | 2 + arch/arm/boot/dts/exynos4412.dtsi | 2 + drivers/base/power/main.c | 3 + drivers/devfreq/devfreq.c | 153 ++++++++++++++++++++++++++++++-------- include/linux/devfreq.h | 13 ++++ 5 files changed, 141 insertions(+), 32 deletions(-) -- 2.7.4