From 246ba284ecd4c6da7a7e15c6455bd3d43dc6f33e Mon Sep 17 00:00:00 2001
From: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Date: Wed, 21 Mar 2018 15:58:58 +0300
Subject: [PATCH] ARC: Cache: Move PAE exists check into
 slc_upper_region_init()

Move check for PAE existence into slc_upper_region_init()
instead of its caller as more appropriate place.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
---
 arch/arc/lib/cache.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/arch/arc/lib/cache.c b/arch/arc/lib/cache.c
index b08c2111c8b..031ebd7765f 100644
--- a/arch/arc/lib/cache.c
+++ b/arch/arc/lib/cache.c
@@ -192,6 +192,14 @@ static void __slc_entire_op(const int op)
 
 static void slc_upper_region_init(void)
 {
+	/*
+	 * ARC_AUX_SLC_RGN_START1 and ARC_AUX_SLC_RGN_END1 register exist
+	 * only if PAE exists in current HW. So we had to check pae_exist
+	 * before using them.
+	 */
+	if (!pae_exists())
+		return;
+
 	/*
 	 * ARC_AUX_SLC_RGN_END1 and ARC_AUX_SLC_RGN_START1 are always == 0
 	 * as we don't use PAE40.
@@ -334,12 +342,7 @@ void cache_init(void)
 	if (is_isa_arcv2() && ioc_exists)
 		arc_ioc_setup();
 
-	/*
-	 * ARC_AUX_SLC_RGN_START1 and ARC_AUX_SLC_RGN_END1 register exist
-	 * only if PAE exists in current HW. So we had to check pae_exist
-	 * before using them.
-	 */
-	if (is_isa_arcv2() && slc_exists() && pae_exists())
+	if (is_isa_arcv2() && slc_exists())
 		slc_upper_region_init();
 }
 
-- 
GitLab