diff options
author | Miguel Vadillo <vadillo@ti.com> | 2011-07-01 22:54:02 +0200 |
---|---|---|
committer | Paul Walmsley <paul@pwsan.com> | 2011-07-09 19:13:35 -0600 |
commit | 6481c73c22613660a5b791d2b4d0faf60508d731 (patch) | |
tree | c227cf5635c53c16b47aa8b10f1fe93de06212a1 /arch/arm/mach-omap2/omap_hwmod.c | |
parent | c614ebf6f73de8e6d0481c4b3b962b649166fee9 (diff) | |
download | linux-stable-6481c73c22613660a5b791d2b4d0faf60508d731.tar.gz linux-stable-6481c73c22613660a5b791d2b4d0faf60508d731.tar.bz2 linux-stable-6481c73c22613660a5b791d2b4d0faf60508d731.zip |
OMAP2+: hwmod: Enable module in shutdown to access sysconfig
When calling the shutdown, the module may be already in idle.
Accessing the sysconfig register will then lead to a crash.
In that case, re-enable the module in order to allow the access
to the sysconfig register.
Signed-off-by: Miguel Vadillo <vadillo@ti.com>
Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Diffstat (limited to 'arch/arm/mach-omap2/omap_hwmod.c')
-rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index 384d3c3ec36d..cbc2a8a4ce39 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c @@ -1396,8 +1396,11 @@ static int _shutdown(struct omap_hwmod *oh) } } - if (oh->class->sysc) + if (oh->class->sysc) { + if (oh->_state == _HWMOD_STATE_IDLE) + _enable(oh); _shutdown_sysc(oh); + } /* * If an IP contains only one HW reset line, then assert it |