Hardware access layer with cache and barrier support for managing the MVDMA peripheral. More...
Data Structures | |
struct | nrfy_mvdma_list_request_t |
Structure describing list execution request for the MVDMA. More... | |
struct | nrfy_mvdma_list_desc_t |
Auxiliary structure describing the MVDMA job list with unspecified direction. More... | |
Macros | |
#define | NRFY_MVDMA_HAS_NEW_VER 1 |
#define | NRFY_MVDMA_HAS_AXIMODE 1 |
Functions | |
NRFY_STATIC_INLINE void | nrfy_mvdma_int_init (NRF_MVDMA_Type *p_reg, uint32_t mask, uint8_t irq_priority, bool enable) |
Function for initializing the specified MVDMA interrupts. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_int_uninit (NRF_MVDMA_Type *p_reg) |
Function for uninitializing the specified MVDMA interrupts. | |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_events_process (NRF_MVDMA_Type *p_reg, uint32_t mask, nrfy_mvdma_list_request_t *p_list_request) |
Function for processing the specified MVDMA events. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_start (NRF_MVDMA_Type *p_reg, nrfy_mvdma_list_request_t const *p_list_request) |
Function for starting the MVDMA jobs in single-mode. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_multi_start (NRF_MVDMA_Type *p_reg, uint8_t idx, nrfy_mvdma_multi_list_request_t const *p_list_request) |
Function for starting the MVDMA jobs in multi-mode. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_multi_job_list_set (NRF_MVDMA_Type *p_reg, nrfy_mvdma_multi_list_request_t const *p_list_request) |
Function for setting the MVDMA job lists in multi-mode. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_multi_job_list_get (NRF_MVDMA_Type const *p_reg, nrfy_mvdma_multi_list_request_t *p_list_request) |
Function for getting the MVDMA job lists in multi-mode. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_job_list_set (NRF_MVDMA_Type *p_reg, nrfy_mvdma_list_request_t const *p_list_request) |
Function for setting the MVDMA jobs. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_reset (NRF_MVDMA_Type *p_reg, bool wait) |
Function for resetting the MVDMA peripheral. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_abort (NRF_MVDMA_Type *p_reg, nrfy_mvdma_list_request_t const *p_list_request) |
Function for aborting the MVDMA transaction. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_source_job_description_get (NRF_MVDMA_Type const *p_reg, nrfy_mvdma_list_desc_t *p_job_list_desc) |
Function for getting the MVDMA source job details. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_sink_job_description_get (NRF_MVDMA_Type const *p_reg, nrfy_mvdma_list_desc_t *p_job_list_desc) |
Function for getting the MVDMA sink job details. | |
NRFY_STATIC_INLINE void | nrfy_mvdma_task_trigger (NRF_MVDMA_Type *p_reg, nrf_mvdma_task_t task) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_task_address_get (NRF_MVDMA_Type const *p_reg, nrf_mvdma_task_t task) |
NRFY_STATIC_INLINE nrf_mvdma_task_t | nrfy_mvdma_start_task_get (NRF_MVDMA_Type const *p_reg, uint8_t index) |
NRFY_STATIC_INLINE void | nrfy_mvdma_event_clear (NRF_MVDMA_Type *p_reg, nrf_mvdma_event_t event) |
NRFY_STATIC_INLINE bool | nrfy_mvdma_event_check (NRF_MVDMA_Type const *p_reg, nrf_mvdma_event_t event) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_event_address_get (NRF_MVDMA_Type const *p_reg, nrf_mvdma_event_t event) |
NRFY_STATIC_INLINE void | nrfy_mvdma_int_enable (NRF_MVDMA_Type *p_reg, uint32_t mask) |
NRFY_STATIC_INLINE void | nrfy_mvdma_int_disable (NRF_MVDMA_Type *p_reg, uint32_t mask) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_int_enable_check (NRF_MVDMA_Type const *p_reg, uint32_t mask) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_int_pending_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE void | nrfy_mvdma_subscribe_set (NRF_MVDMA_Type *p_reg, nrf_mvdma_task_t task, uint8_t channel) |
NRFY_STATIC_INLINE void | nrfy_mvdma_subscribe_clear (NRF_MVDMA_Type *p_reg, nrf_mvdma_task_t task) |
NRFY_STATIC_INLINE void | nrfy_mvdma_publish_set (NRF_MVDMA_Type *p_reg, nrf_mvdma_event_t event, uint8_t channel) |
NRFY_STATIC_INLINE void | nrfy_mvdma_publish_clear (NRF_MVDMA_Type *p_reg, nrf_mvdma_event_t event) |
NRFY_STATIC_INLINE void | nrfy_mvdma_mode_set (NRF_MVDMA_Type *p_reg, nrf_mvdma_mode_t mode) |
NRFY_STATIC_INLINE void | nrfy_mvdma_aximode_set (NRF_MVDMA_Type *p_reg, nrf_mvdma_aximode_t aximode) |
NRFY_STATIC_INLINE void | nrfy_mvdma_source_list_ptr_set (NRF_MVDMA_Type *p_reg, nrf_vdma_job_t const *p_job) |
NRFY_STATIC_INLINE nrf_vdma_job_t * | nrfy_mvdma_source_list_ptr_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE void | nrfy_mvdma_sink_list_ptr_set (NRF_MVDMA_Type *p_reg, nrf_vdma_job_t const *p_job) |
NRFY_STATIC_INLINE nrf_vdma_job_t * | nrfy_mvdma_sink_list_ptr_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_crc_result_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE nrf_mvdma_fifo_status_t | nrfy_mvdma_fifo_status_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE bool | nrfy_mvdma_activity_check (NRF_MVDMA_Type *p_reg) |
NRFY_STATIC_INLINE nrf_mvdma_source_error_t | nrfy_mvdma_source_error_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE nrf_mvdma_sink_error_t | nrfy_mvdma_sink_error_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_last_source_address_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_last_sink_address_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_source_job_count_get (NRF_MVDMA_Type const *p_reg) |
NRFY_STATIC_INLINE uint32_t | nrfy_mvdma_sink_job_count_get (NRF_MVDMA_Type const *p_reg) |
Hardware access layer with cache and barrier support for managing the MVDMA peripheral.
#define NRFY_MVDMA_HAS_AXIMODE 1 |
#define NRFY_MVDMA_HAS_NEW_VER 1 |
NRFY_STATIC_INLINE void nrfy_mvdma_abort | ( | NRF_MVDMA_Type * | p_reg, |
nrfy_mvdma_list_request_t const * | p_list_request | ||
) |
Function for aborting the MVDMA transaction.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_list_request | Pointer to the structure of list execution request. |
NRFY_STATIC_INLINE bool nrfy_mvdma_activity_check | ( | NRF_MVDMA_Type * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
true | MVDMA is processing data. |
false | MVDMA is idle. |
NRFY_STATIC_INLINE void nrfy_mvdma_aximode_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_aximode_t | aximode | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | aximode | Desired AXI mode for MVDMA. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_crc_result_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_event_address_get | ( | NRF_MVDMA_Type const * | p_reg, |
nrf_mvdma_event_t | event | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Specified event. |
NRFY_STATIC_INLINE bool nrfy_mvdma_event_check | ( | NRF_MVDMA_Type const * | p_reg, |
nrf_mvdma_event_t | event | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event to be checked. |
true | The event has been generated. |
false | The event has not been generated. |
NRFY_STATIC_INLINE void nrfy_mvdma_event_clear | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_event_t | event | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event to clear. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_events_process | ( | NRF_MVDMA_Type * | p_reg, |
uint32_t | mask, | ||
nrfy_mvdma_list_request_t * | p_list_request | ||
) |
Function for processing the specified MVDMA events.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of events to be processed, created by NRFY_EVENT_TO_INT_BITMASK(). |
[in] | p_list_request | Pointer to the structure of list execution request associated with the last operation. Can be NULL. |
NRFY_STATIC_INLINE nrf_mvdma_fifo_status_t nrfy_mvdma_fifo_status_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_int_disable | ( | NRF_MVDMA_Type * | p_reg, |
uint32_t | mask | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be disabled. Use nrf_mvdma_int_mask_t values for bit masking. |
NRFY_STATIC_INLINE void nrfy_mvdma_int_enable | ( | NRF_MVDMA_Type * | p_reg, |
uint32_t | mask | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be enabled. Use nrf_mvdma_int_mask_t values for bit masking. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_int_enable_check | ( | NRF_MVDMA_Type const * | p_reg, |
uint32_t | mask | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be checked. Use nrf_mvdma_int_mask_t values for bit masking. |
NRFY_STATIC_INLINE void nrfy_mvdma_int_init | ( | NRF_MVDMA_Type * | p_reg, |
uint32_t | mask, | ||
uint8_t | irq_priority, | ||
bool | enable | ||
) |
Function for initializing the specified MVDMA interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mask | Mask of interrupts to be initialized. |
[in] | irq_priority | Interrupt priority. |
[in] | enable | True if the interrupts are to be enabled, false otherwise. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_int_pending_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_int_uninit | ( | NRF_MVDMA_Type * | p_reg | ) |
Function for uninitializing the specified MVDMA interrupts.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_job_list_set | ( | NRF_MVDMA_Type * | p_reg, |
nrfy_mvdma_list_request_t const * | p_list_request | ||
) |
Function for setting the MVDMA jobs.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_list_request | Pointer to the structure of list execution request. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_last_sink_address_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_last_source_address_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_mode_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_mode_t | mode | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | mode | Desired operating mode for MVDMA. |
NRFY_STATIC_INLINE void nrfy_mvdma_multi_job_list_get | ( | NRF_MVDMA_Type const * | p_reg, |
nrfy_mvdma_multi_list_request_t * | p_list_request | ||
) |
Function for getting the MVDMA job lists in multi-mode.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_list_request | Pointer to the structure to be filled with list execution request. |
NRFY_STATIC_INLINE void nrfy_mvdma_multi_job_list_set | ( | NRF_MVDMA_Type * | p_reg, |
nrfy_mvdma_multi_list_request_t const * | p_list_request | ||
) |
Function for setting the MVDMA job lists in multi-mode.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_list_request | Pointer to the structure of list execution request. |
NRFY_STATIC_INLINE void nrfy_mvdma_multi_start | ( | NRF_MVDMA_Type * | p_reg, |
uint8_t | idx, | ||
nrfy_mvdma_multi_list_request_t const * | p_list_request | ||
) |
Function for starting the MVDMA jobs in multi-mode.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | idx | Index of the job list that will be executed. |
[in] | p_list_request | Pointer to the structure of lists execution request if the transaction is to be blocking. NULL for non-blocking transactions. |
NRFY_STATIC_INLINE void nrfy_mvdma_publish_clear | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_event_t | event | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event for which to clear the configuration. |
NRFY_STATIC_INLINE void nrfy_mvdma_publish_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_event_t | event, | ||
uint8_t | channel | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | event | Event for which to set the configuration. |
[in] | channel | Channel through which to publish the event. |
NRFY_STATIC_INLINE void nrfy_mvdma_reset | ( | NRF_MVDMA_Type * | p_reg, |
bool | wait | ||
) |
Function for resetting the MVDMA peripheral.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | wait | True if reset is to be done in blocking mode, false otherwise. |
NRFY_STATIC_INLINE nrf_mvdma_sink_error_t nrfy_mvdma_sink_error_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_sink_job_count_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_sink_job_description_get | ( | NRF_MVDMA_Type const * | p_reg, |
nrfy_mvdma_list_desc_t * | p_job_list_desc | ||
) |
Function for getting the MVDMA sink job details.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_job_list_desc | Pointer to the structure to be filled with job list description. |
NRFY_STATIC_INLINE nrf_vdma_job_t * nrfy_mvdma_sink_list_ptr_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_sink_list_ptr_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_vdma_job_t const * | p_job | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_job | Pointer to a job list. |
NRFY_STATIC_INLINE nrf_mvdma_source_error_t nrfy_mvdma_source_error_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_source_job_count_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_source_job_description_get | ( | NRF_MVDMA_Type const * | p_reg, |
nrfy_mvdma_list_desc_t * | p_job_list_desc | ||
) |
Function for getting the MVDMA source job details.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[out] | p_job_list_desc | Pointer to the structure to be filled with job list description. |
NRFY_STATIC_INLINE nrf_vdma_job_t * nrfy_mvdma_source_list_ptr_get | ( | NRF_MVDMA_Type const * | p_reg | ) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
NRFY_STATIC_INLINE void nrfy_mvdma_source_list_ptr_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_vdma_job_t const * | p_job | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_job | Pointer to a job list. |
NRFY_STATIC_INLINE void nrfy_mvdma_start | ( | NRF_MVDMA_Type * | p_reg, |
nrfy_mvdma_list_request_t const * | p_list_request | ||
) |
Function for starting the MVDMA jobs in single-mode.
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | p_list_request | Pointer to the structure of list execution request if the transaction is to be blocking. NULL for non-blocking transactions. |
NRFY_STATIC_INLINE nrf_mvdma_task_t nrfy_mvdma_start_task_get | ( | NRF_MVDMA_Type const * | p_reg, |
uint8_t | index | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | index | Index of the START task. |
NRFY_STATIC_INLINE void nrfy_mvdma_subscribe_clear | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_task_t | task | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task for which to clear the configuration. |
NRFY_STATIC_INLINE void nrfy_mvdma_subscribe_set | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_task_t | task, | ||
uint8_t | channel | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task for which to set the configuration. |
[in] | channel | Channel through which to subscribe events. |
NRFY_STATIC_INLINE uint32_t nrfy_mvdma_task_address_get | ( | NRF_MVDMA_Type const * | p_reg, |
nrf_mvdma_task_t | task | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Specified task. |
NRFY_STATIC_INLINE void nrfy_mvdma_task_trigger | ( | NRF_MVDMA_Type * | p_reg, |
nrf_mvdma_task_t | task | ||
) |
[in] | p_reg | Pointer to the structure of registers of the peripheral. |
[in] | task | Task to be activated. |