From: Kevin Hilman <khilman@deeprootsystems.com>
To: Tero Kristo <tero.kristo@nokia.com>
Cc: linux-omap@vger.kernel.org
Subject: Re: [PATCHv6 4/9] OMAP3: PM: Removed pwrdm state hacking from omap_sram_idle
Date: Mon, 01 Mar 2010 15:31:51 -0800 [thread overview]
Message-ID: <87mxyr8vq0.fsf@deeprootsystems.com> (raw)
In-Reply-To: <1265999265-4363-5-git-send-email-tero.kristo@nokia.com> (Tero Kristo's message of "Fri\, 12 Feb 2010 20\:27\:40 +0200")
Tero Kristo <tero.kristo@nokia.com> writes:
> From: Tero Kristo <tero.kristo@nokia.com>
>
> Following hacks will be moved inside cpuidle in subsequent patch:
>
> - CAM domain prevents idle completely
> - PER should not go OFF if core remains active
>
> This simplifies the design and allows cpuidle to keep better track of which
> power states system will actually enter.
>
> Signed-off-by: Tero Kristo <tero.kristo@nokia.com>
I think this should be combined with PATCH 7. IOW, the removal and
re-addition should be in the same patch.
Kevin
> ---
> arch/arm/mach-omap2/pm34xx.c | 19 ++-----------------
> 1 files changed, 2 insertions(+), 17 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
> index c2d80fc..cdbedcf 100644
> --- a/arch/arm/mach-omap2/pm34xx.c
> +++ b/arch/arm/mach-omap2/pm34xx.c
> @@ -93,7 +93,6 @@ static int (*_omap_save_secure_sram)(u32 *addr);
>
> static struct powerdomain *mpu_pwrdm, *neon_pwrdm;
> static struct powerdomain *core_pwrdm, *per_pwrdm;
> -static struct powerdomain *cam_pwrdm;
>
> static struct prm_setup_vc prm_setup = {
> .clksetup = 0xff,
> @@ -373,7 +372,6 @@ void omap_sram_idle(void)
> int core_next_state = PWRDM_POWER_ON;
> int core_prev_state, per_prev_state;
> u32 sdrc_pwr = 0;
> - int per_state_modified = 0;
>
> if (!_omap_sram_idle)
> return;
> @@ -411,20 +409,11 @@ void omap_sram_idle(void)
> core_next_state = omap3_pwrdm_read_next_pwrst(core_pwrdm);
> if (per_next_state < PWRDM_POWER_ON) {
> omap2_gpio_prepare_for_idle(per_next_state);
> - if (per_next_state == PWRDM_POWER_OFF) {
> - if (core_next_state == PWRDM_POWER_ON) {
> - per_next_state = PWRDM_POWER_RET;
> - pwrdm_set_next_pwrst(per_pwrdm, per_next_state);
> - per_state_modified = 1;
> - } else
> - omap3_per_save_context();
> - }
> + if (per_next_state == PWRDM_POWER_OFF)
> + omap3_per_save_context();
> omap_uart_prepare_idle(2);
> }
>
> - if (pwrdm_read_pwrst(cam_pwrdm) == PWRDM_POWER_ON)
> - omap2_clkdm_deny_idle(mpu_pwrdm->pwrdm_clkdms[0]);
> -
> /*
> * Disable smartreflex before entering WFI.
> * Only needed if we are going to enter retention or off.
> @@ -554,8 +543,6 @@ void omap_sram_idle(void)
> }
> omap2_gpio_resume_after_idle();
> omap_uart_resume_idle(2);
> - if (per_state_modified)
> - pwrdm_set_next_pwrst(per_pwrdm, PWRDM_POWER_OFF);
> }
>
> /* Disable IO-PAD and IO-CHAIN wakeup */
> @@ -564,7 +551,6 @@ void omap_sram_idle(void)
> omap3_disable_io_chain();
> }
>
> -
> pwrdm_post_transition();
> }
>
> @@ -1239,7 +1225,6 @@ static int __init omap3_pm_init(void)
> neon_pwrdm = pwrdm_lookup("neon_pwrdm");
> per_pwrdm = pwrdm_lookup("per_pwrdm");
> core_pwrdm = pwrdm_lookup("core_pwrdm");
> - cam_pwrdm = pwrdm_lookup("cam_pwrdm");
>
> neon_clkdm = clkdm_lookup("neon_clkdm");
> mpu_clkdm = clkdm_lookup("mpu_clkdm");
> --
> 1.5.4.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2010-03-01 23:31 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-12 18:27 [PATCHv6 0/9] Refreshed idlestatus patches with minor fixes Tero Kristo
2010-02-12 18:27 ` [PATCHv6 1/9] OMAP3: PM: Added support functions for omap3 pwrdm handling Tero Kristo
2010-02-12 18:27 ` [PATCHv6 2/9] OMAP3: PM: Added support for INACTIVE and ON states in omap_sram_idle Tero Kristo
2010-02-12 18:27 ` [PATCHv6 3/9] OMAP3: CPUidle: Fixed support for ON / INACTIVE states Tero Kristo
2010-02-12 18:27 ` [PATCHv6 4/9] OMAP3: PM: Removed pwrdm state hacking from omap_sram_idle Tero Kristo
2010-02-12 18:27 ` [PATCHv6 5/9] OMAP3: Clock: Added IDLEST definitions for SGX Tero Kristo
2010-02-12 18:27 ` [PATCHv6 6/9] OMAP: Powerdomains: Add support for checking if pwrdm/clkdm can idle Tero Kristo
2010-02-12 18:27 ` [PATCHv6 7/9] OMAP3: CPUidle: Added peripheral pwrdm checks into bm check Tero Kristo
2010-02-12 18:27 ` [PATCHv6 8/9] OMAP3: CPUidle: Fixed off-mode support to fall-back to proper C state Tero Kristo
2010-02-12 18:27 ` [PATCHv6 9/9] OMAP3: PM: Added support for suspending to INACTIVE state Tero Kristo
2010-03-01 23:43 ` Kevin Hilman
2010-03-02 10:12 ` Tero.Kristo
2010-03-08 17:16 ` Kevin Hilman
2010-03-09 8:07 ` Tero.Kristo
2010-03-09 19:02 ` Kevin Hilman
2010-03-01 23:32 ` [PATCHv6 6/9] OMAP: Powerdomains: Add support for checking if pwrdm/clkdm can idle Kevin Hilman
2010-03-01 23:31 ` Kevin Hilman [this message]
2010-03-02 10:13 ` [PATCHv6 4/9] OMAP3: PM: Removed pwrdm state hacking from omap_sram_idle Tero.Kristo
2010-03-01 23:17 ` [PATCHv6 1/9] OMAP3: PM: Added support functions for omap3 pwrdm handling Kevin Hilman
2010-03-02 10:20 ` Tero.Kristo
2010-03-02 17:14 ` Kevin Hilman
2010-03-01 23:17 ` [PATCHv6 0/9] Refreshed idlestatus patches with minor fixes Kevin Hilman
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=87mxyr8vq0.fsf@deeprootsystems.com \
--to=khilman@deeprootsystems.com \
--cc=linux-omap@vger.kernel.org \
--cc=tero.kristo@nokia.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox