All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@ti.com>
To: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
	linux@arm.linux.org.uk, rnayak@ti.com
Subject: Re: [PATCH 18/25] OMAP4: suspend: Add MPUSS power domain RETENTION support
Date: Wed, 14 Sep 2011 17:27:29 -0700	[thread overview]
Message-ID: <87ty8e8xam.fsf@ti.com> (raw)
In-Reply-To: 1315144466-9395-19-git-send-email-santosh.shilimkar@ti.com

Santosh Shilimkar <santosh.shilimkar@ti.com> writes:

> This patch adds MPUSS(MPU Sub System) power domain
> CSWR(Close Switch Retention) support to system wide suspend.
> For both MPUSS RET support, CPUs are programmed to OFF state.

is 'both' in the wrong place in this sentence?   I think you meant:

For MPUSS retention support, both CPUs are programmed to OFF state.

> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> Cc: Kevin Hilman <khilman@ti.com>
> ---
>  arch/arm/mach-omap2/omap-mpuss-lowpower.c |   16 +++++++
>  arch/arm/mach-omap2/pm44xx.c              |   71 +++++++++++++++++++++++++++--
>  2 files changed, 82 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> index 9d68abf..9f632fe 100644
> --- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> +++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> @@ -66,6 +66,7 @@ struct omap4_cpu_pm_info {
>  };
>  
>  static DEFINE_PER_CPU(struct omap4_cpu_pm_info, omap4_pm_info);
> +static struct powerdomain *mpuss_pd;
>  
>  /*
>   * Program the wakeup routine address for the CPU0 and CPU1
> @@ -140,6 +141,13 @@ static void scu_pwrst_prepare(unsigned int cpu_id, unsigned int cpu_state)
>   * of OMAP4 MPUSS subsystem
>   * @cpu : CPU ID
>   * @power_state: Low power state.
> + *
> + * MPUSS states for the context save:
> + * save_state =
> + *	0 - Nothing lost and no need to save: MPUSS INACTIVE
> + *	1 - CPUx L1 and logic lost: MPUSS CSWR
> + *	2 - CPUx L1 and logic lost + GIC lost: MPUSS OSWR
> + *	3 - CPUx L1 and logic lost + GIC + L2 lost: DEVICE OFF
>   */
>  int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state)
>  {
> @@ -169,6 +177,7 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state)
>  		return -ENXIO;
>  	}
>  
> +	pwrdm_clear_all_prev_pwrst(mpuss_pd);
>  	clear_cpu_prev_pwrst(cpu);
>  	set_cpu_next_pwrst(cpu, power_state);
>  	set_cpu_wakeup_addr(cpu, virt_to_phys(omap4_cpu_resume));
> @@ -270,6 +279,13 @@ int __init omap4_mpuss_init(void)
>  	/* Initialise CPU1 power domain state to ON */
>  	pwrdm_set_next_pwrst(pm_info->pwrdm, PWRDM_POWER_ON);
>  
> +	mpuss_pd = pwrdm_lookup("mpu_pwrdm");
> +	if (!mpuss_pd) {
> +		pr_err("Failed to lookup MPUSS power domain\n");
> +		return -ENODEV;
> +	}
> +	pwrdm_clear_all_prev_pwrst(mpuss_pd);
> +
>  	/* Save device type on scratchpad for low level code to use */
>  	if (omap_type() != OMAP2_DEVICE_TYPE_GP)
>  		__raw_writel(1, sar_base + OMAP_TYPE_OFFSET);
> diff --git a/arch/arm/mach-omap2/pm44xx.c b/arch/arm/mach-omap2/pm44xx.c
> index 4f39de5..63e8f9b 100644
> --- a/arch/arm/mach-omap2/pm44xx.c
> +++ b/arch/arm/mach-omap2/pm44xx.c
> @@ -1,8 +1,9 @@
>  /*
>   * OMAP4 Power Management Routines
>   *
> - * Copyright (C) 2010 Texas Instruments, Inc.
> + * Copyright (C) 2010-2011 Texas Instruments, Inc.
>   * Rajendra Nayak <rnayak@ti.com>
> + * Santosh Shilimkar <santosh.shilimkar@ti.com>
>   *
>   * This program is free software; you can redistribute it and/or modify
>   * it under the terms of the GNU General Public License version 2 as
> @@ -16,9 +17,11 @@
>  #include <linux/err.h>
>  #include <linux/slab.h>
>  
> +#include <mach/omap4-common.h>
> +
>  #include "powerdomain.h"
>  #include "clockdomain.h"
> -#include <mach/omap4-common.h>
> +#include "pm.h"
>  
>  struct power_state {
>  	struct powerdomain *pwrdm;
> @@ -34,7 +37,48 @@ static LIST_HEAD(pwrst_list);
>  #ifdef CONFIG_SUSPEND
>  static int omap4_pm_suspend(void)
>  {
> -	omap_do_wfi();
> +	struct power_state *pwrst;
> +	int state, ret = 0;
> +	u32 cpu_id = smp_processor_id();
> +
> +	/* Save current powerdomain state */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		pwrst->saved_state = pwrdm_read_next_pwrst(pwrst->pwrdm);
> +	}
> +
> +	/* Set targeted power domain states by suspend */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		omap_set_pwrdm_state(pwrst->pwrdm, pwrst->next_state);
> +	}
> +
> +	/*
> +	 * For MPUSS to hit power domain retention(CSWR or OSWR),
> +	 * CPU0 and CPU1 power domain needs to be in OFF or DORMANT

s/domain needs/domains need/

> +	 * state. For MPUSS to reach off-mode. CPU0 and CPU1 power domain
> +	 * should be in off state.

nit: please be consistent with naming of power states (e.g. OFF vs. off)

> +	 * Only master CPU followes suspend path. All other CPUs follow
> +	 * cpu-hotplug path in system wide suspend. On OMAP4, CPU power
> +	 * domain CSWR is not supported by hardware.

I think this sentence belongs a little earlier.  E.g. something like
...CPU0 and CPU1 power domains need to be in OFF or DORMANT state, since
CPU power domain CSWR is not supported by hardware.

> +	 * More details can be found in OMAP4430 TRM section 4.3.4.2.
> +	 */
> +	omap4_enter_lowpower(cpu_id, PWRDM_POWER_OFF);
> +
> +	/* Restore next powerdomain state */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		state = pwrdm_read_prev_pwrst(pwrst->pwrdm);
> +		if (state > pwrst->next_state) {
> +			pr_info("Powerdomain (%s) didn't enter "
> +			       "target state %d\n",
> +			       pwrst->pwrdm->name, pwrst->next_state);
> +			ret = -1;
> +		}
> +		omap_set_pwrdm_state(pwrst->pwrdm, pwrst->saved_state);
> +	}
> +	if (ret)
> +		pr_err("Could not enter target state in pm_suspend\n");

Without more details, this isn't terribly useful.  I'd suggest just
making the per-state one above pr_err().

> +	else
> +		pr_err("Successfully put all powerdomains to target state\n");

and this one pr_info.

>  	return 0;
>  }
>  
> @@ -97,14 +141,31 @@ static int __init pwrdms_setup(struct powerdomain *pwrdm, void *unused)
>  	if (!pwrdm->pwrsts)
>  		return 0;
>  
> +	/*
> +	 * Skip CPU0 and CPU1 power domains. CPU1 is programmed
> +	 * through hotplug path and CPU0 explicitly programmed
> +	 * further down in the code path
> +	 */
> +	if ((!strcmp(pwrdm->name, "cpu0_pwrdm")) ||
> +		(!strcmp(pwrdm->name, "cpu1_pwrdm")))

or just one compare using strncmp(pwrdm->name, "cpu", 3)

> +		return 0;
> +
> +	/*
> +	 * FIXME: Remove this check when core retention is supported
> +	 * Only MPUSS power domain is added in the list.
> +	 */
> +	if (strcmp(pwrdm->name, "mpu_pwrdm"))
> +		return 0;
> +
>  	pwrst = kmalloc(sizeof(struct power_state), GFP_ATOMIC);
>  	if (!pwrst)
>  		return -ENOMEM;
> +
>  	pwrst->pwrdm = pwrdm;
> -	pwrst->next_state = PWRDM_POWER_ON;
> +	pwrst->next_state = PWRDM_POWER_RET;
>  	list_add(&pwrst->node, &pwrst_list);
>  
> -	return pwrdm_set_next_pwrst(pwrst->pwrdm, pwrst->next_state);
> +	return omap_set_pwrdm_state(pwrst->pwrdm, pwrst->next_state);
>  }
>  
>  /**

Kevin

WARNING: multiple messages have this Message-ID (diff)
From: khilman@ti.com (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 18/25] OMAP4: suspend: Add MPUSS power domain RETENTION support
Date: Wed, 14 Sep 2011 17:27:29 -0700	[thread overview]
Message-ID: <87ty8e8xam.fsf@ti.com> (raw)
In-Reply-To: 1315144466-9395-19-git-send-email-santosh.shilimkar@ti.com

Santosh Shilimkar <santosh.shilimkar@ti.com> writes:

> This patch adds MPUSS(MPU Sub System) power domain
> CSWR(Close Switch Retention) support to system wide suspend.
> For both MPUSS RET support, CPUs are programmed to OFF state.

is 'both' in the wrong place in this sentence?   I think you meant:

For MPUSS retention support, both CPUs are programmed to OFF state.

> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
> Cc: Kevin Hilman <khilman@ti.com>
> ---
>  arch/arm/mach-omap2/omap-mpuss-lowpower.c |   16 +++++++
>  arch/arm/mach-omap2/pm44xx.c              |   71 +++++++++++++++++++++++++++--
>  2 files changed, 82 insertions(+), 5 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/omap-mpuss-lowpower.c b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> index 9d68abf..9f632fe 100644
> --- a/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> +++ b/arch/arm/mach-omap2/omap-mpuss-lowpower.c
> @@ -66,6 +66,7 @@ struct omap4_cpu_pm_info {
>  };
>  
>  static DEFINE_PER_CPU(struct omap4_cpu_pm_info, omap4_pm_info);
> +static struct powerdomain *mpuss_pd;
>  
>  /*
>   * Program the wakeup routine address for the CPU0 and CPU1
> @@ -140,6 +141,13 @@ static void scu_pwrst_prepare(unsigned int cpu_id, unsigned int cpu_state)
>   * of OMAP4 MPUSS subsystem
>   * @cpu : CPU ID
>   * @power_state: Low power state.
> + *
> + * MPUSS states for the context save:
> + * save_state =
> + *	0 - Nothing lost and no need to save: MPUSS INACTIVE
> + *	1 - CPUx L1 and logic lost: MPUSS CSWR
> + *	2 - CPUx L1 and logic lost + GIC lost: MPUSS OSWR
> + *	3 - CPUx L1 and logic lost + GIC + L2 lost: DEVICE OFF
>   */
>  int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state)
>  {
> @@ -169,6 +177,7 @@ int omap4_enter_lowpower(unsigned int cpu, unsigned int power_state)
>  		return -ENXIO;
>  	}
>  
> +	pwrdm_clear_all_prev_pwrst(mpuss_pd);
>  	clear_cpu_prev_pwrst(cpu);
>  	set_cpu_next_pwrst(cpu, power_state);
>  	set_cpu_wakeup_addr(cpu, virt_to_phys(omap4_cpu_resume));
> @@ -270,6 +279,13 @@ int __init omap4_mpuss_init(void)
>  	/* Initialise CPU1 power domain state to ON */
>  	pwrdm_set_next_pwrst(pm_info->pwrdm, PWRDM_POWER_ON);
>  
> +	mpuss_pd = pwrdm_lookup("mpu_pwrdm");
> +	if (!mpuss_pd) {
> +		pr_err("Failed to lookup MPUSS power domain\n");
> +		return -ENODEV;
> +	}
> +	pwrdm_clear_all_prev_pwrst(mpuss_pd);
> +
>  	/* Save device type on scratchpad for low level code to use */
>  	if (omap_type() != OMAP2_DEVICE_TYPE_GP)
>  		__raw_writel(1, sar_base + OMAP_TYPE_OFFSET);
> diff --git a/arch/arm/mach-omap2/pm44xx.c b/arch/arm/mach-omap2/pm44xx.c
> index 4f39de5..63e8f9b 100644
> --- a/arch/arm/mach-omap2/pm44xx.c
> +++ b/arch/arm/mach-omap2/pm44xx.c
> @@ -1,8 +1,9 @@
>  /*
>   * OMAP4 Power Management Routines
>   *
> - * Copyright (C) 2010 Texas Instruments, Inc.
> + * Copyright (C) 2010-2011 Texas Instruments, Inc.
>   * Rajendra Nayak <rnayak@ti.com>
> + * Santosh Shilimkar <santosh.shilimkar@ti.com>
>   *
>   * This program is free software; you can redistribute it and/or modify
>   * it under the terms of the GNU General Public License version 2 as
> @@ -16,9 +17,11 @@
>  #include <linux/err.h>
>  #include <linux/slab.h>
>  
> +#include <mach/omap4-common.h>
> +
>  #include "powerdomain.h"
>  #include "clockdomain.h"
> -#include <mach/omap4-common.h>
> +#include "pm.h"
>  
>  struct power_state {
>  	struct powerdomain *pwrdm;
> @@ -34,7 +37,48 @@ static LIST_HEAD(pwrst_list);
>  #ifdef CONFIG_SUSPEND
>  static int omap4_pm_suspend(void)
>  {
> -	omap_do_wfi();
> +	struct power_state *pwrst;
> +	int state, ret = 0;
> +	u32 cpu_id = smp_processor_id();
> +
> +	/* Save current powerdomain state */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		pwrst->saved_state = pwrdm_read_next_pwrst(pwrst->pwrdm);
> +	}
> +
> +	/* Set targeted power domain states by suspend */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		omap_set_pwrdm_state(pwrst->pwrdm, pwrst->next_state);
> +	}
> +
> +	/*
> +	 * For MPUSS to hit power domain retention(CSWR or OSWR),
> +	 * CPU0 and CPU1 power domain needs to be in OFF or DORMANT

s/domain needs/domains need/

> +	 * state. For MPUSS to reach off-mode. CPU0 and CPU1 power domain
> +	 * should be in off state.

nit: please be consistent with naming of power states (e.g. OFF vs. off)

> +	 * Only master CPU followes suspend path. All other CPUs follow
> +	 * cpu-hotplug path in system wide suspend. On OMAP4, CPU power
> +	 * domain CSWR is not supported by hardware.

I think this sentence belongs a little earlier.  E.g. something like
...CPU0 and CPU1 power domains need to be in OFF or DORMANT state, since
CPU power domain CSWR is not supported by hardware.

> +	 * More details can be found in OMAP4430 TRM section 4.3.4.2.
> +	 */
> +	omap4_enter_lowpower(cpu_id, PWRDM_POWER_OFF);
> +
> +	/* Restore next powerdomain state */
> +	list_for_each_entry(pwrst, &pwrst_list, node) {
> +		state = pwrdm_read_prev_pwrst(pwrst->pwrdm);
> +		if (state > pwrst->next_state) {
> +			pr_info("Powerdomain (%s) didn't enter "
> +			       "target state %d\n",
> +			       pwrst->pwrdm->name, pwrst->next_state);
> +			ret = -1;
> +		}
> +		omap_set_pwrdm_state(pwrst->pwrdm, pwrst->saved_state);
> +	}
> +	if (ret)
> +		pr_err("Could not enter target state in pm_suspend\n");

Without more details, this isn't terribly useful.  I'd suggest just
making the per-state one above pr_err().

> +	else
> +		pr_err("Successfully put all powerdomains to target state\n");

and this one pr_info.

>  	return 0;
>  }
>  
> @@ -97,14 +141,31 @@ static int __init pwrdms_setup(struct powerdomain *pwrdm, void *unused)
>  	if (!pwrdm->pwrsts)
>  		return 0;
>  
> +	/*
> +	 * Skip CPU0 and CPU1 power domains. CPU1 is programmed
> +	 * through hotplug path and CPU0 explicitly programmed
> +	 * further down in the code path
> +	 */
> +	if ((!strcmp(pwrdm->name, "cpu0_pwrdm")) ||
> +		(!strcmp(pwrdm->name, "cpu1_pwrdm")))

or just one compare using strncmp(pwrdm->name, "cpu", 3)

> +		return 0;
> +
> +	/*
> +	 * FIXME: Remove this check when core retention is supported
> +	 * Only MPUSS power domain is added in the list.
> +	 */
> +	if (strcmp(pwrdm->name, "mpu_pwrdm"))
> +		return 0;
> +
>  	pwrst = kmalloc(sizeof(struct power_state), GFP_ATOMIC);
>  	if (!pwrst)
>  		return -ENOMEM;
> +
>  	pwrst->pwrdm = pwrdm;
> -	pwrst->next_state = PWRDM_POWER_ON;
> +	pwrst->next_state = PWRDM_POWER_RET;
>  	list_add(&pwrst->node, &pwrst_list);
>  
> -	return pwrdm_set_next_pwrst(pwrst->pwrdm, pwrst->next_state);
> +	return omap_set_pwrdm_state(pwrst->pwrdm, pwrst->next_state);
>  }
>  
>  /**

Kevin

  reply	other threads:[~2011-09-15  0:27 UTC|newest]

Thread overview: 238+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-04 13:54 [PATCH 00/25] OMAP4: PM: suspend, CPU-hotplug and CPUilde support Santosh Shilimkar
2011-09-04 13:54 ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 01/25] ARM: mm: Add strongly ordered descriptor support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-13 20:23   ` Tony Lindgren
2011-09-13 20:23     ` Tony Lindgren
2011-09-14  5:36     ` Shilimkar, Santosh
2011-09-14  5:36       ` Shilimkar, Santosh
2011-09-04 13:54 ` [PATCH 02/25] OMAP4: Redefine mandatory barriers for OMAP to include interconnect barriers Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-13 20:27   ` Tony Lindgren
2011-09-13 20:27     ` Tony Lindgren
2011-09-14  5:39     ` Shilimkar, Santosh
2011-09-14  5:39       ` Shilimkar, Santosh
2011-09-14 10:24     ` Santosh
2011-09-14 10:24       ` Santosh
2011-09-15 17:17       ` Kevin Hilman
2011-09-15 17:17         ` Kevin Hilman
2011-09-15 17:24         ` Shilimkar, Santosh
2011-09-15 17:24           ` Shilimkar, Santosh
2011-09-15 17:53           ` Tony Lindgren
2011-09-15 17:53             ` Tony Lindgren
2011-09-15 18:22             ` Shilimkar, Santosh
2011-09-15 18:22               ` Shilimkar, Santosh
2011-09-15 19:43               ` Tony Lindgren
2011-09-15 19:43                 ` Tony Lindgren
2011-09-15 20:00                 ` Shilimkar, Santosh
2011-09-15 20:00                   ` Shilimkar, Santosh
2011-09-16 12:01                   ` Shilimkar, Santosh
2011-09-16 12:01                     ` Shilimkar, Santosh
2011-09-04 13:54 ` [PATCH 03/25] OMAP4: PM: Use custom omap_do_wfi() for suspend and default idle Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 04/25] OMAP4: Remove un-used do_wfi() macro Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 05/25] OMAP4: Use WARN_ON() instead of BUG_ON() with graceful exit Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-05 10:11   ` Sergei Shtylyov
2011-09-05 10:11     ` Sergei Shtylyov
2011-09-05 10:42     ` Santosh
2011-09-05 10:42       ` Santosh
2011-09-05 10:47       ` Russell King - ARM Linux
2011-09-05 10:47         ` Russell King - ARM Linux
2011-09-05 10:51         ` Santosh
2011-09-05 10:51           ` Santosh
2011-09-08 18:51           ` Jean Pihet
2011-09-08 18:51             ` Jean Pihet
2011-09-04 13:54 ` [PATCH 06/25] OMAP4: Export omap4_get_base*() rather than global address pointers Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 07/25] OMAP4: PM: Add SAR RAM support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 08/25] OMAP4: PM: Keep static dep between MPUSS-EMIF and MPUSS-L3 and DUCATI-L3 Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 18:06   ` Kevin Hilman
2011-09-08 18:06     ` Kevin Hilman
2011-09-09  4:21     ` Santosh
2011-09-09  4:21       ` Santosh
2011-09-04 13:54 ` [PATCH 09/25] OMAP4: PM: Avoid omap4_pm_init() on OMAP4430 ES1.0 Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 10/25] OMAP4: PM: Initialise all the clockdomains to supported states Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 11/25] OMAP: Add Secure HAL and monitor mode API infrastructure Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 18:58   ` Jean Pihet
2011-09-08 18:58     ` Jean Pihet
2011-09-09  4:22     ` Santosh
2011-09-09  4:22       ` Santosh
2011-09-04 13:54 ` [PATCH 12/25] OMAP: Add support to allocate the memory for secure RAM Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 19:19   ` Jean Pihet
2011-09-08 19:19     ` Jean Pihet
2011-09-09  9:43     ` Santosh
2011-09-09  9:43       ` Santosh
2011-09-09 12:54       ` Jean Pihet
2011-09-09 12:54         ` Jean Pihet
2011-09-09 14:09         ` Shilimkar, Santosh
2011-09-09 14:09           ` Shilimkar, Santosh
2011-09-04 13:54 ` [PATCH 13/25] OMAP4: PM: Add WakeupGen module as OMAP gic_arch_extn Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 18:27   ` Kevin Hilman
2011-09-08 18:27     ` Kevin Hilman
2011-09-09  4:29     ` Santosh
2011-09-09  4:29       ` Santosh
2011-09-09  7:19       ` Thomas Gleixner
2011-09-09  7:19         ` Thomas Gleixner
2011-09-09  8:07         ` Santosh
2011-09-09  8:07           ` Santosh
2011-09-09  8:18           ` Thomas Gleixner
2011-09-09  8:18             ` Thomas Gleixner
2011-09-09  9:05             ` Santosh
2011-09-09  9:05               ` Santosh
2011-09-12  7:56               ` Thomas Gleixner
2011-09-12  7:56                 ` Thomas Gleixner
2011-09-12  8:44                 ` Santosh
2011-09-12  8:44                   ` Santosh
2011-09-08 19:16   ` Jean Pihet
2011-09-08 19:16     ` Jean Pihet
2011-09-09  4:23     ` Santosh
2011-09-09  4:23       ` Santosh
2011-09-13 20:36   ` Tony Lindgren
2011-09-13 20:36     ` Tony Lindgren
2011-09-14  5:34     ` Shilimkar, Santosh
2011-09-14  5:34       ` Shilimkar, Santosh
2011-09-14 15:21       ` Tony Lindgren
2011-09-14 15:21         ` Tony Lindgren
2011-09-14 16:49         ` Santosh
2011-09-14 16:49           ` Santosh
2011-09-14 17:08           ` Tony Lindgren
2011-09-14 17:08             ` Tony Lindgren
2011-09-14 17:13             ` Santosh
2011-09-14 17:13               ` Santosh
2011-09-14 17:18               ` Tony Lindgren
2011-09-14 17:18                 ` Tony Lindgren
2011-09-14 17:21                 ` Santosh
2011-09-14 17:21                   ` Santosh
2011-09-14 17:22                 ` Santosh
2011-09-14 17:22                   ` Santosh
2011-09-14 19:04                   ` Tony Lindgren
2011-09-14 19:04                     ` Tony Lindgren
2011-09-15  2:57                     ` Santosh
2011-09-15  2:57                       ` Santosh
2011-09-15  9:36                   ` Cousson, Benoit
2011-09-15  9:36                     ` Cousson, Benoit
2011-09-15 12:02                     ` Shilimkar, Santosh
2011-09-15 12:02                       ` Shilimkar, Santosh
2011-09-15 13:29                       ` Woodruff, Richard
2011-09-15 13:29                         ` Woodruff, Richard
2011-09-04 13:54 ` [PATCH 14/25] OMAP4: PM: Add CPUX OFF mode support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 19:39   ` Jean Pihet
2011-09-08 19:39     ` Jean Pihet
2011-09-09  9:59     ` Santosh
2011-09-09  9:59       ` Santosh
2011-09-09  8:04   ` Shawn Guo
2011-09-09  8:04     ` Shawn Guo
2011-09-09  8:09     ` Santosh
2011-09-09  8:09       ` Santosh
2011-09-09 14:13       ` Shawn Guo
2011-09-09 14:13         ` Shawn Guo
2011-09-09 14:11         ` Shilimkar, Santosh
2011-09-09 14:11           ` Shilimkar, Santosh
2011-09-09 15:27           ` Shawn Guo
2011-09-09 15:27             ` Shawn Guo
2011-09-09 16:59             ` Santosh
2011-09-09 16:59               ` Santosh
2011-09-09 18:34               ` Kevin Hilman
2011-09-09 18:34                 ` Kevin Hilman
2011-09-10  3:39                 ` Shilimkar, Santosh
2011-09-10  3:39                   ` Shilimkar, Santosh
2011-09-09 23:34               ` Shawn Guo
2011-09-09 23:34                 ` Shawn Guo
2011-09-10  3:38                 ` Shilimkar, Santosh
2011-09-10  3:38                   ` Shilimkar, Santosh
2011-09-10  4:54                   ` Shawn Guo
2011-09-10  4:54                     ` Shawn Guo
2011-09-10  5:51                     ` Santosh
2011-09-10  5:51                       ` Santosh
2011-09-12 21:06   ` Kevin Hilman
2011-09-12 21:06     ` Kevin Hilman
2011-09-13  5:39     ` Santosh
2011-09-13  5:39       ` Santosh
2011-09-13 17:33       ` Kevin Hilman
2011-09-13 17:33         ` Kevin Hilman
2011-09-14  5:26         ` Shilimkar, Santosh
2011-09-14  5:26           ` Shilimkar, Santosh
2011-09-04 13:54 ` [PATCH 15/25] OMAP4: Remove __INIT from omap_secondary_startup() to re-use it for hotplug Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 16/25] OMAP4: PM: Program CPU1 to hit OFF when off-lined Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-12 21:12   ` Kevin Hilman
2011-09-12 21:12     ` Kevin Hilman
2011-09-13  5:35     ` Santosh
2011-09-13  5:35       ` Santosh
2011-09-04 13:54 ` [PATCH 17/25] OMAP4: PM: CPU1 wakeup workaround from Low power modes Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 18/25] OMAP4: suspend: Add MPUSS power domain RETENTION support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-15  0:27   ` Kevin Hilman [this message]
2011-09-15  0:27     ` Kevin Hilman
2011-09-15  3:19     ` Santosh
2011-09-15  3:19       ` Santosh
2011-09-04 13:54 ` [PATCH 19/25] OMAP4: PM: Add WakeupGen and secure GIC low power support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-04 13:54 ` [PATCH 20/25] OMAP4: PM: Add L2X0 cache lowpower support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-05 14:01   ` Lorenzo Pieralisi
2011-09-05 14:01     ` Lorenzo Pieralisi
2011-09-05 14:13     ` Santosh
2011-09-05 14:13       ` Santosh
2011-09-16 17:23   ` Kevin Hilman
2011-09-16 17:23     ` Kevin Hilman
2011-09-18  8:46     ` Santosh
2011-09-18  8:46       ` Santosh
2011-09-04 13:54 ` [PATCH 21/25] OMAP4: PM: Add MPUSS power domain OSWR support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-12 18:52   ` Kevin Hilman
2011-09-12 18:52     ` Kevin Hilman
2011-09-13  5:37     ` Santosh
2011-09-13  5:37       ` Santosh
2011-09-13  7:39       ` Jean Pihet
2011-09-13  7:39         ` Jean Pihet
2011-09-13  8:25         ` Santosh
2011-09-13  8:25           ` Santosh
2011-09-04 13:54 ` [PATCH 22/25] OMAP4: PM: Add power domain statistics support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-05 10:08   ` Sergei Shtylyov
2011-09-05 10:08     ` Sergei Shtylyov
2011-09-05 10:43     ` Santosh
2011-09-05 10:43       ` Santosh
2011-09-04 13:54 ` [PATCH 23/25] OMAP4: PM: Add CPUidle support Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-16 17:45   ` Kevin Hilman
2011-09-16 17:45     ` Kevin Hilman
2011-09-18  8:47     ` Santosh
2011-09-18  8:47       ` Santosh
2011-09-04 13:54 ` [PATCH 24/25] OMAP4: cpuidle: Switch to gptimer from twd in deeper C-states Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-16 17:51   ` Kevin Hilman
2011-09-16 17:51     ` Kevin Hilman
2011-09-18  8:48     ` Santosh
2011-09-18  8:48       ` Santosh
2011-09-04 13:54 ` [PATCH 25/25] OMAP3: CPUidle: Make use of CPU PM notifiers Santosh Shilimkar
2011-09-04 13:54   ` Santosh Shilimkar
2011-09-08 17:57   ` Kevin Hilman
2011-09-08 17:57     ` Kevin Hilman
2011-09-09  4:20     ` Santosh
2011-09-09  4:20       ` Santosh
2011-09-09  7:17     ` Santosh
2011-09-09  7:17       ` Santosh
2011-09-08 20:15 ` [PATCH 00/25] OMAP4: PM: suspend, CPU-hotplug and CPUilde support Jean Pihet
2011-09-08 20:15   ` Jean Pihet
2011-09-09  4:25   ` Santosh
2011-09-09  4:25     ` Santosh
2011-09-20 11:24 ` Vishwanath Sripathy
2011-09-20 11:24   ` Vishwanath Sripathy
2011-09-20 11:37   ` Santosh
2011-09-20 11:37     ` Santosh
2011-09-20 11:57 ` Santosh
2011-09-20 11:57   ` Santosh

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=87ty8e8xam.fsf@ti.com \
    --to=khilman@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=rnayak@ti.com \
    --cc=santosh.shilimkar@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.