diff options
| author | bunnei <bunneidev@gmail.com> | 2018-04-23 14:00:52 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-23 14:00:52 -0400 |
| commit | 3967f9c6efae0af3d4e1b58b9898cef96335615f (patch) | |
| tree | 539a907ded52d1eb05f2c006e93cf851973baa7b /src/video_core/memory_manager.h | |
| parent | 55d0b0609d8ea971bbb60911464142b918788f6b (diff) | |
| parent | f823c1d5991657a3d91f97c345e1f01a1162fca7 (diff) | |
Merge pull request #383 from Subv/gpu_mmu
GPU: Make the GPU virtual memory manager use 16 page bits and 10 pagetable bits.
Diffstat (limited to 'src/video_core/memory_manager.h')
| -rw-r--r-- | src/video_core/memory_manager.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/video_core/memory_manager.h b/src/video_core/memory_manager.h index 47da7acd6..b73e283f8 100644 --- a/src/video_core/memory_manager.h +++ b/src/video_core/memory_manager.h @@ -24,6 +24,10 @@ public: PAddr MapBufferEx(VAddr vaddr, PAddr paddr, u64 size); VAddr PhysicalToVirtualAddress(PAddr paddr); + static constexpr u64 PAGE_BITS = 16; + static constexpr u64 PAGE_SIZE = 1 << PAGE_BITS; + static constexpr u64 PAGE_MASK = PAGE_SIZE - 1; + private: boost::optional<PAddr> FindFreeBlock(u64 size, u64 align = 1); bool IsPageMapped(PAddr paddr); @@ -35,7 +39,7 @@ private: }; static constexpr u64 MAX_ADDRESS{0x10000000000ULL}; - static constexpr u64 PAGE_TABLE_BITS{14}; + static constexpr u64 PAGE_TABLE_BITS{10}; static constexpr u64 PAGE_TABLE_SIZE{1 << PAGE_TABLE_BITS}; static constexpr u64 PAGE_TABLE_MASK{PAGE_TABLE_SIZE - 1}; static constexpr u64 PAGE_BLOCK_BITS{14}; |
