dma_engine
static int dma_reset(struct dma_engine *dma)
static int dma_set_state(struct dma_engine *dma, enum dma_state state)
static unsigned int dma_get_buffer_size(struct dma_engine *dma)
static unsigned char *dma_get_buffer_addr(struct dma_engine *dma)
static int dma_xfer(struct dma_engine *dma,
struct dma_engine *dma,
static unsigned int dma_get_stream_id(struct dma_engine *dma)
struct dma_engine *dma_engine,
if (fls == NULL || dma_engine == NULL || port_map_mask == 0) {
buffer_size_words = (unsigned int)dma_get_buffer_size(dma_engine) /
buffer_addx = dma_get_buffer_addr(dma_engine);
dma_get_converter_format(dma_engine, &hda_format);
dma_xfer(dma_engine, data, run_size_words*sizeof(u32));
status = dma_set_state(dma_engine, DMA_STATE_RUN);
dma_set_state(dma_engine, DMA_STATE_STOP);
status = dma_reset(dma_engine);
struct dma_engine *dma_engine;
dma_engine = kzalloc_obj(*dma_engine);
if (!dma_engine)
dma_engine->dmab = kzalloc_obj(*dma_engine->dmab);
if (!dma_engine->dmab) {
kfree(dma_engine);
dma_engine->codec = codec;
dma_engine->m_converter_format = hda_format;
dma_engine->buf_size = (ovly ? DSP_DMA_WRITE_BUFLEN_OVLY :
dma_engine->m_converter_format,
dma_engine->buf_size,
dma_engine->dmab);
stream_id = dma_get_stream_id(dma_engine);
dma_engine, dma_chan,
if (dma_engine->dmab->area)
snd_hda_codec_load_dsp_cleanup(codec, dma_engine->dmab);
kfree(dma_engine->dmab);
kfree(dma_engine);