![]() |
![]() |
|
CC35xxDriverLibrary
|
|
Macros | |
| #define | XIP_UDMA_BIT_SECURE_MASK 0x04000000 |
| Address bit secure mask - identify secure/non-secure address based on bit 26 (External memory) More... | |
| #define | XIP_UDMA_CHANNEL_STATUS_IDLE 0 |
| Channel is in IDLE state, there is no active job. More... | |
| #define | XIP_UDMA_CHANNEL_STATUS_PROGRESS 1 |
| Channel is in PROGRESS state, there is an active job. More... | |
| #define | XIP_UDMA_DIRECTION_EXT_TO_INT 0 |
| UDMA Data movement from External memory to Internal memory. More... | |
| #define | XIP_UDMA_DIRECTION_INT_TO_EXT 1 |
| UDMA Data movement from Internal memory to External memory. More... | |
| #define | XIP_UDMA_JOB_STARTED 0 |
| UDMA job started. More... | |
| #define | XIP_UDMA_JOB_NOT_START (-1) |
| UDMA job not started. More... | |
| #define | XIP_UDMA_JOB_IRQ_STATUS_DONE 0 |
| Transaction done. More... | |
| #define | XIP_UDMA_JOB_IRQ_STATUS_BUS_ERROR 1 |
| Error, but able to recover (only in write) More... | |
| #define | XIP_UDMA_JOB_IRQ_STATUS_SEC_ERROR 2 |
| Error, unable to recover. More... | |
| #define | XIP_UDMA_NON_SECURE_CHANNEL 0 |
| #define | XIP_UDMA_SECURE_CHANNEL 1 |
Functions | |
| uint32_t | XIPStartUDMATransaction (const uint32_t *srcAddr, uint32_t *dstAddr, uint32_t length, uint8_t directionMode, uint32_t channelSelect) |
| Configure the relevant channel and start a uDMA transaction. More... | |
| uint32_t | XIPGetUDMAChannelProgressingStatus (uint32_t channelSelect) |
| Return the channel progressing status. More... | |
| uint32_t | XIPGetUDMAChannelWordsLeft (uint32_t channelSelect) |
| Return the channel remaining words left to transmit. More... | |
| uint32_t | XIPGetUDMAIrqStatus (uint32_t channelSelect) |
| Return the transactions status. More... | |
| void | XIPDisableOTFDE (void) |
| Disable the OTFDE processing. More... | |
| void | XIPEnableOTFDE (void) |
| Enable the OTFDE processing. More... | |
| #define XIP_UDMA_BIT_SECURE_MASK 0x04000000 |
Address bit secure mask - identify secure/non-secure address based on bit 26 (External memory)
| #define XIP_UDMA_CHANNEL_STATUS_IDLE 0 |
Channel is in IDLE state, there is no active job.
| #define XIP_UDMA_CHANNEL_STATUS_PROGRESS 1 |
Channel is in PROGRESS state, there is an active job.
| #define XIP_UDMA_DIRECTION_EXT_TO_INT 0 |
UDMA Data movement from External memory to Internal memory.
| #define XIP_UDMA_DIRECTION_INT_TO_EXT 1 |
UDMA Data movement from Internal memory to External memory.
| #define XIP_UDMA_JOB_STARTED 0 |
UDMA job started.
Referenced by XIPStartUDMATransaction().
| #define XIP_UDMA_JOB_NOT_START (-1) |
UDMA job not started.
Referenced by XIPStartUDMATransaction().
| #define XIP_UDMA_JOB_IRQ_STATUS_DONE 0 |
Transaction done.
| #define XIP_UDMA_JOB_IRQ_STATUS_BUS_ERROR 1 |
Error, but able to recover (only in write)
| #define XIP_UDMA_JOB_IRQ_STATUS_SEC_ERROR 2 |
Error, unable to recover.
| #define XIP_UDMA_NON_SECURE_CHANNEL 0 |
| #define XIP_UDMA_SECURE_CHANNEL 1 |
| uint32_t XIPStartUDMATransaction | ( | const uint32_t * | srcAddr, |
| uint32_t * | dstAddr, | ||
| uint32_t | length, | ||
| uint8_t | directionMode, | ||
| uint32_t | channelSelect | ||
| ) |
Configure the relevant channel and start a uDMA transaction.
| srcAddr | is a pointer to the source data. |
| dstAddr | is a pointer to the destination data. |
| length | is the number of words to transfer and should not be larger than XIP_UDMA_MAX_JOB_SIZE. |
| directionMode | specify the copy direction.
|
| channelSelect | specify which channel to use secure or non-secure (in current implementation only use SECURE channel!) |
References ASSERT, HOST_XIP_O_UDSCFG0, HOST_XIP_O_UDSCFG1, HOST_XIP_O_UDSCFG2, HOST_XIP_O_UDSCFG3, HOST_XIP_O_UDSCTL0, HOST_XIP_O_UDSSTA, HOST_XIP_REGS_BASE, HOST_XIP_UDSCFG0_JSRCADDR_M, HOST_XIP_UDSCFG0_JSRCADDR_S, HOST_XIP_UDSCFG1_JDESTADDR_M, HOST_XIP_UDSCFG1_JDESTADDR_S, HOST_XIP_UDSCFG2_JLEN_M, HOST_XIP_UDSCFG2_JLEN_S, HOST_XIP_UDSCFG3_JDIR_M, HOST_XIP_UDSCFG3_JDIR_S, HOST_XIP_UDSCTL0_JSTART, HOST_XIP_UDSSTA_JSTA_M, HWREG, XIP_UDMA_JOB_NOT_START, XIP_UDMA_JOB_STARTED, XIP_UDMA_MAX_JOB_SIZE, XIP_UDMA_NO_JOB_CONFIGURED, XIP_UDMA_NON_SECURE_CHANNEL, XIP_UDMA_NONSEC_CH_OFFSET, and XIP_UDMA_SEC_CH_OFFSET.
| uint32_t XIPGetUDMAChannelProgressingStatus | ( | uint32_t | channelSelect | ) |
Return the channel progressing status.
| channelSelect | selects either secure or non-secure channel.
|
References HOST_XIP_O_UDSSTA, HOST_XIP_REGS_BASE, HOST_XIP_UDSSTA_JINPROG_M, HOST_XIP_UDSSTA_JINPROG_S, HWREG, XIP_UDMA_NON_SECURE_CHANNEL, XIP_UDMA_NONSEC_CH_OFFSET, and XIP_UDMA_SEC_CH_OFFSET.
| uint32_t XIPGetUDMAChannelWordsLeft | ( | uint32_t | channelSelect | ) |
Return the channel remaining words left to transmit.
| channelSelect | selects either secure or non-secure channel.
|
References HOST_XIP_O_UDSSTA, HOST_XIP_REGS_BASE, HOST_XIP_UDSSTA_RDWRDSLFT_M, HOST_XIP_UDSSTA_RDWRDSLFT_S, HWREG, XIP_UDMA_NON_SECURE_CHANNEL, XIP_UDMA_NONSEC_CH_OFFSET, and XIP_UDMA_SEC_CH_OFFSET.
| uint32_t XIPGetUDMAIrqStatus | ( | uint32_t | channelSelect | ) |
Return the transactions status.
This function can be called when interrupt raised or when channel is Idle.
| channelSelect | selects either the secure or non-secure channel.
|
References HOST_XIP_O_UDSIRQ, HOST_XIP_REGS_BASE, HOST_XIP_UDSIRQ_JIRQSTA_M, HOST_XIP_UDSIRQ_JIRQSTA_S, HWREG, XIP_UDMA_NON_SECURE_CHANNEL, XIP_UDMA_NONSEC_CH_OFFSET, and XIP_UDMA_SEC_CH_OFFSET.
| void XIPDisableOTFDE | ( | void | ) |
Disable the OTFDE processing.
| void XIPEnableOTFDE | ( | void | ) |
Enable the OTFDE processing.
Referenced by __attribute__().