diff options
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/host1x/gpu_device_memory_manager.cpp | 21 | ||||
-rw-r--r-- | src/video_core/host1x/gpu_device_memory_manager.h | 20 |
2 files changed, 41 insertions, 0 deletions
diff --git a/src/video_core/host1x/gpu_device_memory_manager.cpp b/src/video_core/host1x/gpu_device_memory_manager.cpp new file mode 100644 index 000000000..2ca445081 --- /dev/null +++ b/src/video_core/host1x/gpu_device_memory_manager.cpp @@ -0,0 +1,21 @@ +// SPDX-FileCopyrightText: 2023 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "core/device_memory_manager.inc" +#include "video_core/host1x/gpu_device_memory_manager.h" +#include "video_core/rasterizer_interface.h" + +template struct Core::DeviceMemoryManagerAllocator<Tegra::MaxwellDeviceTraits>; +template class Core::DeviceMemoryManager<Tegra::MaxwellDeviceTraits>; + +template const u8* Tegra::MaxwellDeviceMemoryManager::GetPointer<u8>(DAddr addr) const; +template u8* Tegra::MaxwellDeviceMemoryManager::GetPointer<u8>(DAddr addr); + +template u8 Tegra::MaxwellDeviceMemoryManager::Read<u8>(DAddr addr) const; +template u16 Tegra::MaxwellDeviceMemoryManager::Read<u16>(DAddr addr) const; +template u32 Tegra::MaxwellDeviceMemoryManager::Read<u32>(DAddr addr) const; +template u64 Tegra::MaxwellDeviceMemoryManager::Read<u64>(DAddr addr) const; +template void Tegra::MaxwellDeviceMemoryManager::Write<u8>(DAddr addr, u8 data); +template void Tegra::MaxwellDeviceMemoryManager::Write<u16>(DAddr addr, u16 data); +template void Tegra::MaxwellDeviceMemoryManager::Write<u32>(DAddr addr, u32 data); +template void Tegra::MaxwellDeviceMemoryManager::Write<u64>(DAddr addr, u64 data);
\ No newline at end of file diff --git a/src/video_core/host1x/gpu_device_memory_manager.h b/src/video_core/host1x/gpu_device_memory_manager.h new file mode 100644 index 000000000..30ad52017 --- /dev/null +++ b/src/video_core/host1x/gpu_device_memory_manager.h @@ -0,0 +1,20 @@ +// SPDX-FileCopyrightText: 2023 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "core/device_memory_manager.h" + +namespace VideoCore { +class RasterizerInterface; +} + +namespace Tegra { + +struct MaxwellDeviceTraits { + static constexpr bool supports_pinning = true; + static constexpr size_t device_virtual_bits = 34; + using DeviceInterface = typename VideoCore::RasterizerInterface; +}; + +using MaxwellDeviceMemoryManager = Core::DeviceMemoryManager<MaxwellDeviceTraits>; + +} // namespace Tegra
\ No newline at end of file |