diff options
| author | 2020-04-08 23:37:24 -0400 | |
|---|---|---|
| committer | 2020-04-17 00:59:35 -0400 | |
| commit | a8292f6cd9f8b4088ee85b59a87e5bf0ce387cf0 (patch) | |
| tree | ff88e12685101a4f451b5bb56894ff4e7128d0ce /src/core/hle/kernel | |
| parent | kernel: svc: Updates for new VMM. (diff) | |
| download | yuzu-a8292f6cd9f8b4088ee85b59a87e5bf0ce387cf0.tar.gz yuzu-a8292f6cd9f8b4088ee85b59a87e5bf0ce387cf0.tar.xz yuzu-a8292f6cd9f8b4088ee85b59a87e5bf0ce387cf0.zip | |
kernel: memory: page_table: Simplify GetPhysicalAddr impl.
Diffstat (limited to 'src/core/hle/kernel')
| -rw-r--r-- | src/core/hle/kernel/memory/page_table.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/kernel/memory/page_table.h | 4 |
2 files changed, 3 insertions, 5 deletions
diff --git a/src/core/hle/kernel/memory/page_table.cpp b/src/core/hle/kernel/memory/page_table.cpp index 93e7253e2..941ecda21 100644 --- a/src/core/hle/kernel/memory/page_table.cpp +++ b/src/core/hle/kernel/memory/page_table.cpp | |||
| @@ -936,10 +936,6 @@ ResultVal<VAddr> PageTable::AllocateAndMapMemory(std::size_t needed_num_pages, s | |||
| 936 | return MakeResult<VAddr>(addr); | 936 | return MakeResult<VAddr>(addr); |
| 937 | } | 937 | } |
| 938 | 938 | ||
| 939 | PAddr PageTable::GetPhysicalAddr(VAddr addr) { | ||
| 940 | return system.DeviceMemory().GetPhysicalAddr(addr); | ||
| 941 | } | ||
| 942 | |||
| 943 | ResultCode PageTable::InitializeMemoryLayout(VAddr start, VAddr end) { | 939 | ResultCode PageTable::InitializeMemoryLayout(VAddr start, VAddr end) { |
| 944 | block_manager = std::make_unique<MemoryBlockManager>(start, end); | 940 | block_manager = std::make_unique<MemoryBlockManager>(start, end); |
| 945 | 941 | ||
diff --git a/src/core/hle/kernel/memory/page_table.h b/src/core/hle/kernel/memory/page_table.h index 6c3a3c275..80384ab0f 100644 --- a/src/core/hle/kernel/memory/page_table.h +++ b/src/core/hle/kernel/memory/page_table.h | |||
| @@ -53,7 +53,6 @@ public: | |||
| 53 | bool is_map_only, VAddr region_start, | 53 | bool is_map_only, VAddr region_start, |
| 54 | std::size_t region_num_pages, MemoryState state, | 54 | std::size_t region_num_pages, MemoryState state, |
| 55 | MemoryPermission perm, PAddr map_addr = 0); | 55 | MemoryPermission perm, PAddr map_addr = 0); |
| 56 | PAddr GetPhysicalAddr(VAddr addr); | ||
| 57 | 56 | ||
| 58 | Common::PageTable& PageTableImpl() { | 57 | Common::PageTable& PageTableImpl() { |
| 59 | return page_table_impl; | 58 | return page_table_impl; |
| @@ -211,6 +210,9 @@ public: | |||
| 211 | constexpr bool IsInsideASLRRegion(VAddr address, std::size_t size) const { | 210 | constexpr bool IsInsideASLRRegion(VAddr address, std::size_t size) const { |
| 212 | return !IsOutsideASLRRegion(address, size); | 211 | return !IsOutsideASLRRegion(address, size); |
| 213 | } | 212 | } |
| 213 | constexpr PAddr GetPhysicalAddr(VAddr addr) { | ||
| 214 | return page_table_impl.backing_addr[addr >> Memory::PageBits] + addr; | ||
| 215 | } | ||
| 214 | 216 | ||
| 215 | private: | 217 | private: |
| 216 | constexpr bool Contains(VAddr addr) const { | 218 | constexpr bool Contains(VAddr addr) const { |