Memory: move block operations into class
This commit is contained in:
parent
323990d402
commit
2582d64fb3
13 changed files with 174 additions and 159 deletions
|
@ -491,6 +491,7 @@ static void ExecuteCommand(const Command& command, u32 thread_id) {
|
|||
// GX request DMA - typically used for copying memory from GSP heap to VRAM
|
||||
case CommandId::REQUEST_DMA: {
|
||||
MICROPROFILE_SCOPE(GPU_GSP_DMA);
|
||||
Memory::MemorySystem& memory = Core::System::GetInstance().Memory();
|
||||
|
||||
// TODO: Consider attempting rasterizer-accelerated surface blit if that usage is ever
|
||||
// possible/likely
|
||||
|
@ -502,9 +503,9 @@ static void ExecuteCommand(const Command& command, u32 thread_id) {
|
|||
|
||||
// TODO(Subv): These memory accesses should not go through the application's memory mapping.
|
||||
// They should go through the GSP module's memory mapping.
|
||||
Memory::CopyBlock(*Core::System::GetInstance().Kernel().GetCurrentProcess(),
|
||||
command.dma_request.dest_address, command.dma_request.source_address,
|
||||
command.dma_request.size);
|
||||
memory.CopyBlock(*Core::System::GetInstance().Kernel().GetCurrentProcess(),
|
||||
command.dma_request.dest_address, command.dma_request.source_address,
|
||||
command.dma_request.size);
|
||||
SignalInterrupt(InterruptId::DMA);
|
||||
break;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue