From: Jon Hunter <jon-hunter@ti.com>
To: Paul Walmsley <paul@pwsan.com>
Cc: Kevin Hilman <khilman@ti.com>, Benoit Cousson <b-cousson@ti.com>,
Ming Lei <ming.lei@canonical.com>,
Will Deacon <will.deacon@arm.com>,
linux-omap <linux-omap@vger.kernel.org>,
linux-arm <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH V2 08/10] ARM: OMAP4: Prevent EMU power domain transitioning to OFF when in-use
Date: Tue, 31 Jul 2012 13:16:42 -0500 [thread overview]
Message-ID: <5018210A.1040902@ti.com> (raw)
In-Reply-To: <501760BF.8070801@ti.com>
Hi Paul,
On 07/30/2012 11:36 PM, Jon Hunter wrote:
> Hi Paul,
>
> On 07/30/2012 06:26 PM, Jon Hunter wrote:
>
> [...]
>
>> 1. When HWMOD attempts to disable the clock domain for OMAP2/3 devices
>> we simply return without doing anything. Not sure if it is safe to
>> remove this but I can do some more testing on OMAP2/3.
>>
>> commit a0307bd539ecef976793679a1c4ff0d47b22c4bd
>> Author: Jon Hunter <jon-hunter@ti.com>
>> Date: Mon Jul 30 18:04:06 2012 -0500
>>
>> ARM: OMAP2/3: Allow HWMOD to disable clock domains
>>
>> Currently when HWMOD attempts to disable a clock domain on OMAP2/3 devices we
>> will return from the function clkdm_hwmod_disable() without actually disabling
>> the clock domain. Per the comment this is deliberate because initially HWMOD
>> OMAP2/3 devices did not support clock domains. However, clock domains are now
>> supported by HWMOD for these devices and so allow HWMOD to disable the clock
>> domains.
>>
>> XXX - Tested on OMAP3430 beagle board, but needs more testing on OMAP2/3
>>
>> diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
>> index 011186f..8f7a941 100644
>> --- a/arch/arm/mach-omap2/clockdomain.c
>> +++ b/arch/arm/mach-omap2/clockdomain.c
>> @@ -1075,10 +1075,6 @@ int clkdm_hwmod_enable(struct clockdomain *clkdm, struct omap_hwmod *oh)
>> */
>> int clkdm_hwmod_disable(struct clockdomain *clkdm, struct omap_hwmod *oh)
>> {
>> - /* The clkdm attribute does not exist yet prior OMAP4 */
>> - if (cpu_is_omap24xx() || cpu_is_omap34xx())
>> - return 0;
>> -
>> /*
>> * XXX Rewrite this code to maintain a list of enabled
>> * downstream hwmods for debugging purposes?
>>
>>
>> 2. I need to make the following changes to your patch. The change to
>> omap2_clkdm_clk_disable() was needed to get the EMU to turn off.
>> At the same time I thought we should make the same change to
>> omap2_clkdm_clk_enable().
>>
>> diff --git a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> index 09385a9..c94b2fb 100644
>> --- a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> +++ b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> @@ -223,7 +223,8 @@ static int omap2_clkdm_clk_enable(struct clockdomain *clkdm)
>> _enable_hwsup(clkdm);
>> } else {
>> if (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP)
>> - omap2_clkdm_wakeup(clkdm);
>> + (cpu_is_omap24xx()) ? omap2_clkdm_wakeup(clkdm) :
>> + omap3_clkdm_wakeup(clkdm);
>> }
>>
>> return 0;
>> @@ -257,7 +258,8 @@ static int omap2_clkdm_clk_disable(struct clockdomain *clkdm)
>> _enable_hwsup(clkdm);
>> } else {
>> if (clkdm->flags & CLKDM_CAN_FORCE_SLEEP)
>> - omap2_clkdm_sleep(clkdm);
>> + (cpu_is_omap24xx()) ? omap2_clkdm_sleep(clkdm) :
>> + omap3_clkdm_sleep(clkdm);
>> }
>
> I just remembered you sending out a patch [1] to address #2 above. Let
> me know your thoughts about change #1.
So scratch item #1 above. As Rajendra pointed out in another thread this
is not right. The only other comment I have with your patch is maybe we
need to add the following to prevent the EMU PD being idled during
boot-up if enabled early in the boot process.
diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
index 011186f..84d3fbc 100644
--- a/arch/arm/mach-omap2/clockdomain.c
+++ b/arch/arm/mach-omap2/clockdomain.c
@@ -825,7 +825,8 @@ void clkdm_allow_idle(struct clockdomain *clkdm)
if (!clkdm)
return;
- if (!(clkdm->flags & CLKDM_CAN_ENABLE_AUTO)) {
+ if (!(clkdm->flags & CLKDM_CAN_ENABLE_AUTO) ||
+ (clkdm->flags & CLKDM_MISSING_IDLE_REPORTING)) {
pr_debug("clock: automatic idle transitions cannot be enabled "
"on clockdomain %s\n", clkdm->name);
return;
Cheers
Jon
WARNING: multiple messages have this Message-ID (diff)
From: jon-hunter@ti.com (Jon Hunter)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V2 08/10] ARM: OMAP4: Prevent EMU power domain transitioning to OFF when in-use
Date: Tue, 31 Jul 2012 13:16:42 -0500 [thread overview]
Message-ID: <5018210A.1040902@ti.com> (raw)
In-Reply-To: <501760BF.8070801@ti.com>
Hi Paul,
On 07/30/2012 11:36 PM, Jon Hunter wrote:
> Hi Paul,
>
> On 07/30/2012 06:26 PM, Jon Hunter wrote:
>
> [...]
>
>> 1. When HWMOD attempts to disable the clock domain for OMAP2/3 devices
>> we simply return without doing anything. Not sure if it is safe to
>> remove this but I can do some more testing on OMAP2/3.
>>
>> commit a0307bd539ecef976793679a1c4ff0d47b22c4bd
>> Author: Jon Hunter <jon-hunter@ti.com>
>> Date: Mon Jul 30 18:04:06 2012 -0500
>>
>> ARM: OMAP2/3: Allow HWMOD to disable clock domains
>>
>> Currently when HWMOD attempts to disable a clock domain on OMAP2/3 devices we
>> will return from the function clkdm_hwmod_disable() without actually disabling
>> the clock domain. Per the comment this is deliberate because initially HWMOD
>> OMAP2/3 devices did not support clock domains. However, clock domains are now
>> supported by HWMOD for these devices and so allow HWMOD to disable the clock
>> domains.
>>
>> XXX - Tested on OMAP3430 beagle board, but needs more testing on OMAP2/3
>>
>> diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
>> index 011186f..8f7a941 100644
>> --- a/arch/arm/mach-omap2/clockdomain.c
>> +++ b/arch/arm/mach-omap2/clockdomain.c
>> @@ -1075,10 +1075,6 @@ int clkdm_hwmod_enable(struct clockdomain *clkdm, struct omap_hwmod *oh)
>> */
>> int clkdm_hwmod_disable(struct clockdomain *clkdm, struct omap_hwmod *oh)
>> {
>> - /* The clkdm attribute does not exist yet prior OMAP4 */
>> - if (cpu_is_omap24xx() || cpu_is_omap34xx())
>> - return 0;
>> -
>> /*
>> * XXX Rewrite this code to maintain a list of enabled
>> * downstream hwmods for debugging purposes?
>>
>>
>> 2. I need to make the following changes to your patch. The change to
>> omap2_clkdm_clk_disable() was needed to get the EMU to turn off.
>> At the same time I thought we should make the same change to
>> omap2_clkdm_clk_enable().
>>
>> diff --git a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> index 09385a9..c94b2fb 100644
>> --- a/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> +++ b/arch/arm/mach-omap2/clockdomain2xxx_3xxx.c
>> @@ -223,7 +223,8 @@ static int omap2_clkdm_clk_enable(struct clockdomain *clkdm)
>> _enable_hwsup(clkdm);
>> } else {
>> if (clkdm->flags & CLKDM_CAN_FORCE_WAKEUP)
>> - omap2_clkdm_wakeup(clkdm);
>> + (cpu_is_omap24xx()) ? omap2_clkdm_wakeup(clkdm) :
>> + omap3_clkdm_wakeup(clkdm);
>> }
>>
>> return 0;
>> @@ -257,7 +258,8 @@ static int omap2_clkdm_clk_disable(struct clockdomain *clkdm)
>> _enable_hwsup(clkdm);
>> } else {
>> if (clkdm->flags & CLKDM_CAN_FORCE_SLEEP)
>> - omap2_clkdm_sleep(clkdm);
>> + (cpu_is_omap24xx()) ? omap2_clkdm_sleep(clkdm) :
>> + omap3_clkdm_sleep(clkdm);
>> }
>
> I just remembered you sending out a patch [1] to address #2 above. Let
> me know your thoughts about change #1.
So scratch item #1 above. As Rajendra pointed out in another thread this
is not right. The only other comment I have with your patch is maybe we
need to add the following to prevent the EMU PD being idled during
boot-up if enabled early in the boot process.
diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
index 011186f..84d3fbc 100644
--- a/arch/arm/mach-omap2/clockdomain.c
+++ b/arch/arm/mach-omap2/clockdomain.c
@@ -825,7 +825,8 @@ void clkdm_allow_idle(struct clockdomain *clkdm)
if (!clkdm)
return;
- if (!(clkdm->flags & CLKDM_CAN_ENABLE_AUTO)) {
+ if (!(clkdm->flags & CLKDM_CAN_ENABLE_AUTO) ||
+ (clkdm->flags & CLKDM_MISSING_IDLE_REPORTING)) {
pr_debug("clock: automatic idle transitions cannot be enabled "
"on clockdomain %s\n", clkdm->name);
return;
Cheers
Jon
next prev parent reply other threads:[~2012-07-31 18:16 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-07 21:22 [PATCH V2 00/10] ARM: OMAP4: Add PMU Support Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 01/10] ARM: PMU: Add runtime PM Support Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-08 9:47 ` Will Deacon
2012-06-08 9:47 ` Will Deacon
2012-06-08 14:17 ` Jon Hunter
2012-06-08 14:17 ` Jon Hunter
2012-06-08 15:24 ` Jon Hunter
2012-06-08 15:24 ` Jon Hunter
2012-06-11 17:39 ` Will Deacon
2012-06-11 17:39 ` Will Deacon
2012-06-11 19:01 ` Jon Hunter
2012-06-11 19:01 ` Jon Hunter
2012-06-12 9:28 ` Will Deacon
2012-06-12 9:28 ` Will Deacon
2012-06-12 21:17 ` Jon Hunter
2012-06-12 21:17 ` Jon Hunter
2012-06-12 21:31 ` Will Deacon
2012-06-12 21:31 ` Will Deacon
2012-06-12 22:41 ` Jon Hunter
2012-06-12 22:41 ` Jon Hunter
2012-07-02 9:55 ` Will Deacon
2012-07-02 9:55 ` Will Deacon
2012-07-02 16:50 ` Jon Hunter
2012-07-02 16:50 ` Jon Hunter
2012-07-02 22:01 ` Will Deacon
2012-07-02 22:01 ` Will Deacon
2012-07-06 0:40 ` Jon Hunter
2012-07-06 0:40 ` Jon Hunter
2012-07-26 0:41 ` Jon Hunter
2012-07-26 0:41 ` Jon Hunter
2012-07-26 15:05 ` Will Deacon
2012-07-26 15:05 ` Will Deacon
2012-07-26 15:16 ` Jon Hunter
2012-07-26 15:16 ` Jon Hunter
2012-07-31 15:14 ` Will Deacon
2012-07-31 15:14 ` Will Deacon
2012-07-31 23:07 ` Jon Hunter
2012-07-31 23:07 ` Jon Hunter
2012-08-01 20:47 ` Will Deacon
2012-08-01 20:47 ` Will Deacon
2012-08-01 22:34 ` Jon Hunter
2012-08-01 22:34 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 02/10] ARM: OMAP2+: PMU: Convert OMAP2/3 devices to use HWMOD Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 03/10] ARM: OMAP4: Re-map the CTIs IRQs from MPU to DEBUGSS Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-13 6:07 ` Pandita, Vikram
2012-06-13 6:07 ` Pandita, Vikram
2012-06-13 6:13 ` Pandita, Vikram
2012-06-13 6:13 ` Pandita, Vikram
2012-06-13 6:19 ` Shilimkar, Santosh
2012-06-13 6:19 ` Shilimkar, Santosh
2012-06-07 21:22 ` [PATCH V2 04/10] ARM: OMAP4430: Create PMU device via HWMOD Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 05/10] ARM: OMAP2+: PMU: Add runtime PM support Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 06/10] ARM: OMAP4: Route PMU IRQs to CTI IRQs Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 07/10] ARM: OMAP4: CLKDM: Update supported transition modes Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-07-04 15:38 ` Paul Walmsley
2012-07-04 15:38 ` Paul Walmsley
2012-07-05 17:14 ` Jon Hunter
2012-07-05 17:14 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 08/10] ARM: OMAP4: Prevent EMU power domain transitioning to OFF when in-use Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-07-12 21:17 ` Paul Walmsley
2012-07-12 21:17 ` Paul Walmsley
2012-07-13 13:54 ` Jon Hunter
2012-07-13 13:54 ` Jon Hunter
2012-07-13 14:00 ` Will Deacon
2012-07-13 14:00 ` Will Deacon
2012-07-13 14:07 ` Jon Hunter
2012-07-13 14:07 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-13 21:00 ` Paul Walmsley
2012-07-13 21:00 ` Paul Walmsley
2012-07-16 18:27 ` Jon Hunter
2012-07-16 18:27 ` Jon Hunter
2012-07-16 18:38 ` Paul Walmsley
2012-07-16 18:38 ` Paul Walmsley
2012-07-16 19:38 ` Jon Hunter
2012-07-16 19:38 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-20 22:24 ` Jon Hunter
2012-07-30 23:26 ` Jon Hunter
2012-07-30 23:26 ` Jon Hunter
2012-07-31 4:36 ` Jon Hunter
2012-07-31 4:36 ` Jon Hunter
2012-07-31 18:16 ` Jon Hunter [this message]
2012-07-31 18:16 ` Jon Hunter
2012-08-01 0:20 ` Jon Hunter
2012-08-01 0:20 ` Jon Hunter
2012-08-01 15:08 ` Paul Walmsley
2012-08-01 15:08 ` Paul Walmsley
2012-08-01 18:17 ` Jon Hunter
2012-08-01 18:17 ` Jon Hunter
2012-08-01 15:36 ` Paul Walmsley
2012-08-01 15:36 ` Paul Walmsley
2012-08-01 19:41 ` Jon Hunter
2012-08-01 19:41 ` Jon Hunter
2012-08-02 7:34 ` Shilimkar, Santosh
2012-08-02 7:34 ` Shilimkar, Santosh
2012-10-08 22:24 ` Jon Hunter
2012-10-08 22:24 ` Jon Hunter
2012-10-09 4:41 ` Paul Walmsley
2012-10-09 4:41 ` Paul Walmsley
2012-07-31 20:56 ` Jon Hunter
2012-07-31 20:56 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 09/10] ARM: OMAP4: Enable PMU for OMAP4460/70 Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 21:22 ` [PATCH V2 10/10] ARM: OMAP2+: PMU: Add QoS constraint Jon Hunter
2012-06-07 21:22 ` Jon Hunter
2012-06-07 23:36 ` [PATCH V2 00/10] ARM: OMAP4: Add PMU Support Jon Hunter
2012-06-07 23:36 ` Jon Hunter
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=5018210A.1040902@ti.com \
--to=jon-hunter@ti.com \
--cc=b-cousson@ti.com \
--cc=khilman@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=ming.lei@canonical.com \
--cc=paul@pwsan.com \
--cc=will.deacon@arm.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.