Line 3:
Line 3:
==Functions==
==Functions==
−
Every non-bool function returns a uint64_t timestamp that can be used with DMAEWaitDone
+
All uint64_t values returned from functions are timestamps that can be used with DMAEWaitDone.
−
===Wait===
+
===Timing===
{| class="wikitable"
{| class="wikitable"
!Name
!Name
Line 22:
Line 22:
|-
|-
|DMAEInitSemaphore
|DMAEInitSemaphore
−
|<code>void DMAEInitSemaphore(uint64_t *semaphoreAddr, uint64_t semaphoreCount)</code>
+
|<code>uint64_t DMAEInitSemaphore(uint64_t *semaphoreAddr, uint64_t semaphoreCount)</code>
|Initialize a Semaphore to synchronize DMA Engine to the GPU (GPU7)
|Initialize a Semaphore to synchronize DMA Engine to the GPU (GPU7)
|-
|-
|DMAESemaphore
|DMAESemaphore
−
|<code>void DMAESemaphore(u64 *semaphoreAddr, DMAESemaphoreAction semaphoreAction)</code>
+
|<code>uint64_t DMAESemaphore(u64 *semaphoreAddr, DMAESemaphoreAction semaphoreAction)</code>
|Create a Semaphore at the specified address
|Create a Semaphore at the specified address
|}
|}
Line 36:
Line 36:
|-
|-
|DMAECopyMem
|DMAECopyMem
−
|<code>void DMAECopyMem(void *dst, const void *src, uint32_t size, DMAEEndian endian)</code>
+
|<code>uint64_t DMAECopyMem(void *dst, const void *src, uint32_t size, DMAEEndian endian)</code>
|Copy src to dst (high-level memcpy)
|Copy src to dst (high-level memcpy)
|-
|-
Line 44:
Line 44:
|-
|-
|DMAEFillMem
|DMAEFillMem
−
|<code>void DMAEFillMem(void *dst, uint32_t fillData, uint32_t size)</code>
+
|<code>uint64_t DMAEFillMem(void *dst, uint32_t fillData, uint32_t size)</code>
|Fill a virtual memory range with "fillData" (also has DMAEFillMemWait version)
|Fill a virtual memory range with "fillData" (also has DMAEFillMemWait version)
|-
|-
|DMAEFillMemPhys
|DMAEFillMemPhys
−
|<code>void DMAEFillMemPhys(uint32_t dst_pa, uint32_t fillData, uint32_t size</code>
+
|<code>uint64_t DMAEFillMemPhys(uint32_t dst_pa, uint32_t fillData, uint32_t size</code>
|Fill a physical memory range with "fillData" (also has DMAEFillMemPhysWait version)
|Fill a physical memory range with "fillData" (also has DMAEFillMemPhysWait version)
|}
|}