summary refs log tree commit diff
path: root/arch
diff options
context:
space:
mode:
authorRajendra Nayak <rnayak@ti.com>2012-03-13 22:55:24 +0530
committerPaul Walmsley <paul@pwsan.com>2012-04-05 02:59:32 -0600
commitf9a2f9c3fa76eec55928e8e06f3094c8f01df7cb (patch)
treeddb760d292b4a1d4d79bbb2c63b98dca25176c00 /arch
parent2800852a079504f35f88e44faf5c9c96318c0cca (diff)
downloadlinux-f9a2f9c3fa76eec55928e8e06f3094c8f01df7cb.tar.gz
ARM: OMAP2+: hwmod: Make omap_hwmod_softreset wait for reset status
omap_hwmod_softreset() does not seem to wait for reset status
after doing a softreset. Make it use _ocp_softreset() instead
which does this correctly.

Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Anand Gadiyar <gadiyar@ti.com>
Cc: Shubhrajyoti D <shubhrajyoti@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-omap2/omap_hwmod.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
index d32c1ce4f3ab..72903d42ab0d 100644
--- a/arch/arm/mach-omap2/omap_hwmod.c
+++ b/arch/arm/mach-omap2/omap_hwmod.c
@@ -1901,20 +1901,10 @@ void omap_hwmod_write(u32 v, struct omap_hwmod *oh, u16 reg_offs)
  */
 int omap_hwmod_softreset(struct omap_hwmod *oh)
 {
-	u32 v;
-	int ret;
-
-	if (!oh || !(oh->_sysc_cache))
+	if (!oh)
 		return -EINVAL;
 
-	v = oh->_sysc_cache;
-	ret = _set_softreset(oh, &v);
-	if (ret)
-		goto error;
-	_write_sysconfig(v, oh);
-
-error:
-	return ret;
+	return _ocp_softreset(oh);
 }
 
 /**