All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM: cache-l2x0.c: save aux ctrl for resume in case that l2x0 is enabled before init
@ 2012-04-24  2:41 ` Yilu Mao
  0 siblings, 0 replies; 38+ messages in thread
From: Yilu Mao @ 2012-04-24  2:41 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux, Baohua.Song, santosh.shilimkar, robherring2,
	catalin.marinas, linux-arm-kernel, Yilu Mao

If l2x0 controller has been enabled when calling l2x0_init, the aux ctrl
register will not be saved in l2x0_saved_regs. Therefore we can not use
l2x0_saved_regs.aux_ctrl for resume later. This patch fixed the problem
by saving aux ctrl in l2x0_saved_regs just after it's being read from
the register.

Signed-off-by: Yilu Mao <ylmao@marvell.com>
---
 arch/arm/mm/cache-l2x0.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index a53fd2a..3034b06 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -320,6 +320,12 @@ void __init l2x0_init(void __iomem *base, u32 aux_val, u32 aux_mask)
 	cache_id = readl_relaxed(l2x0_base + L2X0_CACHE_ID);
 	aux = readl_relaxed(l2x0_base + L2X0_AUX_CTRL);
 
+	/* In case l2x controller is enabled, the aux ctrl register
+	 * can't be set. So the original value should be stored in
+	 * the l2x0_saved_regs for restoring when resume.
+	 */
+	l2x0_saved_regs.aux_ctrl = aux;
+
 	aux &= aux_mask;
 	aux |= aux_val;
 
-- 
1.7.5.4


^ permalink raw reply related	[flat|nested] 38+ messages in thread
* [PATCH] ARM: cache-l2x0.c: save aux ctrl for resume in case that l2x0 is enabled before init
@ 2012-04-23  7:43 ` Yilu Mao
  0 siblings, 0 replies; 38+ messages in thread
From: Yilu Mao @ 2012-04-23  7:43 UTC (permalink / raw)
  To: linux-kernel
  Cc: linux, Baohua.Song, santosh.shilimkar, robherring2,
	catalin.marinas, linux-arm-kernel, Yilu Mao

If l2x0 controller has been enabled when calling l2x0_init, the aux ctrl
register will not be saved in l2x0_saved_regs. Therefore we can not use
l2x0_saved_regs.aux_ctrl for resume later. This patch fixed the problem
by saving aux ctrl in l2x0_saved_regs just after it's being read from
the register.

Signed-off-by: Yilu Mao <ylmao@marvell.com>
---
 arch/arm/mm/cache-l2x0.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mm/cache-l2x0.c b/arch/arm/mm/cache-l2x0.c
index 8936595..3b6428b 100644
--- a/arch/arm/mm/cache-l2x0.c
+++ b/arch/arm/mm/cache-l2x0.c
@@ -362,6 +362,11 @@ void __init l2x0_init(void __iomem *base, u32 aux_val, u32 aux_mask)
 	l2x0_cache_id = readl_relaxed(l2x0_base + L2X0_CACHE_ID);
 	aux = readl_relaxed(l2x0_base + L2X0_AUX_CTRL);
 
+	/* In case l2x controller is enabled, the aux ctrl register
+	 * can't be set. So the original value should be stored in
+	 * the l2x0_saved_regs for restoring when resume. */
+	l2x0_saved_regs.aux_ctrl = aux;
+
 	aux &= aux_mask;
 	aux |= aux_val;
 
-- 
1.7.0.4


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

end of thread, other threads:[~2012-04-30 13:23 UTC | newest]

Thread overview: 38+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-24  2:41 [PATCH] ARM: cache-l2x0.c: save aux ctrl for resume in case that l2x0 is enabled before init Yilu Mao
2012-04-24  2:41 ` Yilu Mao
2012-04-24  8:28 ` Catalin Marinas
2012-04-24  8:28   ` Catalin Marinas
2012-04-26  5:00   ` Yilu Mao
2012-04-26  5:00     ` Yilu Mao
2012-04-26  8:35     ` Catalin Marinas
2012-04-26  8:35       ` Catalin Marinas
2012-04-26  9:25       ` Yilu Mao
2012-04-26  9:25         ` Yilu Mao
2012-04-26  9:44         ` Catalin Marinas
2012-04-26  9:44           ` Catalin Marinas
2012-04-26 10:09           ` Yilu Mao
2012-04-26 10:09             ` Yilu Mao
2012-04-26 10:28             ` Catalin Marinas
2012-04-26 10:28               ` Catalin Marinas
2012-04-26 10:35               ` Yilu Mao
2012-04-26 10:35                 ` Yilu Mao
2012-04-26 10:38                 ` Catalin Marinas
2012-04-26 10:38                   ` Catalin Marinas
2012-04-26 10:48                   ` Yilu Mao
2012-04-26 10:48                     ` Yilu Mao
2012-04-26 10:56                     ` Catalin Marinas
2012-04-26 10:56                       ` Catalin Marinas
2012-04-26 11:03                       ` Yilu Mao
2012-04-26 11:03                         ` Yilu Mao
2012-04-28  6:24                         ` Yilu Mao
2012-04-28  6:24                           ` Yilu Mao
2012-04-30 12:11                           ` Catalin Marinas
2012-04-30 12:11                             ` Catalin Marinas
2012-04-30 13:22                             ` Yilu Mao
2012-04-30 13:22                               ` Yilu Mao
2012-04-26  5:09   ` Yilu Mao
2012-04-26  5:09     ` Yilu Mao
  -- strict thread matches above, loose matches on Subject: below --
2012-04-23  7:43 Yilu Mao
2012-04-23  7:43 ` Yilu Mao
2012-04-23 11:19 ` Sergei Shtylyov
2012-04-23 11:19   ` Sergei Shtylyov

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.