4 #ifndef RTOS_MIC_ARRAY_H_
5 #define RTOS_MIC_ARRAY_H_
14 #include <xcore/channel.h>
15 #include <xcore/clock.h>
16 #include <xcore/port.h>
17 #include "mic_array.h"
18 #include "mic_array_vanilla.h"
20 #include "rtos_osal.h"
21 #include "rtos_driver_rpc.h"
28 RTOS_MIC_ARRAY_CHANNEL_SAMPLE,
29 RTOS_MIC_ARRAY_SAMPLE_CHANNEL,
30 RTOS_MIC_ARRAY_FORMAT_COUNT
46 __attribute__((fptrgroup(
"rtos_mic_array_rx_fptr_grp")))
49 streaming_channel_t c_pdm_mic;
52 rtos_osal_thread_t hil_thread;
53 rtos_osal_semaphore_t recv_sem;
60 volatile size_t total_written;
61 volatile size_t total_read;
62 volatile size_t required_available_count;
66 #include "rtos_mic_array_rpc.h"
101 return ctx->rx(ctx, sample_buf, frame_count, timeout);
124 unsigned interrupt_core_id);
140 uint32_t io_core_mask,
size_t rtos_mic_array_rx(rtos_mic_array_t *ctx, int32_t **sample_buf, size_t frame_count, unsigned timeout)
Definition: rtos_mic_array.h:95
rtos_mic_array_format_t
Definition: rtos_mic_array.h:27
void rtos_mic_array_init(rtos_mic_array_t *mic_array_ctx, uint32_t io_core_mask, rtos_mic_array_format_t format)
Definition: rtos_mic_array.c:171
void rtos_mic_array_start(rtos_mic_array_t *mic_array_ctx, size_t buffer_size, unsigned interrupt_core_id)
Definition: rtos_mic_array.c:141
Definition: rtos_driver_rpc.h:23
Definition: rtos_mic_array.h:43