47#ifndef PROTOCORE_DMA_H
48#define PROTOCORE_DMA_H
58enum class pc_dma_periph : uint8_t
66enum class pc_dma_dir : uint8_t
104typedef void (*pc_dma_cb)(
const pc_dma_event *ev,
void *ctx);
110 pc_dma_periph periph;
112 pc_dma_cb on_complete;
120bool pc_dma_open(
const pc_dma_config *cfg);
129bool pc_dma_tx_submit(uint8_t ch,
const uint8_t *buf, uint16_t len);
132void pc_dma_close(uint8_t ch);
139void pc_dma_poll(
void);
149bool pc_dma_sim_feed(uint8_t ch,
const uint8_t *bytes, uint16_t len);
156uint16_t pc_dma_sim_capture(uint8_t ch, uint8_t *out, uint16_t max);
User-facing configuration for ProtoCore.