diff options
| author | 2022-01-30 10:31:13 +0100 | |
|---|---|---|
| committer | 2022-10-06 21:00:52 +0200 | |
| commit | 668e80a9f42fb4ce0e16f6381d05bcbd286b2da1 (patch) | |
| tree | a1c668d6c3d00eade849b1d31dba4116095e4c12 /src/video_core/dma_pusher.h | |
| parent | Texture Cache: Fix GC and GPU Modified on Joins. (diff) | |
| download | yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.gz yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.tar.xz yuzu-668e80a9f42fb4ce0e16f6381d05bcbd286b2da1.zip | |
VideoCore: Refactor syncing.
Diffstat (limited to 'src/video_core/dma_pusher.h')
| -rw-r--r-- | src/video_core/dma_pusher.h | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/src/video_core/dma_pusher.h b/src/video_core/dma_pusher.h index fd7c936c4..938f0f11c 100644 --- a/src/video_core/dma_pusher.h +++ b/src/video_core/dma_pusher.h | |||
| @@ -37,24 +37,32 @@ enum class SubmissionMode : u32 { | |||
| 37 | // Note that, traditionally, methods are treated as 4-byte addressable locations, and hence | 37 | // Note that, traditionally, methods are treated as 4-byte addressable locations, and hence |
| 38 | // their numbers are written down multiplied by 4 in Docs. Here we are not multiply by 4. | 38 | // their numbers are written down multiplied by 4 in Docs. Here we are not multiply by 4. |
| 39 | // So the values you see in docs might be multiplied by 4. | 39 | // So the values you see in docs might be multiplied by 4. |
| 40 | // Register documentation: | ||
| 41 | // https://github.com/NVIDIA/open-gpu-doc/blob/ab27fc22db5de0d02a4cabe08e555663b62db4d4/classes/host/cla26f.h | ||
| 42 | // | ||
| 43 | // Register Description (approx): | ||
| 44 | // https://github.com/NVIDIA/open-gpu-doc/blob/ab27fc22db5de0d02a4cabe08e555663b62db4d4/manuals/volta/gv100/dev_pbdma.ref.txt | ||
| 40 | enum class BufferMethods : u32 { | 45 | enum class BufferMethods : u32 { |
| 41 | BindObject = 0x0, | 46 | BindObject = 0x0, |
| 47 | Illegal = 0x1, | ||
| 42 | Nop = 0x2, | 48 | Nop = 0x2, |
| 43 | SemaphoreAddressHigh = 0x4, | 49 | SemaphoreAddressHigh = 0x4, |
| 44 | SemaphoreAddressLow = 0x5, | 50 | SemaphoreAddressLow = 0x5, |
| 45 | SemaphoreSequence = 0x6, | 51 | SemaphoreSequencePayload = 0x6, |
| 46 | SemaphoreTrigger = 0x7, | 52 | SemaphoreOperation = 0x7, |
| 47 | NotifyIntr = 0x8, | 53 | NonStallInterrupt = 0x8, |
| 48 | WrcacheFlush = 0x9, | 54 | WrcacheFlush = 0x9, |
| 49 | Unk28 = 0xA, | 55 | MemOpA = 0xA, |
| 50 | UnkCacheFlush = 0xB, | 56 | MemOpB = 0xB, |
| 57 | MemOpC = 0xC, | ||
| 58 | MemOpD = 0xD, | ||
| 51 | RefCnt = 0x14, | 59 | RefCnt = 0x14, |
| 52 | SemaphoreAcquire = 0x1A, | 60 | SemaphoreAcquire = 0x1A, |
| 53 | SemaphoreRelease = 0x1B, | 61 | SemaphoreRelease = 0x1B, |
| 54 | FenceValue = 0x1C, | 62 | SyncpointPayload = 0x1C, |
| 55 | FenceAction = 0x1D, | 63 | SyncpointOperation = 0x1D, |
| 56 | WaitForInterrupt = 0x1E, | 64 | WaitForIdle = 0x1E, |
| 57 | Unk7c = 0x1F, | 65 | CRCCheck = 0x1F, |
| 58 | Yield = 0x20, | 66 | Yield = 0x20, |
| 59 | NonPullerMethods = 0x40, | 67 | NonPullerMethods = 0x40, |
| 60 | }; | 68 | }; |