diff options
author | MerryMage <MerryMage@users.noreply.github.com> | 2016-01-30 19:41:04 +0100 |
---|---|---|
committer | MerryMage <MerryMage@users.noreply.github.com> | 2016-01-30 19:41:04 +0100 |
commit | 2b9331334884349dc38cb9a447018dca0e5b0d9d (patch) | |
tree | 2ee280a21014808f190d7362a41ccd25e93dd2f4 /src/core/hle/kernel/vm_manager.h | |
parent | Merge pull request #1360 from lioncash/var (diff) | |
download | yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar.gz yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar.bz2 yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar.lz yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar.xz yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.tar.zst yuzu-2b9331334884349dc38cb9a447018dca0e5b0d9d.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/kernel/vm_manager.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/hle/kernel/vm_manager.h b/src/core/hle/kernel/vm_manager.h index 4e95f1f0c..91d40655b 100644 --- a/src/core/hle/kernel/vm_manager.h +++ b/src/core/hle/kernel/vm_manager.h @@ -11,6 +11,7 @@ #include "common/common_types.h" #include "core/hle/result.h" +#include "core/mmio.h" namespace Kernel { @@ -92,6 +93,7 @@ struct VirtualMemoryArea { // Settings for type = MMIO /// Physical address of the register area this VMA maps to. PAddr paddr = 0; + Memory::MMIORegionPointer mmio_handler = nullptr; /// Tests if this area can be merged to the right with `next`. bool CanBeMergedWith(const VirtualMemoryArea& next) const; @@ -168,8 +170,9 @@ public: * @param paddr The physical address where the registers are present. * @param size Size of the mapping. * @param state MemoryState tag to attach to the VMA. + * @param mmio_handler The handler that will implement read and write for this MMIO region. */ - ResultVal<VMAHandle> MapMMIO(VAddr target, PAddr paddr, u32 size, MemoryState state); + ResultVal<VMAHandle> MapMMIO(VAddr target, PAddr paddr, u32 size, MemoryState state, Memory::MMIORegionPointer mmio_handler); /// Unmaps a range of addresses, splitting VMAs as necessary. ResultCode UnmapRange(VAddr target, u32 size); |