From 10d6e9f32bcc102d2fb12ba3e489c9a03d7f220f Mon Sep 17 00:00:00 2001
From: bunnei <bunneidev@gmail.com>
Date: Tue, 23 Mar 2021 18:47:16 -0700
Subject: hle: kernel: Breakup InitializeMemoryLayout.

---
 src/core/hle/kernel/kernel.cpp | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

(limited to 'src/core/hle/kernel/kernel.cpp')

diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp
index e994e8bede..557e63ea09 100644
--- a/src/core/hle/kernel/kernel.cpp
+++ b/src/core/hle/kernel/kernel.cpp
@@ -269,9 +269,7 @@ struct KernelCore::Impl {
         return schedulers[thread_id]->GetCurrentThread();
     }
 
-    void InitializeMemoryLayout() {
-        KMemoryLayout memory_layout;
-
+    void DeriveInitialMemoryLayout(KMemoryLayout& memory_layout) {
         // Insert the root region for the virtual memory tree, from which all other regions will
         // derive.
         memory_layout.GetVirtualMemoryRegionTree().InsertDirectly(
@@ -531,6 +529,12 @@ struct KernelCore::Impl {
         // Cache all linear regions in their own trees for faster access, later.
         memory_layout.InitializeLinearMemoryRegionTrees(aligned_linear_phys_start,
                                                         linear_region_start);
+    }
+
+    void InitializeMemoryLayout() {
+        // Derive the initial memory layout from the emulated board
+        KMemoryLayout memory_layout;
+        DeriveInitialMemoryLayout(memory_layout);
 
         const auto system_pool = memory_layout.GetKernelSystemPoolRegionPhysicalExtents();
         const auto applet_pool = memory_layout.GetKernelAppletPoolRegionPhysicalExtents();
-- 
cgit v1.2.3-70-g09d2