[v2,1/1] ARM: DRA7: hwmod: fix gpmc hwmod
diff mbox

Message ID 556EF548.5040104@ti.com
State New
Headers show

Commit Message

Roger Quadros June 3, 2015, 12:38 p.m. UTC
GPMC smart idle is not really broken but it does not support
smart idle with wakeup.

Fixes: 556708fe8718 ("ARM: OMAP: DRA7: hwmod: Make gpmc software supervised as the smart idle is broken")

Signed-off-by: Roger Quadros <rogerq@ti.com>
---
v2 - Rebased on top of for-v4.2/omap-hwmod-a
Patch 2/2 is no longer needed

  arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 5 ++---
  1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Roger Quadros July 8, 2015, 2:16 p.m. UTC | #1
Paul/Tony,

On 03/06/15 15:38, Roger Quadros wrote:
> GPMC smart idle is not really broken but it does not support
> smart idle with wakeup.
> 
> Fixes: 556708fe8718 ("ARM: OMAP: DRA7: hwmod: Make gpmc software supervised as the smart idle is broken")
> 
> Signed-off-by: Roger Quadros <rogerq@ti.com>

> ---
> v2 - Rebased on top of for-v4.2/omap-hwmod-a
> Patch 2/2 is no longer needed
> 
>  arch/arm/mach-omap2/omap_hwmod_7xx_data.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> index a0411f3..152526a 100644
> --- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
> @@ -820,7 +820,7 @@ static struct omap_hwmod dra7xx_gpmc_hwmod = {
>      .class        = &dra7xx_gpmc_hwmod_class,
>      .clkdm_name    = "l3main1_clkdm",
>      /* Skip reset for CONFIG_OMAP_GPMC_DEBUG for bootloader timings */
> -    .flags        = HWMOD_SWSUP_SIDLE | DEBUG_OMAP_GPMC_HWMOD_FLAGS,
> +    .flags        = DEBUG_OMAP_GPMC_HWMOD_FLAGS,
>      .main_clk    = "l3_iclk_div",
>      .prcm = {
>          .omap4 = {
> @@ -1421,8 +1421,7 @@ static struct omap_hwmod_class_sysconfig dra7xx_ocp2scp_sysc = {
>      .syss_offs    = 0x0014,
>      .sysc_flags    = (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE |
>                 SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
> -    .idlemodes    = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
> -               SIDLE_SMART_WKUP),
> +    .idlemodes    = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),

This bit is wrong. We're modifying ocp2scp idlemode instead of gpmc idle mode.

I'll resend this. Hope this is not already in your v4.2-rc queue.

>      .sysc_fields    = &omap_hwmod_sysc_type1,
>  };
>  

cheers,
-roger
--
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

Patch
diff mbox

diff --git a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
index a0411f3..152526a 100644
--- a/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
+++ b/arch/arm/mach-omap2/omap_hwmod_7xx_data.c
@@ -820,7 +820,7 @@  static struct omap_hwmod dra7xx_gpmc_hwmod = {
  	.class		= &dra7xx_gpmc_hwmod_class,
  	.clkdm_name	= "l3main1_clkdm",
  	/* Skip reset for CONFIG_OMAP_GPMC_DEBUG for bootloader timings */
-	.flags		= HWMOD_SWSUP_SIDLE | DEBUG_OMAP_GPMC_HWMOD_FLAGS,
+	.flags		= DEBUG_OMAP_GPMC_HWMOD_FLAGS,
  	.main_clk	= "l3_iclk_div",
  	.prcm = {
  		.omap4 = {
@@ -1421,8 +1421,7 @@  static struct omap_hwmod_class_sysconfig dra7xx_ocp2scp_sysc = {
  	.syss_offs	= 0x0014,
  	.sysc_flags	= (SYSC_HAS_AUTOIDLE | SYSC_HAS_SIDLEMODE |
  			   SYSC_HAS_SOFTRESET | SYSS_HAS_RESET_STATUS),
-	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
-			   SIDLE_SMART_WKUP),
+	.idlemodes	= (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART),
  	.sysc_fields	= &omap_hwmod_sysc_type1,
  };