aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/memory.h
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2015-08-05 21:26:52 -0300
committerYuri Kunde Schlesner <yuriks@yuriks.net>2015-08-16 01:03:47 -0300
commit74d4bc0af1d2f22105bf3c00efcb85613d59cc19 (patch)
tree171c5d0508d99f9ef4dcba2a0e3543eb9bdfa1db /src/core/hle/kernel/memory.h
parentc39b52f974d5776f3ea347766a88cd5fc8f9f338 (diff)
Kernel: Add more infrastructure to support different memory layouts
This adds some structures necessary to support multiple memory regions in the future. It also adds support for different system memory types and the new linear heap mapping at 0x30000000.
Diffstat (limited to 'src/core/hle/kernel/memory.h')
-rw-r--r--src/core/hle/kernel/memory.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/core/hle/kernel/memory.h b/src/core/hle/kernel/memory.h
index cba8a0714..2e2cae17d 100644
--- a/src/core/hle/kernel/memory.h
+++ b/src/core/hle/kernel/memory.h
@@ -4,10 +4,27 @@
#pragma once
+#include <memory>
+
#include "common/common_types.h"
+#include "core/hle/kernel/process.h"
+
namespace Kernel {
+
class VMManager;
+
+struct MemoryRegionInfo {
+ u32 base; // Not an address, but offset from start of FCRAM
+ u32 size;
+
+ std::shared_ptr<std::vector<u8>> linear_heap_memory;
+};
+
+void MemoryInit(u32 mem_type);
+void MemoryShutdown();
+MemoryRegionInfo* GetMemoryRegion(MemoryRegion region);
+
}
namespace Memory {