ARM: OMAP2: Add functions to save and restore omap hwmod context en-masse.
authorRuss Dill <Russ.Dill@ti.com>
Fri, 2 Nov 2018 10:28:00 +0000 (15:58 +0530)
committerTero Kristo <t-kristo@ti.com>
Tue, 6 Nov 2018 13:03:46 +0000 (15:03 +0200)
commitb3d1d3a304e126647ae161e1613226bdb41e04f3
treed03f2aef36e790c98b8f2bc09356f0966cd61e89
parent0479986e52aa8957ee2d5e52e31e82adb26fbaf3
ARM: OMAP2: Add functions to save and restore omap hwmod context en-masse.

This is used to support suspend modes like RTC-only and hibernate where
the state of these registers is lost.

After the PRCM loses context in the case of an RTC+DDR cycle omap_hwmod
attempts to return all hwmods to their previous state, however certain
hwmods cannot just be disabled when in their default state, which is why
they need the special handling present in that patch when no driver is
present.

In RTC+DDR mode, even if all drivers are present, the modules are all
returned to their previous state before any driver resume happens so we
will still face the issue described above. This can be prevented by
calling _reidle on all hwmods that need it for any module that is being
disabled to return to it's previous state.

Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Signed-off-by: Russ Dill <Russ.Dill@ti.com>
Signed-off-by: Keerthy <j-keerthy@ti.com>
arch/arm/mach-omap2/omap_hwmod.c
arch/arm/mach-omap2/omap_hwmod.h