27#ifndef __WF_LIBWS_DMA_H__
28#define __WF_LIBWS_DMA_H__
50#define ws_dma_set_source(src) _Generic((src), \
51 int8_t: ws_dma_set_sourcei, \
52 int16_t: ws_dma_set_sourcei, \
53 int32_t: ws_dma_set_sourcei, \
54 uint8_t: ws_dma_set_sourcei, \
55 uint16_t: ws_dma_set_sourcei, \
56 uint32_t: ws_dma_set_sourcei, \
57 default: ws_dma_set_sourcep \
70#define ws_sdma_set_source(src) _Generic((src), \
71 int8_t: ws_sdma_set_sourcei, \
72 int16_t: ws_sdma_set_sourcei, \
73 int32_t: ws_sdma_set_sourcei, \
74 uint8_t: ws_sdma_set_sourcei, \
75 uint16_t: ws_sdma_set_sourcei, \
76 uint32_t: ws_sdma_set_sourcei, \
77 default: ws_sdma_set_sourcep \
105static inline void ws_dma_copy_words(
void __wf_iram* dest,
const void __far* src, uint16_t length) {
static void ws_dma_set_sourcei(uint32_t src)
void ws_dma_opt_copy_words(void __wf_iram *dest, const void __far *src, uint16_t length)
Copy words from a source pointer to a destination pointer, using DMA if present.
static void ws_dma_set_sourcep(const void __far *src)
static void ws_sdma_set_length(uint32_t length)
static void ws_sdma_set_sourcei(uint32_t src)
static void ws_sdma_set_sourcep(const void __far *src)
void ws_dma_copy_words_linear(void __wf_iram *dest, uint32_t src, uint16_t length)
Copy words from a source linear address to a destination pointer using DMA.
static void ws_dma_copy_words(void __wf_iram *dest, const void __far *src, uint16_t length)
Copy words from a source pointer to a destination pointer using DMA.
static uint32_t ws_ptr_to_linear(const void __far *src)