67typedef enum : uint8_t {
75typedef enum : uint8_t {
ra8_err_t ra8_dma_channel_is_busy(uint8_t channel, bool *out_busy)
Query the allocation state of a channel.
ra8_dma_invalid_channel_t
Sentinel for "no channel allocated".
@ k_ra8_dma_channel_none
RA8 DMA channel none.
ra8_err_t ra8_dma_init(void)
Initialise the DMA substrate.
ra8_err_t ra8_dma_release(uint8_t channel)
Stop a channel and return it to the free pool.
ra8_err_t ra8_dma_deinit(void)
Release the DMA substrate.
void ra8_dma_dispatch_complete(uint8_t channel)
Dispatch a transfer-end completion callback for one channel.
ra8_err_t ra8_dma_request(const ra8_dma_request_t *req, uint8_t *out_channel)
Allocate a DMAC channel, programme it, and start the trigger wiring.
ra8_dma_channel_count_t
Number of channels the DMAC backend exposes.
@ k_ra8_dma_channel_count
RA8 DMA channel count.
void(* ra8_dma_complete_fn_t)(void *ctx)
Caller-supplied completion callback.
8-channel DMA controller (DMAC0) driver
ra8_dmac_width_t
Transfer element width.
Event Link Controller (ELC) register layout for the Renesas RA8D2.
ra8_elc_event_t
Partial list of ELC events (populate as drivers need them).
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Descriptor for a single DMA transfer.
ra8_dma_complete_fn_t on_complete
On complete.
uintptr_t dst_addr
Dst address.
ra8_dmac_width_t width
Width.
uintptr_t src_addr
Src address.
ra8_elc_event_t trigger
Trigger.