Exports for Kernel.
More...
|
| enum | SceKernelDmacId {
SCE_KERNEL_DMAC_ID_DMAC01 = 0x10
, SCE_KERNEL_DMAC_ID_DMAC23 = 0x11
, SCE_KERNEL_DMAC_ID_DMAC4 = 0x12
, SCE_KERNEL_DMAC_ID_DMAC5 = 0x13
,
SCE_KERNEL_DMAC_ID_DMAC6 = 0x14
} |
| |
| enum | SceKernelDmaOpFlag {
SCE_KERNEL_DMA_OP_PHYSICAL_ADDR = 0x000
, SCE_KERNEL_DMA_OP_VIRTUAL_SRC_ADDR = 0x001
, SCE_KERNEL_DMA_OP_VIRTUAL_DST_ADDR = 0x010
, SCE_KERNEL_DMA_OP_VIRTUAL_ADDR = 0x011
,
SCE_KERNEL_DMA_OP_COMPLETE_CHAIN = 0x100
} |
| |
| enum | SceKernelDmaOpSyncMode { SCE_KERNEL_DMA_OP_SYNC_POLL = 0x1
, SCE_KERNEL_DMA_OP_SYNC_WAIT = 0x2
, SCE_KERNEL_DMA_OP_SYNC_TIMED_WAIT = 0x3
} |
| |
|
| | VITASDK_BUILD_ASSERT_EQ (4, SceKernelDmaOpId) |
| |
| | VITASDK_BUILD_ASSERT_EQ (0x20, SceKernelDmaOpTag) |
| |
| | VITASDK_BUILD_ASSERT_EQ (0x50, SceKernelDmaOpEncDec) |
| |
| | VITASDK_BUILD_ASSERT_EQ (0xC, SceKernelDmaOpChainParam) |
| |
| | VITASDK_BUILD_ASSERT_EQ (0x5C, SceKernelDmaOpEncDecChainParam) |
| |
| | VITASDK_BUILD_ASSERT_EQ (0x6C, SceKernelDmaOpDirectParam) |
| |
| SceKernelDmaOpId | ksceKernelDmaOpAlloc (const char *name) |
| | Allocate a DMA Op handle.
|
| |
| int | ksceKernelDmaOpFree (SceKernelDmaOpId opid) |
| | Free a DMA Op handle.
|
| |
| int | ksceKernelDmaOpEnQueue (SceKernelDmaOpId opid) |
| | Enqueue a DMA Op.
|
| |
| int | ksceKernelDmaOpDeQueue (SceKernelDmaOpId opid) |
| | Dequeue a DMA Op.
|
| |
| int | ksceKernelDmaOpQuit (SceKernelDmaOpId opid) |
| | Cancel a DMA Op.
|
| |
| int | ksceKernelDmaOpSync (SceKernelDmaOpId opid, SceKernelDmaOpSyncMode syncMode, SceUInt32 *pTimeout, SceKernelDmaOpTag **ppErrorTag) |
| | Synchronize with the completion of a DMA Op.
|
| |
| int | ksceKernelDmaOpAssign (SceKernelDmaOpId opid, SceKernelDmacId dmac, SceUInt32 channel) |
| | Assign a DMA Op to one of the DMA controllers.
|
| |
| int | ksceKernelDmaOpSetupDirect (SceKernelDmaOpId opid, SceKernelDmaOpDirectParam *pParam, SceKernelDmaOpFlag flag) |
| | Setup a DMA Op with a direct set of parameters.
|
| |
| int | ksceKernelDmaOpSetupChain (SceKernelDmaOpId opid, SceKernelDmaOpTag *pTag, SceKernelDmaOpChainParam *pParam, SceKernelDmaOpFlag flag) |
| | Setup a DMA Op with a chain of tags.
|
| |
| int | ksceKernelDmaOpConcatenate (SceKernelDmaOpId opid, SceKernelDmaOpTag *pTag, SceKernelDmaOpFlag flag) |
| | Append a new list of tags to the DMA Op.
|
| |
| int | ksceKernelDmaOpSetCallback (SceKernelDmaOpId opid, SceKernelDmaOpCallback callback, void *pUserData) |
| | Set the callback for the completion of the DMA Op.
|
| |
Exports for Kernel.
Using this library in your project
Include the header file in your project:
Link the library to the executable:
◆ SceKernelDmaOpTag
| Data Fields |
|
const void * |
src |
|
|
void * |
dst |
|
|
SceUInt32 |
len |
|
|
SceUInt32 |
cmd |
Bitwise combination of SCE_KERNEL_DMAC_CMD_* fields. |
|
SceUInt32 |
keyring |
|
|
void * |
iv |
Must be a physical address. |
|
SceUInt32 |
blockSize |
|
|
struct SceKernelDmaOpTag * |
pNext |
Set to SCE_KERNEL_DMAC_CHAIN_END to signify the last tag. |
◆ SceKernelDmaOpEncDec
| struct SceKernelDmaOpEncDec |
◆ SceKernelDmaOpChainParam
| struct SceKernelDmaOpChainParam |
◆ SceKernelDmaOpEncDecChainParam
| struct SceKernelDmaOpEncDecChainParam |
◆ SceKernelDmaOpDirectParam
| struct SceKernelDmaOpDirectParam |
◆ SCE_KERNEL_DMAC_CHAIN_END
Signifies the end of the DMA tag chain.
◆ SceKernelDmaOpId
◆ SceKernelDmaOpCallback
◆ SceKernelDmacId
| Enumerator |
|---|
| SCE_KERNEL_DMAC_ID_DMAC01 | DMAC0/1.
|
| SCE_KERNEL_DMAC_ID_DMAC23 | DMAC2/3.
|
| SCE_KERNEL_DMAC_ID_DMAC4 | DMAC4.
|
| SCE_KERNEL_DMAC_ID_DMAC5 | DMAC5.
|
| SCE_KERNEL_DMAC_ID_DMAC6 | DMAC6 (Devkit only)
|
◆ SceKernelDmaOpFlag
| Enumerator |
|---|
| SCE_KERNEL_DMA_OP_PHYSICAL_ADDR | src and dst addresses are physical addresses
|
| SCE_KERNEL_DMA_OP_VIRTUAL_SRC_ADDR | src addresses are virtual addresses
|
| SCE_KERNEL_DMA_OP_VIRTUAL_DST_ADDR | dst addresses is virtual addresses
|
| SCE_KERNEL_DMA_OP_VIRTUAL_ADDR | Both src and dst addresses are virtual addresses.
|
| SCE_KERNEL_DMA_OP_COMPLETE_CHAIN | Full DMA chain is provided, starting from pTag and ending with pTag + 1.
|
◆ SceKernelDmaOpSyncMode
| Enumerator |
|---|
| SCE_KERNEL_DMA_OP_SYNC_POLL | Poll for completion without waiting.
|
| SCE_KERNEL_DMA_OP_SYNC_WAIT | Wait for completion.
|
| SCE_KERNEL_DMA_OP_SYNC_TIMED_WAIT | Wait for completion with timeout.
|
◆ ksceDmacMemcpy()
| int ksceDmacMemcpy |
( |
void * |
dst, |
|
|
const void * |
src, |
|
|
SceSize |
size |
|
) |
| |
DMA memcpy.
- Parameters
-
| [in] | dst | - Destination |
| [in] | src | - Source |
| [in] | size | - Size |
- Returns
- 0 on success, < 0 on error.
◆ ksceDmacMemset()
| int ksceDmacMemset |
( |
void * |
dst, |
|
|
int |
c, |
|
|
SceSize |
size |
|
) |
| |
DMA memset.
- Parameters
-
| [in] | dst | - Destination |
| [in] | c | - Constant |
| [in] | size | - Size |
- Returns
- 0 on success, < 0 on error.
◆ VITASDK_BUILD_ASSERT_EQ() [1/6]
◆ VITASDK_BUILD_ASSERT_EQ() [2/6]
◆ VITASDK_BUILD_ASSERT_EQ() [3/6]
◆ VITASDK_BUILD_ASSERT_EQ() [4/6]
◆ VITASDK_BUILD_ASSERT_EQ() [5/6]
◆ VITASDK_BUILD_ASSERT_EQ() [6/6]
◆ ksceKernelDmaOpAlloc()
Allocate a DMA Op handle.
- Parameters
-
| name | - Name of the DMA Op. |
- Returns
- the ID of the DMA Op on success, < 0 on error.
◆ ksceKernelDmaOpFree()
Free a DMA Op handle.
- Parameters
-
| opid | - The DMA Op to free. |
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpEnQueue()
Enqueue a DMA Op.
- Parameters
-
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpDeQueue()
Dequeue a DMA Op.
- Parameters
-
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpQuit()
Cancel a DMA Op.
- Parameters
-
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpSync()
Synchronize with the completion of a DMA Op.
- Parameters
-
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpAssign()
Assign a DMA Op to one of the DMA controllers.
- Parameters
-
| opid | - The target DMA Op. |
| dmac | - The DMA controller to assign it to. |
| channel | - The channel of the controller (0 - 15 for DMAC4, 0 otherwise). |
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpSetupDirect()
Setup a DMA Op with a direct set of parameters.
- Parameters
-
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpSetupChain()
Setup a DMA Op with a chain of tags.
- Parameters
-
| opid | - The target DMA Op. |
| pTag | - The list of DMA tags for the op. |
| pParam | - The parameters for the DMA Op. |
| flag | - One of SceKernelDmaOpFlag. |
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpConcatenate()
Append a new list of tags to the DMA Op.
- Parameters
-
| opid | - The target DMA Op. |
| pTag | - The list of DMA tags to append. |
| flag | - One of SceKernelDmaOpFlag. |
- Returns
- 0 on success, < 0 on error.
◆ ksceKernelDmaOpSetCallback()
Set the callback for the completion of the DMA Op.
- Parameters
-
| opid | - The target DMA Op. |
| callback | - The callback. |
| pUserData | - The callback parameter. |
- Returns
- 0 on success, < 0 on error.
◆ src [1/2]
| const void* SceKernelDmaOpTag::src |
◆ dst [1/2]
| void* SceKernelDmaOpTag::dst |
◆ len [1/2]
◆ cmd [1/2]
Bitwise combination of SCE_KERNEL_DMAC_CMD_* fields.
◆ keyring [1/2]
◆ iv [1/2]
| void* SceKernelDmaOpTag::iv |
Must be a physical address.
◆ blockSize [1/2]
◆ pNext
Set to SCE_KERNEL_DMAC_CHAIN_END to signify the last tag.
◆ keyring [2/2]
◆ iv [2/2]
| void* SceKernelDmaOpEncDec::iv |
Must be a physical address.
◆ ivCoherencyMask
| SceUInt32 SceKernelDmaOpEncDec::ivCoherencyMask |
◆ reserved
◆ key
| SceUInt8 SceKernelDmaOpEncDec::key[0x40] |
◆ size
| SceSize SceKernelDmaOpChainParam::size |
◆ coherencyMask [1/2]
| SceUInt32 SceKernelDmaOpChainParam::coherencyMask |
◆ setValue [1/2]
8-bit value duplicated into 32 bits
◆ header
header.size = sizeof(SceKernelDmaOpEncDecChainParam)
◆ encDec [1/2]
◆ src [2/2]
| const void* SceKernelDmaOpDirectParam::src |
◆ dst [2/2]
| void* SceKernelDmaOpDirectParam::dst |
◆ len [2/2]
◆ cmd [2/2]
Bitwise combination of SCE_KERNEL_DMAC_CMD_* fields.
◆ blockSize [2/2]
| SceUInt32 SceKernelDmaOpDirectParam::blockSize |
◆ coherencyMask [2/2]
| SceUInt32 SceKernelDmaOpDirectParam::coherencyMask |
◆ setValue [2/2]
| SceUInt32 SceKernelDmaOpDirectParam::setValue |
8-bit value duplicated into 32 bits
◆ encDec [2/2]