From: Santosh <santosh.shilimkar@ti.com>
To: Shawn Guo <shawn.guo@freescale.com>
Cc: khilman@ti.com, linux-omap@vger.kernel.org,
linux@arm.linux.org.uk, linux-arm-kernel@lists.infradead.org,
rnayak@ti.com
Subject: Re: [PATCH 14/25] OMAP4: PM: Add CPUX OFF mode support
Date: Fri, 09 Sep 2011 13:39:51 +0530 [thread overview]
Message-ID: <4E69C9CF.6090709@ti.com> (raw)
In-Reply-To: <20110909080416.GF31581@S2100-06.ap.freescale.net>
On Friday 09 September 2011 01:34 PM, Shawn Guo wrote:
> Hi Santosh,
>
> On Sun, Sep 04, 2011 at 07:24:15PM +0530, Santosh Shilimkar wrote:
>> This patch adds the CPU0 and CPU1 off mode support. CPUX close switch
>> retention (CSWR) is not supported by hardware design.
>>
>> The CPUx OFF mode isn't supported on OMAP4430 ES1.0
>>
>> CPUx sleep code is common for hotplug, suspend and CPUilde.
>>
>> Signed-off-by: Santosh Shilimkar<santosh.shilimkar@ti.com>
>> Cc: Kevin Hilman<khilman@ti.com>
>> ---
>> arch/arm/mach-omap2/Makefile | 3 +-
>> arch/arm/mach-omap2/include/mach/omap-secure.h | 8 +
>> arch/arm/mach-omap2/include/mach/omap4-common.h | 25 +++
>> arch/arm/mach-omap2/omap-mpuss-lowpower.c | 249 +++++++++++++++++++++++
>> arch/arm/mach-omap2/omap-smp.c | 6 +
>> arch/arm/mach-omap2/omap4-sar-layout.h | 9 +
>> arch/arm/mach-omap2/pm44xx.c | 6 +
>> arch/arm/mach-omap2/sleep44xx.S | 213 +++++++++++++++++++
>> 8 files changed, 518 insertions(+), 1 deletions(-)
>> create mode 100644 arch/arm/mach-omap2/omap-mpuss-lowpower.c
>>
>
> [...]
>
>> diff --git a/arch/arm/mach-omap2/sleep44xx.S b/arch/arm/mach-omap2/sleep44xx.S
>> index 049f426..230ab8c 100644
>> --- a/arch/arm/mach-omap2/sleep44xx.S
>> +++ b/arch/arm/mach-omap2/sleep44xx.S
>> @@ -11,8 +11,221 @@
>>
>> #include<linux/linkage.h>
>> #include<asm/system.h>
>> +#include<asm/smp_scu.h>
>> +#include<asm/memory.h>
>> +#include<asm/hardware/cache-l2x0.h>
>>
>> +#include<plat/omap44xx.h>
>> #include<mach/omap4-common.h>
>> +#include<mach/omap-secure.h>
>> +
>> +#include "omap4-sar-layout.h"
>> +
>> +#ifdef CONFIG_SMP
>> +
>> +.macro DO_SMC
>> + dsb
>> + smc #0
>> + dsb
>> +.endm
>> +
>> +ppa_zero_params:
>> + .word 0x0
>> +
>> +/*
>> + * =============================
>> + * == CPU suspend finisher ==
>> + * =============================
>> + *
>> + * void omap4_finish_suspend(unsigned long cpu_state)
>> + *
>> + * This function code saves the CPU context and performs the CPU
>> + * power down sequence. Calling WFI effectively changes the CPU
>> + * power domains states to the desired target power state.
>> + *
>> + * @cpu_state : contains context save state (r0)
>> + * 0 - No context lost
>> + * 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: MPUSS OFF
>
> I was told by rmk that same as imx6q, omap44xx will retain L2 content
> across suspen/resume cycle. Then what does "L2 lost" mean here? Or
> what rmk meant is the case cpu_state == 2?
>
Yes.
The last case is entire SOC OFF. We call Device OFF in OMAP.
All voltages will scale to 0 V. This isn't supported by this
series.
Regards
Santosh
WARNING: multiple messages have this Message-ID (diff)
From: santosh.shilimkar@ti.com (Santosh)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 14/25] OMAP4: PM: Add CPUX OFF mode support
Date: Fri, 09 Sep 2011 13:39:51 +0530 [thread overview]
Message-ID: <4E69C9CF.6090709@ti.com> (raw)
In-Reply-To: <20110909080416.GF31581@S2100-06.ap.freescale.net>
On Friday 09 September 2011 01:34 PM, Shawn Guo wrote:
> Hi Santosh,
>
> On Sun, Sep 04, 2011 at 07:24:15PM +0530, Santosh Shilimkar wrote:
>> This patch adds the CPU0 and CPU1 off mode support. CPUX close switch
>> retention (CSWR) is not supported by hardware design.
>>
>> The CPUx OFF mode isn't supported on OMAP4430 ES1.0
>>
>> CPUx sleep code is common for hotplug, suspend and CPUilde.
>>
>> Signed-off-by: Santosh Shilimkar<santosh.shilimkar@ti.com>
>> Cc: Kevin Hilman<khilman@ti.com>
>> ---
>> arch/arm/mach-omap2/Makefile | 3 +-
>> arch/arm/mach-omap2/include/mach/omap-secure.h | 8 +
>> arch/arm/mach-omap2/include/mach/omap4-common.h | 25 +++
>> arch/arm/mach-omap2/omap-mpuss-lowpower.c | 249 +++++++++++++++++++++++
>> arch/arm/mach-omap2/omap-smp.c | 6 +
>> arch/arm/mach-omap2/omap4-sar-layout.h | 9 +
>> arch/arm/mach-omap2/pm44xx.c | 6 +
>> arch/arm/mach-omap2/sleep44xx.S | 213 +++++++++++++++++++
>> 8 files changed, 518 insertions(+), 1 deletions(-)
>> create mode 100644 arch/arm/mach-omap2/omap-mpuss-lowpower.c
>>
>
> [...]
>
>> diff --git a/arch/arm/mach-omap2/sleep44xx.S b/arch/arm/mach-omap2/sleep44xx.S
>> index 049f426..230ab8c 100644
>> --- a/arch/arm/mach-omap2/sleep44xx.S
>> +++ b/arch/arm/mach-omap2/sleep44xx.S
>> @@ -11,8 +11,221 @@
>>
>> #include<linux/linkage.h>
>> #include<asm/system.h>
>> +#include<asm/smp_scu.h>
>> +#include<asm/memory.h>
>> +#include<asm/hardware/cache-l2x0.h>
>>
>> +#include<plat/omap44xx.h>
>> #include<mach/omap4-common.h>
>> +#include<mach/omap-secure.h>
>> +
>> +#include "omap4-sar-layout.h"
>> +
>> +#ifdef CONFIG_SMP
>> +
>> +.macro DO_SMC
>> + dsb
>> + smc #0
>> + dsb
>> +.endm
>> +
>> +ppa_zero_params:
>> + .word 0x0
>> +
>> +/*
>> + * =============================
>> + * == CPU suspend finisher ==
>> + * =============================
>> + *
>> + * void omap4_finish_suspend(unsigned long cpu_state)
>> + *
>> + * This function code saves the CPU context and performs the CPU
>> + * power down sequence. Calling WFI effectively changes the CPU
>> + * power domains states to the desired target power state.
>> + *
>> + * @cpu_state : contains context save state (r0)
>> + * 0 - No context lost
>> + * 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: MPUSS OFF
>
> I was told by rmk that same as imx6q, omap44xx will retain L2 content
> across suspen/resume cycle. Then what does "L2 lost" mean here? Or
> what rmk meant is the case cpu_state == 2?
>
Yes.
The last case is entire SOC OFF. We call Device OFF in OMAP.
All voltages will scale to 0 V. This isn't supported by this
series.
Regards
Santosh
next prev parent reply other threads:[~2011-09-09 8:09 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 [this message]
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
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=4E69C9CF.6090709@ti.com \
--to=santosh.shilimkar@ti.com \
--cc=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=shawn.guo@freescale.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.