From: Paul Walmsley <paul@pwsan.com>
To: linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Cc: Tero Kristo <t-kristo@ti.com>
Subject: [PATCHv3 6/7] ARM: OMAP2+: CM: increase the module disable timeout
Date: Mon, 18 Jun 2012 00:16:14 -0600 [thread overview]
Message-ID: <20120618061611.30632.51094.stgit@dusk> (raw)
In-Reply-To: <20120618061037.30632.28539.stgit@dusk>
Increase the timeout for disabling an IP block to five milliseconds.
This is to handle the usb_host_fs idle latency, which takes almost
four milliseconds after a host controller reset.
This is the second of two patches needed to resolve the following
boot warning:
omap_hwmod: usb_host_fs: _wait_target_disable failed
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
---
arch/arm/mach-omap2/cm.h | 11 +++++++++++
arch/arm/mach-omap2/cminst44xx.c | 4 ++--
arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 1 +
3 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/cm.h b/arch/arm/mach-omap2/cm.h
index a7bc096..f24e3f7 100644
--- a/arch/arm/mach-omap2/cm.h
+++ b/arch/arm/mach-omap2/cm.h
@@ -22,4 +22,15 @@
*/
#define MAX_MODULE_READY_TIME 2000
+/*
+ * MAX_MODULE_DISABLE_TIME: max duration in microseconds to wait for
+ * the PRCM to request that a module enter the inactive state in the
+ * case of OMAP2 & 3. In the case of OMAP4 this is the max duration
+ * in microseconds for the module to reach the inactive state from
+ * a functional state.
+ * XXX FSUSB on OMAP4430 takes ~4ms to idle after reset during
+ * kernel init.
+ */
+#define MAX_MODULE_DISABLE_TIME 5000
+
#endif
diff --git a/arch/arm/mach-omap2/cminst44xx.c b/arch/arm/mach-omap2/cminst44xx.c
index 8c86d29..1a39945 100644
--- a/arch/arm/mach-omap2/cminst44xx.c
+++ b/arch/arm/mach-omap2/cminst44xx.c
@@ -313,9 +313,9 @@ int omap4_cminst_wait_module_idle(u8 part, u16 inst, s16 cdoffs, u16 clkctrl_off
omap_test_timeout((_clkctrl_idlest(part, inst, cdoffs, clkctrl_offs) ==
CLKCTRL_IDLEST_DISABLED),
- MAX_MODULE_READY_TIME, i);
+ MAX_MODULE_DISABLE_TIME, i);
- return (i < MAX_MODULE_READY_TIME) ? 0 : -EBUSY;
+ return (i < MAX_MODULE_DISABLE_TIME) ? 0 : -EBUSY;
}
/**
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index 6b0aedc..a428305 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -30,6 +30,7 @@
#include <plat/mmc.h>
#include <plat/dmtimer.h>
#include <plat/common.h>
+#include <plat/usb.h>
#include "omap_hwmod_common_data.h"
WARNING: multiple messages have this Message-ID (diff)
From: paul@pwsan.com (Paul Walmsley)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv3 6/7] ARM: OMAP2+: CM: increase the module disable timeout
Date: Mon, 18 Jun 2012 00:16:14 -0600 [thread overview]
Message-ID: <20120618061611.30632.51094.stgit@dusk> (raw)
In-Reply-To: <20120618061037.30632.28539.stgit@dusk>
Increase the timeout for disabling an IP block to five milliseconds.
This is to handle the usb_host_fs idle latency, which takes almost
four milliseconds after a host controller reset.
This is the second of two patches needed to resolve the following
boot warning:
omap_hwmod: usb_host_fs: _wait_target_disable failed
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Tero Kristo <t-kristo@ti.com>
---
arch/arm/mach-omap2/cm.h | 11 +++++++++++
arch/arm/mach-omap2/cminst44xx.c | 4 ++--
arch/arm/mach-omap2/omap_hwmod_44xx_data.c | 1 +
3 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/arch/arm/mach-omap2/cm.h b/arch/arm/mach-omap2/cm.h
index a7bc096..f24e3f7 100644
--- a/arch/arm/mach-omap2/cm.h
+++ b/arch/arm/mach-omap2/cm.h
@@ -22,4 +22,15 @@
*/
#define MAX_MODULE_READY_TIME 2000
+/*
+ * MAX_MODULE_DISABLE_TIME: max duration in microseconds to wait for
+ * the PRCM to request that a module enter the inactive state in the
+ * case of OMAP2 & 3. In the case of OMAP4 this is the max duration
+ * in microseconds for the module to reach the inactive state from
+ * a functional state.
+ * XXX FSUSB on OMAP4430 takes ~4ms to idle after reset during
+ * kernel init.
+ */
+#define MAX_MODULE_DISABLE_TIME 5000
+
#endif
diff --git a/arch/arm/mach-omap2/cminst44xx.c b/arch/arm/mach-omap2/cminst44xx.c
index 8c86d29..1a39945 100644
--- a/arch/arm/mach-omap2/cminst44xx.c
+++ b/arch/arm/mach-omap2/cminst44xx.c
@@ -313,9 +313,9 @@ int omap4_cminst_wait_module_idle(u8 part, u16 inst, s16 cdoffs, u16 clkctrl_off
omap_test_timeout((_clkctrl_idlest(part, inst, cdoffs, clkctrl_offs) ==
CLKCTRL_IDLEST_DISABLED),
- MAX_MODULE_READY_TIME, i);
+ MAX_MODULE_DISABLE_TIME, i);
- return (i < MAX_MODULE_READY_TIME) ? 0 : -EBUSY;
+ return (i < MAX_MODULE_DISABLE_TIME) ? 0 : -EBUSY;
}
/**
diff --git a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
index 6b0aedc..a428305 100644
--- a/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_44xx_data.c
@@ -30,6 +30,7 @@
#include <plat/mmc.h>
#include <plat/dmtimer.h>
#include <plat/common.h>
+#include <plat/usb.h>
#include "omap_hwmod_common_data.h"
next prev parent reply other threads:[~2012-06-18 6:18 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-18 6:15 [PATCHv3 0/7] ARM: OMAP: core/hwmod: first set of fixes for 3.5-rc Paul Walmsley
2012-06-18 6:15 ` Paul Walmsley
2012-06-18 6:15 ` [PATCHv3 1/7] ARM: OMAP: PM: Lock clocks list while generating summary Paul Walmsley
2012-06-18 6:15 ` Paul Walmsley
2012-06-18 6:16 ` [PATCHv3 2/7] ARM: OMAP2+: hwmod code/data: fix 32K sync timer Paul Walmsley
2012-06-18 6:16 ` Paul Walmsley
2012-06-18 6:16 ` [PATCHv3 3/7] ARM: OMAP4+: hwmod: fix issue causing IPs not going back to Smart-Standby Paul Walmsley
2012-06-18 6:16 ` Paul Walmsley
2012-06-18 6:16 ` [PATCHv3 4/7] ARM: OMAP4: hwmod data: fix 32k sync timer idle modes Paul Walmsley
2012-06-18 6:16 ` Paul Walmsley
2012-06-18 6:16 ` [PATCHv3 5/7] ARM: OMAP4: clock data: add clockdomains for clocks used as main clocks Paul Walmsley
2012-06-18 6:16 ` Paul Walmsley
2012-06-18 9:35 ` Cousson, Benoit
2012-06-18 9:35 ` Cousson, Benoit
2012-06-18 15:45 ` Paul Walmsley
2012-06-18 15:45 ` Paul Walmsley
2012-06-18 21:36 ` Cousson, Benoit
2012-06-18 21:36 ` Cousson, Benoit
2012-06-18 6:16 ` Paul Walmsley [this message]
2012-06-18 6:16 ` [PATCHv3 6/7] ARM: OMAP2+: CM: increase the module disable timeout Paul Walmsley
2012-06-19 12:46 ` Sergei Shtylyov
2012-06-19 12:46 ` Sergei Shtylyov
2012-06-21 21:10 ` Paul Walmsley
2012-06-21 21:10 ` Paul Walmsley
2012-06-18 6:16 ` [PATCHv3 7/7] ARM: OMAP2+: mux: fix sparse warning Paul Walmsley
2012-06-18 6:16 ` Paul Walmsley
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120618061611.30632.51094.stgit@dusk \
--to=paul@pwsan.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=t-kristo@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.