From: Kevin Hilman <khilman@deeprootsystems.com>
To: Santosh Shilimkar <santosh.shilimkar@ti.com>
Cc: Nishanth Menon <nm@ti.com>,
linux-omap <linux-omap@vger.kernel.org>,
Jean Pihet <jean.pihet@newoldbits.com>,
Vishwanath Sripathy <vishwanath.bs@ti.com>,
Tony <tony@atomide.com>
Subject: Re: [PATCH 00/13] OMAP3: OFF mode fixes
Date: Tue, 23 Nov 2010 12:35:57 -0800 [thread overview]
Message-ID: <87pqtveq1e.fsf@deeprootsystems.com> (raw)
In-Reply-To: <8ef3de873d51409a38f19becb0d339cb@mail.gmail.com> (Santosh Shilimkar's message of "Tue, 23 Nov 2010 14:32:25 +0530")
Santosh Shilimkar <santosh.shilimkar@ti.com> writes:
>> -----Original Message-----
>> From: linux-omap-owner@vger.kernel.org [mailto:linux-omap-
>> owner@vger.kernel.org] On Behalf Of Kevin Hilman
>> Sent: Tuesday, November 23, 2010 12:46 AM
>> To: Nishanth Menon
>> Cc: linux-omap; Jean Pihet; Vishwanath Sripathy; Tony
>> Subject: Re: [PATCH 00/13] OMAP3: OFF mode fixes
>>
>> Nishanth Menon <nm@ti.com> writes:
>>
>> > Bunch of fixes as part of phase 1 targetting mainly OMAP3630 HS
> devices
>> > for OFF mode logic.
>> >
>> > It is important to note - for proper functionality of HS OFF mode on
>> OMAP3630,
>> > CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE=y and
>> > CONFIG_OMAP3_L2_AUX_SECURE_SERVICE_SET_ID should be set to the
>> correct
>> > service that the security PPA supports on the platform.
>> >
>> > Based on kernel.org 2.6.37-rc2 tag
>> >
>> > Smoke tested on:
>> > SDP3630 -GP
>> > Zoom3 (3630): GP & EMU (Es1.1, ES1.2)
>> > SDP3430 - GP & EMU (ES3.1)
>> >
>> > These are fixes for corner case bugs seen, so tests of off and ret
> done
>> with
>> > wakeup timer - behavior between 2.6.37-rc2 before and after applying
>> patch
>> > seen consistent.
>> >
>> > Request for testing this series for comparison between master and this
>> > series requested for additional platforms where available.
>>
>> After some more thought and review, here's what I think should be the
>> approach moving this forward:
>>
>> This can be broken up into 3 independent series as follows:
>>
>> 1) fix for UART erratum (patch 10)
>> 2) fixes for idle path errata (patches 1, 2, 11, 12, 13)
>> 3) secure ram save path (the rest)
>>
>> For (3), I'd like to see the secure ram management moved out of the PM
>> core, and into it's own library/driver. Strictly speaking, context
>> save/restore for secure ram is not a function of the PM idle core. As
>> with every other device, context save/restore is the responsibility of
>> the driver(s) using that device.
>>
>> For secure RAM, the restore is handled by ROM code, but the save should
>> be managed by the secure driver(s). IOW, any secure driver should be
>> using runtime PM and when the secure driver is no longer in use, it
>> should ensure secure RAM context is saved using its runtime_suspend
>> method to save secure RAM. The code in this series should be moved out
>> into a library/driver which can be called by secure drivers in their
>> runtime PM hooks.
>>
> I agree with you Kevin here except one point. The secure RAM contents
> are not just secure driver data but the ROM code infrastructure as well.
> And we should treat ROM code as a hardware. Secure services
> don't give you garrulity of saving per each secure module. To
> get CPU OFF working on secure device, secure RAM must be saved.
> So I still think it is CPU specific code and pretty much relevant
> to CPU IDLE OFF state considering ROM code.
> Ofcourse this not related to GP device because we never enter Secure
> world again after the boot-up.
> So moving this code to a separate file is fine but it still related
> to CPU.
Sure, it's still *related* to the CPU, but what I am arguing is that it
should not be related to CPU *idle*.
My undersanding is this (please correct me):
Secure RAM context only needs to be saved/updated when something in it
changes changes (e.g. secure driver usage.) Therefore, any
driver/device usage that has a side effect of changing secure RAM should
be responsible for updating secure RAM.
The approach taken in $SUBJECT series is basically: since we don't know
who is using/changing secure RAM, we better save it (or have the option
to) during every off-mode transition. This approach is what I do not
like. It's pushing work (and intellegence) that should be in the
drivers into the PM core where it does not belong.
Rather, I want to follow the same approach we follow for every other
device driver. Drivers must assume they can lose context. Therefore
it's up to them to save it.
IOW, the drivers that *change* secure RAM should be responsible for
ensuring that any of the changes they make are saved.
Kevin
next prev parent reply other threads:[~2010-11-23 20:36 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-19 1:54 [PATCH 00/13] OMAP3: OFF mode fixes Nishanth Menon
2010-11-19 1:54 ` [PATCH 01/13] OMAP3: PM: Update clean_l2 to use v7_flush_dcache_all Nishanth Menon
2010-11-19 9:46 ` Jean Pihet
2010-11-19 9:57 ` Peter 'p2' De Schrijver
2010-11-19 10:15 ` Jean Pihet
2010-11-19 1:54 ` [PATCH 02/13] OMAP3: PM: Errata i581 suppport: dll kick strategy Nishanth Menon
2010-11-24 16:51 ` Sripathy, Vishwanath
2010-11-24 17:24 ` Nishanth Menon
2010-11-25 6:39 ` Sripathy, Vishwanath
2010-11-25 12:22 ` Peter 'p2' De Schrijver
2010-11-19 1:54 ` [PATCH 03/13] OMAP3: PM: make secure ram save size configurable Nishanth Menon
2010-11-19 1:54 ` [PATCH 04/13] OMAP3: PM: Save secure RAM context before entering WFI Nishanth Menon
2010-11-19 1:54 ` [PATCH 05/13] OMAP3: PM: optional save secure RAM context every core off cycle Nishanth Menon
2010-11-19 1:54 ` [PATCH 06/13] OMAP3: PM: Fix secure save size for OMAP3 Nishanth Menon
2010-11-19 1:54 ` [PATCH 07/13] OMAP3: PM: allocate secure RAM context memory from low-mem Nishanth Menon
2010-11-19 1:54 ` [PATCH 08/13] OMAP3: PM: Deny MPU idle while saving secure RAM Nishanth Menon
2010-11-19 17:08 ` Kevin Hilman
2010-11-19 17:16 ` Nishanth Menon
2010-11-19 17:18 ` Santosh Shilimkar
2010-11-19 17:24 ` Nishanth Menon
2010-11-19 17:28 ` Santosh Shilimkar
2010-11-19 18:51 ` Nishanth Menon
2010-11-19 20:39 ` Kevin Hilman
2010-11-19 20:54 ` Nishanth Menon
2010-11-19 21:06 ` Kevin Hilman
2010-11-19 21:15 ` Nishanth Menon
2010-11-20 10:04 ` Santosh Shilimkar
2010-11-19 19:41 ` Kevin Hilman
2010-11-19 20:18 ` Nishanth Menon
2010-11-19 20:55 ` Kevin Hilman
2010-11-19 21:02 ` Nishanth Menon
2010-11-19 21:09 ` Kevin Hilman
2010-11-20 10:02 ` Santosh Shilimkar
2010-11-19 1:54 ` [PATCH 09/13] OMAP3: PM: Apply errata i540 before save secure ram Nishanth Menon
2010-11-19 10:09 ` Jean Pihet
2010-11-19 12:12 ` Nishanth Menon
2010-11-19 12:54 ` Jean Pihet
2010-11-19 17:15 ` Kevin Hilman
2010-11-19 17:18 ` Nishanth Menon
2010-11-19 19:47 ` Kevin Hilman
2010-11-19 20:08 ` Nishanth Menon
2010-11-19 1:54 ` [PATCH 10/13] OMAP3: PM: Errata i582: per domain reset issue: uart Nishanth Menon
2010-11-22 18:59 ` Kevin Hilman
2010-11-19 1:54 ` [PATCH 11/13] OMAP3630: PM: Errata i608: disable RTA Nishanth Menon
2010-11-19 9:57 ` Jean Pihet
2010-11-19 12:09 ` Nishanth Menon
2010-11-19 1:54 ` [PATCH 12/13] OMAP3630: PM: Disable L2 cache while invalidating L2 cache Nishanth Menon
2010-11-19 1:54 ` [PATCH 13/13] OMAP3630: PM: Errata i583: disable coreoff if < ES1.2 Nishanth Menon
2010-11-19 10:07 ` Jean Pihet
2010-11-19 12:14 ` Nishanth Menon
2010-11-19 10:18 ` [PATCH 00/13] OMAP3: OFF mode fixes Jean Pihet
2010-11-19 12:03 ` Nishanth Menon
2010-11-19 21:20 ` Kevin Hilman
2010-11-19 21:37 ` Nishanth Menon
2010-11-20 9:56 ` Santosh Shilimkar
2010-11-22 16:08 ` Kevin Hilman
2010-11-22 19:16 ` Kevin Hilman
2010-11-23 9:02 ` Santosh Shilimkar
2010-11-23 20:35 ` Kevin Hilman [this message]
2010-11-24 5:34 ` Santosh Shilimkar
2010-11-24 9:22 ` Santosh Shilimkar
2010-11-24 17:11 ` Jean Pihet
2010-11-24 17:21 ` Nishanth Menon
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=87pqtveq1e.fsf@deeprootsystems.com \
--to=khilman@deeprootsystems.com \
--cc=jean.pihet@newoldbits.com \
--cc=linux-omap@vger.kernel.org \
--cc=nm@ti.com \
--cc=santosh.shilimkar@ti.com \
--cc=tony@atomide.com \
--cc=vishwanath.bs@ti.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.