NVDRV: Implement sessions and initial implementation of SMMU

This commit is contained in:
Fernando Sahmkow 2023-12-24 18:20:02 +01:00 committed by Liam
parent 04b4af6044
commit eb4f7f35ea
37 changed files with 260 additions and 100 deletions

View file

@ -5,9 +5,8 @@
#include "common/common_types.h"
#include "common/address_space.h"
#include "video_core/host1x/gpu_device_memory_manager.h"
#include "video_core/host1x/syncpoint_manager.h"
#include "video_core/memory_manager.h"
namespace Core {
class System;
@ -29,27 +28,18 @@ public:
return syncpoint_manager;
}
Tegra::MemoryManager& MemoryManager() {
Tegra::MaxwellDeviceMemoryManager& MemoryManager() {
return memory_manager;
}
const Tegra::MemoryManager& MemoryManager() const {
const Tegra::MaxwellDeviceMemoryManager& MemoryManager() const {
return memory_manager;
}
Common::FlatAllocator<u32, 0, 32>& Allocator() {
return *allocator;
}
const Common::FlatAllocator<u32, 0, 32>& Allocator() const {
return *allocator;
}
private:
Core::System& system;
SyncpointManager syncpoint_manager;
Tegra::MemoryManager memory_manager;
std::unique_ptr<Common::FlatAllocator<u32, 0, 32>> allocator;
Tegra::MaxwellDeviceMemoryManager memory_manager;
};
} // namespace Host1x