All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dave Gerlach <d-gerlach@ti.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Nishanth Menon <nm@ti.com>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Tero Kristo <t-kristo@ti.com>,
	Richard Woodruff <r-woodruff2@ti.com>,
	linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] ARM: OMAP3: Fix external abort on 36xx waking from off mode idle
Date: Wed, 13 Apr 2016 20:52:28 -0500	[thread overview]
Message-ID: <570EF7DC.1010504@ti.com> (raw)
In-Reply-To: <20160413193003.GW5995@atomide.com>

On 04/13/2016 02:30 PM, Tony Lindgren wrote:
> * Dave Gerlach <d-gerlach@ti.com> [160412 08:45]:
>> --- a/arch/arm/mach-omap2/pm34xx.c
>> +++ b/arch/arm/mach-omap2/pm34xx.c
>> @@ -268,7 +268,6 @@ void omap_sram_idle(void)
>>  	int per_next_state = PWRDM_POWER_ON;
>>  	int core_next_state = PWRDM_POWER_ON;
>>  	int per_going_off;
>> -	int core_prev_state;
>>  	u32 sdrc_pwr = 0;
>>  
>>  	mpu_next_state = pwrdm_read_next_pwrst(mpu_pwrdm);
>> @@ -348,17 +347,21 @@ void omap_sram_idle(void)
>>  		sdrc_write_reg(sdrc_pwr, SDRC_POWER);
>>  
>>  	/* CORE */
>> -	if (core_next_state < PWRDM_POWER_ON) {
>> -		core_prev_state = pwrdm_read_prev_pwrst(core_pwrdm);
>> -		if (core_prev_state == PWRDM_POWER_OFF) {
>> -			omap3_core_restore_context();
>> -			omap3_cm_restore_context();
>> -			omap3_push_sram_idle();
>> -			omap3_push_sram_secure_idle();
>> -			omap2_sms_restore_context();
>> -		}
>> +	if (core_next_state < PWRDM_POWER_ON &&
>> +	    pwrdm_read_prev_pwrst(core_pwrdm) == PWRDM_POWER_OFF) {
>> +		omap3_core_restore_context();
>> +		omap3_cm_restore_context();
>> +		omap3_push_sram_idle();
>> +		omap3_push_sram_secure_idle();
>> +		omap2_sms_restore_context();
>> +	} else {
>> +		/*
>> +		 * In off-mode resume path above, omap3_core_restore_context
>> +		 * also handles the INTC autoidle restore done here so limit
>> +		 * this to non-off mode resume paths so we don't do it twice.
>> +		 */
>> +		omap3_intc_resume_idle();
>>  	}
>> -	omap3_intc_resume_idle();
>>  
>>  	pwrdm_post_transition(NULL);
> 
> Can you please repost against v4.7-rc? This does not apply as
> mainline still uses omap3_sram_restore_context(). Should be
> retested again with your patches applied on top of this fix.
> 

Whoops, complete oversight on my part, retested and reported here:
https://patchwork.kernel.org/patch/8830421/

Tests showed the exact same behavior, no abort with or without patch, with my
sram series on top there was also no abort, but if I remove the fix patch the
abort comes back.

Regards,
Dave

> Regards,
> 
> Tony
> 

WARNING: multiple messages have this Message-ID (diff)
From: d-gerlach@ti.com (Dave Gerlach)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: OMAP3: Fix external abort on 36xx waking from off mode idle
Date: Wed, 13 Apr 2016 20:52:28 -0500	[thread overview]
Message-ID: <570EF7DC.1010504@ti.com> (raw)
In-Reply-To: <20160413193003.GW5995@atomide.com>

On 04/13/2016 02:30 PM, Tony Lindgren wrote:
> * Dave Gerlach <d-gerlach@ti.com> [160412 08:45]:
>> --- a/arch/arm/mach-omap2/pm34xx.c
>> +++ b/arch/arm/mach-omap2/pm34xx.c
>> @@ -268,7 +268,6 @@ void omap_sram_idle(void)
>>  	int per_next_state = PWRDM_POWER_ON;
>>  	int core_next_state = PWRDM_POWER_ON;
>>  	int per_going_off;
>> -	int core_prev_state;
>>  	u32 sdrc_pwr = 0;
>>  
>>  	mpu_next_state = pwrdm_read_next_pwrst(mpu_pwrdm);
>> @@ -348,17 +347,21 @@ void omap_sram_idle(void)
>>  		sdrc_write_reg(sdrc_pwr, SDRC_POWER);
>>  
>>  	/* CORE */
>> -	if (core_next_state < PWRDM_POWER_ON) {
>> -		core_prev_state = pwrdm_read_prev_pwrst(core_pwrdm);
>> -		if (core_prev_state == PWRDM_POWER_OFF) {
>> -			omap3_core_restore_context();
>> -			omap3_cm_restore_context();
>> -			omap3_push_sram_idle();
>> -			omap3_push_sram_secure_idle();
>> -			omap2_sms_restore_context();
>> -		}
>> +	if (core_next_state < PWRDM_POWER_ON &&
>> +	    pwrdm_read_prev_pwrst(core_pwrdm) == PWRDM_POWER_OFF) {
>> +		omap3_core_restore_context();
>> +		omap3_cm_restore_context();
>> +		omap3_push_sram_idle();
>> +		omap3_push_sram_secure_idle();
>> +		omap2_sms_restore_context();
>> +	} else {
>> +		/*
>> +		 * In off-mode resume path above, omap3_core_restore_context
>> +		 * also handles the INTC autoidle restore done here so limit
>> +		 * this to non-off mode resume paths so we don't do it twice.
>> +		 */
>> +		omap3_intc_resume_idle();
>>  	}
>> -	omap3_intc_resume_idle();
>>  
>>  	pwrdm_post_transition(NULL);
> 
> Can you please repost against v4.7-rc? This does not apply as
> mainline still uses omap3_sram_restore_context(). Should be
> retested again with your patches applied on top of this fix.
> 

Whoops, complete oversight on my part, retested and reported here:
https://patchwork.kernel.org/patch/8830421/

Tests showed the exact same behavior, no abort with or without patch, with my
sram series on top there was also no abort, but if I remove the fix patch the
abort comes back.

Regards,
Dave

> Regards,
> 
> Tony
> 

  reply	other threads:[~2016-04-14  1:52 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-12 15:43 [PATCH] ARM: OMAP3: Fix external abort on 36xx waking from off mode idle Dave Gerlach
2016-04-12 15:43 ` Dave Gerlach
2016-04-13 19:30 ` Tony Lindgren
2016-04-13 19:30   ` Tony Lindgren
2016-04-14  1:52   ` Dave Gerlach [this message]
2016-04-14  1:52     ` Dave Gerlach

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=570EF7DC.1010504@ti.com \
    --to=d-gerlach@ti.com \
    --cc=grygorii.strashko@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=nm@ti.com \
    --cc=r-woodruff2@ti.com \
    --cc=t-kristo@ti.com \
    --cc=tony@atomide.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.