All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv4 0/1]OMAP3: AM3505/3517 do not have IO wakeup capability
@ 2010-06-29  8:40 Stanley.Miao
  2010-06-29  8:40 ` [PATCHv4 1/1] OMAP3: " Stanley.Miao
  0 siblings, 1 reply; 4+ messages in thread
From: Stanley.Miao @ 2010-06-29  8:40 UTC (permalink / raw)
  To: linux-omap; +Cc: khilman

Changes from V3:
1, Tested on AM3517EVM and OMAP3530EVM.

Stanley.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCHv4 1/1] OMAP3: AM3505/3517 do not have IO wakeup capability
  2010-06-29  8:40 [PATCHv4 0/1]OMAP3: AM3505/3517 do not have IO wakeup capability Stanley.Miao
@ 2010-06-29  8:40 ` Stanley.Miao
  2010-06-29 15:12   ` Kevin Hilman
  2010-07-07 11:49   ` [APPLIED] " Tony Lindgren
  0 siblings, 2 replies; 4+ messages in thread
From: Stanley.Miao @ 2010-06-29  8:40 UTC (permalink / raw)
  To: linux-omap; +Cc: khilman

AM3505/3517 doesn't have IO wakeup capability, so we do not need to set
the bit OMAP3430_EN_IO and the bit OMAP3430_EN_IO_CHAIN in the register
PM_WKEN_WKUP when the system enters suspend state.

Tested on AM3517EVM and OMAP3530EVM.

Signed-off-by: Stanley.Miao <stanley.miao@windriver.com>
---
 arch/arm/mach-omap2/id.c              |    2 ++
 arch/arm/mach-omap2/pm34xx.c          |    7 ++++---
 arch/arm/plat-omap/include/plat/cpu.h |    2 ++
 3 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
index 37b8a1a..67bd971 100644
--- a/arch/arm/mach-omap2/id.c
+++ b/arch/arm/mach-omap2/id.c
@@ -179,6 +179,8 @@ void __init omap3_check_features(void)
 	OMAP3_CHECK_FEATURE(status, ISP);
 	if (cpu_is_omap3630())
 		omap3_features |= OMAP3_HAS_192MHZ_CLK;
+	if (!cpu_is_omap3505() && !cpu_is_omap3517())
+		omap3_features |= OMAP3_HAS_IO_WAKEUP;
 
 	/*
 	 * TODO: Get additional info (where applicable)
diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
index b88737f..fb4994a 100644
--- a/arch/arm/mach-omap2/pm34xx.c
+++ b/arch/arm/mach-omap2/pm34xx.c
@@ -385,8 +385,9 @@ void omap_sram_idle(void)
 	/* Enable IO-PAD and IO-CHAIN wakeups */
 	per_next_state = pwrdm_read_next_pwrst(per_pwrdm);
 	core_next_state = pwrdm_read_next_pwrst(core_pwrdm);
-	if (per_next_state < PWRDM_POWER_ON ||
-			core_next_state < PWRDM_POWER_ON) {
+	if (omap3_has_io_wakeup() && \
+			(per_next_state < PWRDM_POWER_ON ||
+			core_next_state < PWRDM_POWER_ON)) {
 		prm_set_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN);
 		omap3_enable_io_chain();
 	}
@@ -479,7 +480,7 @@ void omap_sram_idle(void)
 	}
 
 	/* Disable IO-PAD and IO-CHAIN wakeup */
-	if (core_next_state < PWRDM_POWER_ON) {
+	if (omap3_has_io_wakeup() && core_next_state < PWRDM_POWER_ON) {
 		prm_clear_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN);
 		omap3_disable_io_chain();
 	}
diff --git a/arch/arm/plat-omap/include/plat/cpu.h b/arch/arm/plat-omap/include/plat/cpu.h
index 7514174..aa2f4f0 100644
--- a/arch/arm/plat-omap/include/plat/cpu.h
+++ b/arch/arm/plat-omap/include/plat/cpu.h
@@ -444,6 +444,7 @@ extern u32 omap3_features;
 #define OMAP3_HAS_NEON			BIT(3)
 #define OMAP3_HAS_ISP			BIT(4)
 #define OMAP3_HAS_192MHZ_CLK		BIT(5)
+#define OMAP3_HAS_IO_WAKEUP		BIT(6)
 
 #define OMAP3_HAS_FEATURE(feat,flag)			\
 static inline unsigned int omap3_has_ ##feat(void)	\
@@ -457,5 +458,6 @@ OMAP3_HAS_FEATURE(iva, IVA)
 OMAP3_HAS_FEATURE(neon, NEON)
 OMAP3_HAS_FEATURE(isp, ISP)
 OMAP3_HAS_FEATURE(192mhz_clk, 192MHZ_CLK)
+OMAP3_HAS_FEATURE(io_wakeup, IO_WAKEUP)
 
 #endif
-- 
1.5.4.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCHv4 1/1] OMAP3: AM3505/3517 do not have IO wakeup capability
  2010-06-29  8:40 ` [PATCHv4 1/1] OMAP3: " Stanley.Miao
@ 2010-06-29 15:12   ` Kevin Hilman
  2010-07-07 11:49   ` [APPLIED] " Tony Lindgren
  1 sibling, 0 replies; 4+ messages in thread
From: Kevin Hilman @ 2010-06-29 15:12 UTC (permalink / raw)
  To: Stanley.Miao; +Cc: linux-omap

"Stanley.Miao" <stanley.miao@windriver.com> writes:

> AM3505/3517 doesn't have IO wakeup capability, so we do not need to set
> the bit OMAP3430_EN_IO and the bit OMAP3430_EN_IO_CHAIN in the register
> PM_WKEN_WKUP when the system enters suspend state.
>
> Tested on AM3517EVM and OMAP3530EVM.
>
> Signed-off-by: Stanley.Miao <stanley.miao@windriver.com>

Acked-by: Kevin Hilman <khilman@deeprootsystems.com>

> ---
>  arch/arm/mach-omap2/id.c              |    2 ++
>  arch/arm/mach-omap2/pm34xx.c          |    7 ++++---
>  arch/arm/plat-omap/include/plat/cpu.h |    2 ++
>  3 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c
> index 37b8a1a..67bd971 100644
> --- a/arch/arm/mach-omap2/id.c
> +++ b/arch/arm/mach-omap2/id.c
> @@ -179,6 +179,8 @@ void __init omap3_check_features(void)
>  	OMAP3_CHECK_FEATURE(status, ISP);
>  	if (cpu_is_omap3630())
>  		omap3_features |= OMAP3_HAS_192MHZ_CLK;
> +	if (!cpu_is_omap3505() && !cpu_is_omap3517())
> +		omap3_features |= OMAP3_HAS_IO_WAKEUP;
>  
>  	/*
>  	 * TODO: Get additional info (where applicable)
> diff --git a/arch/arm/mach-omap2/pm34xx.c b/arch/arm/mach-omap2/pm34xx.c
> index b88737f..fb4994a 100644
> --- a/arch/arm/mach-omap2/pm34xx.c
> +++ b/arch/arm/mach-omap2/pm34xx.c
> @@ -385,8 +385,9 @@ void omap_sram_idle(void)
>  	/* Enable IO-PAD and IO-CHAIN wakeups */
>  	per_next_state = pwrdm_read_next_pwrst(per_pwrdm);
>  	core_next_state = pwrdm_read_next_pwrst(core_pwrdm);
> -	if (per_next_state < PWRDM_POWER_ON ||
> -			core_next_state < PWRDM_POWER_ON) {
> +	if (omap3_has_io_wakeup() && \
> +			(per_next_state < PWRDM_POWER_ON ||
> +			core_next_state < PWRDM_POWER_ON)) {
>  		prm_set_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN);
>  		omap3_enable_io_chain();
>  	}
> @@ -479,7 +480,7 @@ void omap_sram_idle(void)
>  	}
>  
>  	/* Disable IO-PAD and IO-CHAIN wakeup */
> -	if (core_next_state < PWRDM_POWER_ON) {
> +	if (omap3_has_io_wakeup() && core_next_state < PWRDM_POWER_ON) {
>  		prm_clear_mod_reg_bits(OMAP3430_EN_IO_MASK, WKUP_MOD, PM_WKEN);
>  		omap3_disable_io_chain();
>  	}
> diff --git a/arch/arm/plat-omap/include/plat/cpu.h b/arch/arm/plat-omap/include/plat/cpu.h
> index 7514174..aa2f4f0 100644
> --- a/arch/arm/plat-omap/include/plat/cpu.h
> +++ b/arch/arm/plat-omap/include/plat/cpu.h
> @@ -444,6 +444,7 @@ extern u32 omap3_features;
>  #define OMAP3_HAS_NEON			BIT(3)
>  #define OMAP3_HAS_ISP			BIT(4)
>  #define OMAP3_HAS_192MHZ_CLK		BIT(5)
> +#define OMAP3_HAS_IO_WAKEUP		BIT(6)
>  
>  #define OMAP3_HAS_FEATURE(feat,flag)			\
>  static inline unsigned int omap3_has_ ##feat(void)	\
> @@ -457,5 +458,6 @@ OMAP3_HAS_FEATURE(iva, IVA)
>  OMAP3_HAS_FEATURE(neon, NEON)
>  OMAP3_HAS_FEATURE(isp, ISP)
>  OMAP3_HAS_FEATURE(192mhz_clk, 192MHZ_CLK)
> +OMAP3_HAS_FEATURE(io_wakeup, IO_WAKEUP)
>  
>  #endif

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [APPLIED] [PATCHv4 1/1] OMAP3: AM3505/3517 do not have IO wakeup capability
  2010-06-29  8:40 ` [PATCHv4 1/1] OMAP3: " Stanley.Miao
  2010-06-29 15:12   ` Kevin Hilman
@ 2010-07-07 11:49   ` Tony Lindgren
  1 sibling, 0 replies; 4+ messages in thread
From: Tony Lindgren @ 2010-07-07 11:49 UTC (permalink / raw)
  To: linux-omap

This patch has been applied to the linux-omap
by youw fwiendly patch wobot.

Branch in linux-omap: for-next

Initial commit ID (Likely to change): b6c6aa94d0dd3dd05f42412fc39628520f72f63e

PatchWorks
http://patchwork.kernel.org/patch/108524/

Git (Likely to change, and takes a while to get mirrored)
http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=commit;h=b6c6aa94d0dd3dd05f42412fc39628520f72f63e



^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-07-07 11:49 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-29  8:40 [PATCHv4 0/1]OMAP3: AM3505/3517 do not have IO wakeup capability Stanley.Miao
2010-06-29  8:40 ` [PATCHv4 1/1] OMAP3: " Stanley.Miao
2010-06-29 15:12   ` Kevin Hilman
2010-07-07 11:49   ` [APPLIED] " Tony Lindgren

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.