libws libws
WSwan hardware library for the Wonderful toolchain
Loading...
Searching...
No Matches
Functions - DMA

Macros

#define ws_dma_set_source(src)
 
#define ws_sdma_set_source(src)
 

Functions

static void ws_dma_set_sourcep (const void __far *src)
 
static void ws_dma_set_sourcei (uint32_t src)
 
static void ws_sdma_set_sourcep (const void __far *src)
 
static void ws_sdma_set_sourcei (uint32_t src)
 
static void ws_sdma_set_length (uint32_t length)
 
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.
 
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.
 

Detailed Description

Macro Definition Documentation

◆ ws_dma_set_source

#define ws_dma_set_source ( src)
Value:
_Generic((src), \
int8_t: ws_dma_set_sourcei, \
int16_t: ws_dma_set_sourcei, \
int32_t: ws_dma_set_sourcei, \
uint8_t: ws_dma_set_sourcei, \
uint16_t: ws_dma_set_sourcei, \
uint32_t: ws_dma_set_sourcei, \
default: ws_dma_set_sourcep \
)(src)
static void ws_dma_set_sourcei(uint32_t src)
Definition dma.h:45
static void ws_dma_set_sourcep(const void __far *src)
Definition dma.h:40

Definition at line 50 of file dma.h.

◆ ws_sdma_set_source

#define ws_sdma_set_source ( src)
Value:
_Generic((src), \
int16_t: ws_sdma_set_sourcei, \
int32_t: ws_sdma_set_sourcei, \
uint8_t: ws_sdma_set_sourcei, \
uint16_t: ws_sdma_set_sourcei, \
uint32_t: ws_sdma_set_sourcei, \
)(src)
static void ws_sdma_set_sourcei(uint32_t src)
Definition dma.h:65
static void ws_sdma_set_sourcep(const void __far *src)
Definition dma.h:60

Definition at line 70 of file dma.h.

Function Documentation

◆ ws_dma_copy_words()

static void ws_dma_copy_words ( void __wf_iram * dest,
const void __far * src,
uint16_t length )
inlinestatic

Copy words from a source pointer to a destination pointer using DMA.

Note that this only works if Color mode is enabled - see system_is_color

Parameters
destDestination pointer, in RAM.
srcSource pointer, in any location.
lengthLength, in bytes. Must be a multiple of 2.

Definition at line 105 of file dma.h.

◆ ws_dma_copy_words_linear()

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.

Note that this only works if Color mode is enabled - see system_is_color

Parameters
destDestination pointer, in RAM.
srcSource linear (20-bit) address.
lengthLength, in bytes. Must be a multiple of 2.

◆ ws_dma_opt_copy_words()

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.

Parameters
destDestination pointer, in RAM.
srcSource pointer, in any location.
lengthLength, in bytes. Must be a multiple of 2.

◆ ws_dma_set_sourcei()

static void ws_dma_set_sourcei ( uint32_t src)
inlinestatic

Definition at line 45 of file dma.h.

◆ ws_dma_set_sourcep()

static void ws_dma_set_sourcep ( const void __far * src)
inlinestatic

Definition at line 40 of file dma.h.

◆ ws_sdma_set_length()

static void ws_sdma_set_length ( uint32_t length)
inlinestatic

Definition at line 80 of file dma.h.

◆ ws_sdma_set_sourcei()

static void ws_sdma_set_sourcei ( uint32_t src)
inlinestatic

Definition at line 65 of file dma.h.

◆ ws_sdma_set_sourcep()

static void ws_sdma_set_sourcep ( const void __far * src)
inlinestatic

Definition at line 60 of file dma.h.