Sound Open Firmware
Loading...
Searching...
No Matches
sof_dma.h File Reference

Go to the source code of this file.

Functions

__syscall struct sof_dma * sof_dma_get (uint32_t dir, uint32_t caps, uint32_t dev, uint32_t flags)
 API to request a platform DMAC.
struct sof_dma * z_impl_sof_dma_get (uint32_t dir, uint32_t cap, uint32_t dev, uint32_t flags)
__syscall void sof_dma_put (struct sof_dma *dma)
 API to release a platform DMAC.
void z_impl_sof_dma_put (struct sof_dma *dma)
__syscall int sof_dma_get_attribute (struct sof_dma *dma, uint32_t type, uint32_t *value)
__syscall int sof_dma_request_channel (struct sof_dma *dma, uint32_t stream_tag)
__syscall void sof_dma_release_channel (struct sof_dma *dma, uint32_t channel)
__syscall int sof_dma_config (struct sof_dma *dma, uint32_t channel, struct dma_config *config)
__syscall int sof_dma_start (struct sof_dma *dma, uint32_t channel)
__syscall int sof_dma_stop (struct sof_dma *dma, uint32_t channel)
__syscall int sof_dma_get_status (struct sof_dma *dma, uint32_t channel, struct dma_status *stat)
__syscall int sof_dma_reload (struct sof_dma *dma, uint32_t channel, size_t size)
__syscall int sof_dma_suspend (struct sof_dma *dma, uint32_t channel)
__syscall int sof_dma_resume (struct sof_dma *dma, uint32_t channel)
static int z_impl_sof_dma_get_attribute (struct sof_dma *dma, uint32_t type, uint32_t *value)
static int z_impl_sof_dma_request_channel (struct sof_dma *dma, uint32_t stream_tag)
static void z_impl_sof_dma_release_channel (struct sof_dma *dma, uint32_t channel)
static int z_impl_sof_dma_config (struct sof_dma *dma, uint32_t channel, struct dma_config *config)
static int z_impl_sof_dma_start (struct sof_dma *dma, uint32_t channel)
static int z_impl_sof_dma_stop (struct sof_dma *dma, uint32_t channel)
static int z_impl_sof_dma_get_status (struct sof_dma *dma, uint32_t channel, struct dma_status *stat)
static int z_impl_sof_dma_reload (struct sof_dma *dma, uint32_t channel, size_t size)
static int z_impl_sof_dma_suspend (struct sof_dma *dma, uint32_t channel)
static int z_impl_sof_dma_resume (struct sof_dma *dma, uint32_t channel)

Function Documentation

◆ sof_dma_config()

int sof_dma_config ( struct sof_dma * dma,
uint32_t channel,
struct dma_config * config )
inline

◆ sof_dma_get()

struct sof_dma * sof_dma_get ( uint32_t dir,
uint32_t caps,
uint32_t dev,
uint32_t flags )
inline

API to request a platform DMAC.

Users can request DMAC based on dev type, copy direction, capabilities and access privilege. For exclusive access, ret DMAC with no channels draining. For shared access, ret DMAC with the least number of channels draining.

◆ sof_dma_get_attribute()

int sof_dma_get_attribute ( struct sof_dma * dma,
uint32_t type,
uint32_t * value )
inline

◆ sof_dma_get_status()

int sof_dma_get_status ( struct sof_dma * dma,
uint32_t channel,
struct dma_status * stat )
inline

◆ sof_dma_put()

void sof_dma_put ( struct sof_dma * dma)
inline

API to release a platform DMAC.

Parameters
[in]dmaDMAC to release.

◆ sof_dma_release_channel()

void sof_dma_release_channel ( struct sof_dma * dma,
uint32_t channel )
inline

◆ sof_dma_reload()

int sof_dma_reload ( struct sof_dma * dma,
uint32_t channel,
size_t size )
inline

◆ sof_dma_request_channel()

int sof_dma_request_channel ( struct sof_dma * dma,
uint32_t stream_tag )
inline

◆ sof_dma_resume()

int sof_dma_resume ( struct sof_dma * dma,
uint32_t channel )
inline

◆ sof_dma_start()

int sof_dma_start ( struct sof_dma * dma,
uint32_t channel )
inline

◆ sof_dma_stop()

int sof_dma_stop ( struct sof_dma * dma,
uint32_t channel )
inline

◆ sof_dma_suspend()

int sof_dma_suspend ( struct sof_dma * dma,
uint32_t channel )
inline

◆ z_impl_sof_dma_config()

int z_impl_sof_dma_config ( struct sof_dma * dma,
uint32_t channel,
struct dma_config * config )
inlinestatic

◆ z_impl_sof_dma_get()

struct sof_dma * z_impl_sof_dma_get ( uint32_t dir,
uint32_t cap,
uint32_t dev,
uint32_t flags )

◆ z_impl_sof_dma_get_attribute()

int z_impl_sof_dma_get_attribute ( struct sof_dma * dma,
uint32_t type,
uint32_t * value )
inlinestatic

◆ z_impl_sof_dma_get_status()

int z_impl_sof_dma_get_status ( struct sof_dma * dma,
uint32_t channel,
struct dma_status * stat )
inlinestatic

◆ z_impl_sof_dma_put()

void z_impl_sof_dma_put ( struct sof_dma * dma)

◆ z_impl_sof_dma_release_channel()

void z_impl_sof_dma_release_channel ( struct sof_dma * dma,
uint32_t channel )
inlinestatic

◆ z_impl_sof_dma_reload()

int z_impl_sof_dma_reload ( struct sof_dma * dma,
uint32_t channel,
size_t size )
inlinestatic

◆ z_impl_sof_dma_request_channel()

int z_impl_sof_dma_request_channel ( struct sof_dma * dma,
uint32_t stream_tag )
inlinestatic

◆ z_impl_sof_dma_resume()

int z_impl_sof_dma_resume ( struct sof_dma * dma,
uint32_t channel )
inlinestatic

◆ z_impl_sof_dma_start()

int z_impl_sof_dma_start ( struct sof_dma * dma,
uint32_t channel )
inlinestatic

◆ z_impl_sof_dma_stop()

int z_impl_sof_dma_stop ( struct sof_dma * dma,
uint32_t channel )
inlinestatic

◆ z_impl_sof_dma_suspend()

int z_impl_sof_dma_suspend ( struct sof_dma * dma,
uint32_t channel )
inlinestatic