Re: [PATCHv2 06/19] ARM: OMAP4: PM: Add SAR backup support towards device OFF

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

Tero Kristo <t-kristo@xxxxxx> writes:

> From: Santosh Shilimkar <santosh.shilimkar@xxxxxx>
> The SAR RAM is maintained during Device OFF mode. 

so why is this patch bothering to save and restore it?


> The register layout
> is fixed in SAR ROM. SAR is split into 4 banks with different
> privilege accesses based on device type
>  ---------------------------------------------------------------
>  Access mode		Bank	Address Range
>  ---------------------------------------------------------------
>  HS/GP : Public		1	0x4A32_6000 - 0x4A32_6FFF (4kB)
>  HS/GP : Public		2	0x4A32_7000 - 0x4A32_73FF (1kB)
>  HS/EMU : Secured
>  GP : Public		3	0x4A32_8000 - 0x4A32_87FF (2kB)
>  HS/GP :Secure
>  write once.		4	0x4A32_9000 - 0x4A32_93FF (1kB)
>  ---------------------------------------------------------------
> The save process is done entirely by software and restore is done by
> hardware using the auto-restore feature. The restore feature is enabled
> by default and cannot be disabled. The software must save the data
> to be restored in a dedicated location in SAR RAM.

Some general comments:

- can the cluster PM notifier be used for the save path?

- This patch adds lots of data that is immediately removed by the next
  patch.  Probably the two just need to be combined.

- BUG_ON() should not be used unless there is absolutely no recovery
  path, since it casues a full kernel panic.   Instead, some error
  recovery should be added.

To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at

[Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Free Online Dating]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux