public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: t.figa@samsung•com (Tomasz Figa)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH v2] ARM: save/restore diagnostic register on Cortex-A9 suspend/resume
Date: Tue, 01 Jul 2014 18:26:05 +0200	[thread overview]
Message-ID: <53B2E11D.5000507@samsung.com> (raw)
In-Reply-To: <20140701144417.GV32514@n2100.arm.linux.org.uk>

On 01.07.2014 16:44, Russell King - ARM Linux wrote:
> On Tue, Jun 24, 2014 at 07:40:27PM +0200, Tomasz Figa wrote:
>> Hi Will,
>>
>> On 24.06.2014 18:33, Will Deacon wrote:
>>> On Tue, Jun 24, 2014 at 05:28:54PM +0100, Tomasz Figa wrote:
>>>> Hi Shawn,
>>>>
>>>> On 22.06.2014 12:15, Shawn Guo wrote:
>>>>> The CP15 diagnostic register holds ARM errata bits on Cortex-A9, so it
>>>>> needs to be saved/restored on suspend/resume.  Otherwise, the
>>>>> effectiveness of errata workaround gets lost together with diagnostic
>>>>> register bit across suspend/resume cycle.
>>>>>
>>>>> The patch adds a couple of Cortex-A9 specific suspend and resume
>>>>> functions to handle the diagnostic register across suspend/resume cycle.
>>>>
>>>> [snip]
>>>>
>>>>> +ENTRY(cpu_ca9mp_do_resume)
>>>>> +	ldmia	r0!, {r4}
>>>>> +	mcr	p15, 0, r4, c15, c0, 1  @ Diagnostic register
>>>>
>>>> What about platforms running in non-secure mode in which the register is
>>>> read-only?
>>>
>>> On A9, it should be write-ignore. Are you seeing problems on a real SoC?
>>
>> I'm observing a complete system hang on Exynos4412-based Trats2 board if
>> I try to write this register in resume from system-wide sleep.
>>
>> Note that the board is running under secure firmware, but there is no
>> support for suspend/resume of such boards in mainline yet, so I'm
>> testing on a work in progress (but mostly finished) series that is yet
>> to be sent.
> 
> Do we have any progress on this?  There's patches being generated by
> the Exynos people which depend on this, so we need to decide whether
> we want this patch or not.
> 

I need to handle some other duties right now, but I'll get back to this
as soon as possible and carry on with further testing. However I've done
few more tests checking non-secure access to both diagnostic and power
control registers and both always crash on Exynos4412.

Best regards,
Tomasz

  reply	other threads:[~2014-07-01 16:26 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-22 10:15 [PATCH v2] ARM: save/restore diagnostic register on Cortex-A9 suspend/resume Shawn Guo
2014-06-24 16:28 ` Tomasz Figa
2014-06-24 16:33   ` Will Deacon
2014-06-24 17:40     ` Tomasz Figa
2014-06-24 18:17       ` Will Deacon
2014-07-01 14:44       ` Russell King - ARM Linux
2014-07-01 16:26         ` Tomasz Figa [this message]
2014-07-02 12:34           ` Will Deacon
2014-07-02 14:01             ` Lorenzo Pieralisi
2014-07-02 14:26               ` Russell King - ARM Linux
2014-07-04  3:31                 ` Shawn Guo

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=53B2E11D.5000507@samsung.com \
    --to=t.figa@samsung$(echo .)com \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox