Re: [PATCHv2 14/19] ARM: OMAP4: wakeupgen: enable clocks for save_secure_all

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 29, 2012 at 3:15 PM, Kevin Hilman <khilman@xxxxxx> wrote:
> Tero Kristo <t-kristo@xxxxxx> writes:
>
>> On Wed, 2012-05-16 at 17:06 -0700, Kevin Hilman wrote:
>>> +Benoit
>>>
>>> Tero Kristo <t-kristo@xxxxxx> writes:
>>>
>>> > save_secure_all needs l3_main_3_ick and l4_secure_clkdm enabled,
>>> > otherwise the secure ROM code will crash.
>>> >
>>> > Signed-off-by: Tero Kristo <t-kristo@xxxxxx>
>>>
>>> I think I mentioned this already (I'm already lost in what I've said for
>>> thisseries), but I don't think the secure RAM stuff belongs in the
>>> wakeupgen driver.
>>
>> As mentioned, save_secure_all saves:
>> - secure RAM
>> - GIC registers
>> - some other mysterious stuff
>>
>> Attempting to do separate saves for secure RAM + GIC hang the device
>> during wakeup, in addition to being really inefficient (secure API calls
>> are expensive.)
>
> I guess my comment wasn't that this isn't needed, but that it doesn't
> seem to belong in the wakeupgen base (which should probably converted
> into a real driver.)
>
> Seems better to have this stuff in the secure code, maybe omap-secure.c?
>

Perhaps OFF mode notifier might help best here. In addition - it might
be safer to protect all calls with clkdm_wakeup around
secure_dispatcher instead of just the save_secure_all.. ROM code is
not smart enough around it.
an completely safe version used by security driver can be found here:
http://git.omapzoom.org/?p=kernel/omap.git;a=blob;f=security/smc/tf_comm_mshield.c;h=b5279fef0fa400438a57b3941af13d965e983bf0;hb=p-android-omap-3.0#l253


this is what the production kernels have used in the past.
Regards,
Nishanth Menon
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux