All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/11] Add L2 cache cleaning to generic CPU suspend
@ 2011-09-01 12:47 ` Russell King - ARM Linux
  0 siblings, 0 replies; 56+ messages in thread
From: Russell King - ARM Linux @ 2011-09-01 12:47 UTC (permalink / raw)
  To: Santosh Shilimkar; +Cc: linux-omap, linux-arm-kernel

Some systems (such as OMAP) preserve the L2 cache across a suspend/
resume cycle.  This means they do not perform L2 cache maintanence
in their suspend finisher function.

However, the side effect is that the saved CPU state is not readable
by the resume code because it is sitting in the L2 cache.

This patch series adds L2 cache cleaning to the generic CPU suspend/
resume support code, making it possible to use this on systems with
L2 cache enabled without having to clean/invalidate the entire L2
cache.

We also add a separate page table, allocated at boot time, for the
resume process to use so we don't have to fiddle about with tweaking
entries in the current processes page table.  Moreover, the current
processes page table may be in use by another CPU in the system if
these paths are used from cpuidle or hotplug, so changing the page
table is technically unsound.

Overall, this makes it possible for OMAP4 systems to use this code.

The first four patches in this set are already merged into Linus' tree
as bug fixes, and are included here for completeness given that the
kernel.org infrastructure is currently offline.

This has (so far) only been tested on OMAP4.  Further testing on OMAP3
and Assabet will follow.

^ permalink raw reply	[flat|nested] 56+ messages in thread

end of thread, other threads:[~2011-09-20  3:24 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-09-01 12:47 [PATCH 00/11] Add L2 cache cleaning to generic CPU suspend Russell King - ARM Linux
2011-09-01 12:47 ` Russell King - ARM Linux
2011-09-01 12:48 ` [PATCH 01/11] ARM: pm: CPU specific code should not overwrite r1 (v:p offset) Russell King - ARM Linux
2011-09-01 12:48   ` Russell King - ARM Linux
2011-09-01 12:48 ` [PATCH 02/11] ARM: pm: arm920/926: fix number of registers saved Russell King - ARM Linux
2011-09-01 12:48   ` Russell King - ARM Linux
2011-09-01 12:49 ` [PATCH 03/11] ARM: pm: some ARMv7 requires a dsb in resume to ensure correctness Russell King - ARM Linux
2011-09-01 12:49   ` Russell King - ARM Linux
2011-09-07 15:41   ` Catalin Marinas
2011-09-07 15:41     ` Catalin Marinas
2011-09-07 16:19     ` Russell King - ARM Linux
2011-09-07 16:19       ` Russell King - ARM Linux
2011-09-07 16:26       ` Catalin Marinas
2011-09-07 16:26         ` Catalin Marinas
2011-09-07 16:54       ` Catalin Marinas
2011-09-07 16:54         ` Catalin Marinas
2011-09-01 12:49 ` [PATCH 04/11] ARM: pm: avoid writing the auxillary control register for ARMv7 Russell King - ARM Linux
2011-09-01 12:49   ` Russell King - ARM Linux
2011-09-01 12:49 ` [PATCH 05/11] ARM: pm: force non-zero return value from __cpu_suspend when aborting Russell King - ARM Linux
2011-09-01 12:49   ` Russell King - ARM Linux
2011-09-01 12:50 ` [PATCH 06/11] ARM: pm: preallocate a page table for suspend/resume Russell King - ARM Linux
2011-09-01 12:50   ` Russell King - ARM Linux
2011-09-01 12:50 ` [PATCH 07/11] ARM: pm: only use preallocated page table during resume Russell King - ARM Linux
2011-09-01 12:50   ` Russell King - ARM Linux
2011-09-01 12:50 ` [PATCH 08/11] ARM: pm: no need to save/restore context ID register Russell King - ARM Linux
2011-09-01 12:50   ` Russell King - ARM Linux
2011-09-03 16:33   ` Santosh
2011-09-03 16:33     ` Santosh
2011-09-04 10:08     ` Russell King - ARM Linux
2011-09-04 10:08       ` Russell King - ARM Linux
2011-09-01 12:51 ` [PATCH 09/11] ARM: pm: get rid of cpu_resume_turn_mmu_on Russell King - ARM Linux
2011-09-01 12:51   ` Russell King - ARM Linux
2011-09-01 12:51 ` [PATCH 10/11] ARM: pm: convert some assembly to C Russell King - ARM Linux
2011-09-01 12:51   ` Russell King - ARM Linux
2011-09-07 15:48   ` Lorenzo Pieralisi
2011-09-07 15:48     ` Lorenzo Pieralisi
2011-09-19 16:32     ` Russell King - ARM Linux
2011-09-19 16:32       ` Russell King - ARM Linux
2011-09-01 12:51 ` [PATCH 11/11] ARM: pm: add L2 cache cleaning for suspend Russell King - ARM Linux
2011-09-01 12:51   ` Russell King - ARM Linux
2011-09-01 15:33 ` [PATCH 00/11] Add L2 cache cleaning to generic CPU suspend Shawn Guo
2011-09-01 15:33   ` Shawn Guo
2011-09-01 15:34   ` Russell King - ARM Linux
2011-09-01 15:34     ` Russell King - ARM Linux
2011-09-01 15:57     ` Shawn Guo
2011-09-01 15:57       ` Shawn Guo
2011-09-10 16:10       ` Shawn Guo
2011-09-10 16:10         ` Shawn Guo
2011-09-19 16:22         ` Russell King - ARM Linux
2011-09-19 16:22           ` Russell King - ARM Linux
2011-09-20  3:24           ` Shawn Guo
2011-09-20  3:24             ` Shawn Guo
2011-09-03 16:36 ` Santosh
2011-09-03 16:36   ` Santosh
2011-09-04 10:12   ` Russell King - ARM Linux
2011-09-04 10:12     ` Russell King - ARM Linux

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.