94#define NRF_AXON_GENERATE_VERSION(major, minor, patch) \
95 (((major) << 16) | ((minor) << 8) | (patch))
96#define NRF_AXON_VERSION NRF_AXON_GENERATE_VERSION(2, 0, 1)
99#if !defined(AXON_FORCE_32BIT_ADDR) && \
100 ((defined(__SIZEOF_POINTER__) && (__SIZEOF_POINTER__ == 8)) || \
109#ifdef NRF_AXON_SIMULATION
110# define NRF_AXON_CMD_BUFFER_ALIGN
112# define NRF_AXON_CMD_BUFFER_ALIGN alignas(8)
122#define NRF_AXON_CEIL_BITS(x, y) ((((((x)+(1<<(y))-1)))>>(y))<<(y))
123#define NRF_AXON_NPU_OUTPUT_STRIDE(width, byte_width) NRF_AXON_CEIL_BITS((width)*(byte_width), 2)
282 bool keep_reservation);
295 uint32_t buffer_length);
nrf_axon_result_e nrf_axon_run_cmd_buf_sync(nrf_axon_cmd_buffer_info_s *cmd_buf_info, nrf_axon_syncmode_blocking_e block_mode, bool keep_reservation)
Synchronous command buffer execution.
nrf_axon_result_e
Axon driver return codes.
Definition nrf_axon_driver.h:131
@ NRF_AXON_RESULT_FAILURE_INVALID_LENGTH
Definition nrf_axon_driver.h:157
@ NRF_AXON_RESULT_FAILURE_MISSING_NULL_COEF
Definition nrf_axon_driver.h:145
@ NRF_AXON_RESULT_FAILURE_MISALIGNED_BUFFER
Definition nrf_axon_driver.h:151
@ NRF_AXON_RESULT_NULL_BUFFER
Definition nrf_axon_driver.h:147
@ NRF_AXON_RESULT_INVALID_MODEL
Definition nrf_axon_driver.h:139
@ NRF_AXON_RESULT_INVALID_CMD_BUF
Definition nrf_axon_driver.h:143
@ NRF_AXON_RESULT_BUFFER_TOO_SMALL
Definition nrf_axon_driver.h:141
@ NRF_AXON_RESULT_MUTEX_FAILED
Definition nrf_axon_driver.h:137
@ NRF_AXON_RESULT_NOT_FINISHED
Definition nrf_axon_driver.h:162
@ NRF_AXON_RESULT_SUCCESS
Definition nrf_axon_driver.h:161
@ NRF_AXON_RESULT_EVENT_PENDING
Definition nrf_axon_driver.h:166
@ NRF_AXON_RESULT_DRIVER_VERSION_TOO_OLD
Definition nrf_axon_driver.h:133
@ NRF_AXON_RESULT_TOO_MANY_NESTED_SYNC_CMDS
Definition nrf_axon_driver.h:135
@ NRF_AXON_RESULT_FAILURE
Definition nrf_axon_driver.h:159
@ NRF_AXON_RESULT_FAILURE_UNSUPPORTED_HARDWARE
Definition nrf_axon_driver.h:153
@ NRF_AXON_RESULT_FAILURE_INVALID_ROUNDING
Definition nrf_axon_driver.h:149
@ NRF_AXON_RESULT_FAILURE_HARDWARE_ERROR
Definition nrf_axon_driver.h:155
nrf_axon_result_e nrf_axon_queue_cmd_buf(nrf_axon_queued_cmd_info_wrapper_s *cmd_buf_wrapper)
Asynchronous command buffer execution.
int32_t NRF_AXON_PLATFORM_BITWIDTH_SIGNED_TYPE
Definition nrf_axon_driver.h:106
nrf_axon_result_e nrf_axon_init_command_buffer_info(nrf_axon_cmd_buffer_info_s *cmd_buf_info_ptr, const NRF_AXON_PLATFORM_BITWIDTH_UNSIGNED_TYPE *cmd_buf, uint32_t buffer_length)
binds a command buffer to an nrf_axon_cmd_buffer_info_s struct and initializes it....
nrf_axon_syncmode_blocking_e
Specifies the blocking mechanism for synchronous Axon command buffer execution.
Definition nrf_axon_driver.h:201
@ NRF_AXON_SYNC_MODE_BLOCKING_DEFERRED
Definition nrf_axon_driver.h:216
@ NRF_AXON_SYNC_MODE_BLOCKING_INVALID
Definition nrf_axon_driver.h:203
@ NRF_AXON_SYNC_MODE_BLOCKING_EVENT
Definition nrf_axon_driver.h:212
@ NRF_AXON_SYNC_MODE_BLOCKING_COUNT
Definition nrf_axon_driver.h:218
@ NRF_AXON_SYNC_MODE_BLOCKING_POLLING
Definition nrf_axon_driver.h:207
struct nrf_axon_queued_cmd_info_wrapper_s nrf_axon_queued_cmd_info_wrapper_s
Used as a parameter to nrf_axon_queue_cmd_buf for asynchronous execution.
uint32_t NRF_AXON_PLATFORM_BITWIDTH_UNSIGNED_TYPE
Definition nrf_axon_driver.h:105
uint32_t cur_segment_offset
Definition nrf_axon_driver.h:179
uint32_t length
Definition nrf_axon_driver.h:175
const NRF_AXON_PLATFORM_BITWIDTH_UNSIGNED_TYPE * cmd_buf_ptr
Definition nrf_axon_driver.h:177
Internal structure supplied by user but managed by the driver to track execution progress.
Definition nrf_axon_driver.h:173
void(* callback_function)(nrf_axon_result_e result, void *callback_context)
Definition nrf_axon_driver.h:231
void * callback_context
Definition nrf_axon_driver.h:229
void(* copy_input_function)(void *callback_context)
Definition nrf_axon_driver.h:233
nrf_axon_cmd_buffer_info_s * cmd_buf_info
Definition nrf_axon_driver.h:227
void(* copy_result_function)(void *callback_context)
Definition nrf_axon_driver.h:235
struct nrf_axon_queued_cmd_info_wrapper_s * next
Definition nrf_axon_driver.h:237
Used as a parameter to nrf_axon_queue_cmd_buf for asynchronous execution.
Definition nrf_axon_driver.h:225