Blob Blame History Raw
From 6ecb8a23ca294de5ef92726c782f4c92fcb39d92 Mon Sep 17 00:00:00 2001
From: Huang Shijie <shijie@os.amperecomputing.com>
Date: Fri, 11 Feb 2022 09:46:42 +0000
Subject: [PATCH] arm64: Use CONFIG_ARM64_VA_BITS to initialize VA_BITS_ACTUAL

We can get VA_BITS_ACTUAL from CONFIG_ARM64_VA_BITS by guess.

Without this patch, we may need to use "--machdep vabits_actual=48" to
set the VA_BITS_ACTUAL.

Signed-off-by: Huang Shijie <shijie@os.amperecomputing.com>
---
 arm64.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arm64.c b/arm64.c
index 4f2c2b5..de1038a 100644
--- a/arm64.c
+++ b/arm64.c
@@ -4170,6 +4170,11 @@ arm64_calc_VA_BITS(void)
 			} else if (machdep->machspec->VA_BITS_ACTUAL) {
 				machdep->machspec->VA_BITS = machdep->machspec->VA_BITS_ACTUAL;
 				machdep->machspec->VA_START = _VA_START(machdep->machspec->VA_BITS_ACTUAL);
+			} else if (machdep->machspec->CONFIG_ARM64_VA_BITS) {
+				/* guess */
+				machdep->machspec->VA_BITS_ACTUAL = machdep->machspec->CONFIG_ARM64_VA_BITS;
+				machdep->machspec->VA_BITS = machdep->machspec->CONFIG_ARM64_VA_BITS;
+				machdep->machspec->VA_START = _VA_START(machdep->machspec->VA_BITS_ACTUAL);
 			} else
 				error(FATAL, "cannot determine VA_BITS_ACTUAL\n");
 		}
-- 
2.31.1