• Home
  • Raw
  • Download

Lines Matching refs:dma

69 	struct sst_dma *dma = sst->dma;  in sst_dsp_dma_copy()  local
71 if (dma->ch == NULL) { in sst_dsp_dma_copy()
79 desc = dma->ch->device->device_prep_dma_memcpy(dma->ch, dest_addr, in sst_dsp_dma_copy()
213 struct sst_dma *dma = dsp->dma; in sst_dsp_dma_get_channel() local
222 dma->ch = dma_request_channel(mask, dma_chan_filter, dsp); in sst_dsp_dma_get_channel()
223 if (dma->ch == NULL) { in sst_dsp_dma_get_channel()
234 ret = dmaengine_slave_config(dma->ch, &slave); in sst_dsp_dma_get_channel()
238 dma_release_channel(dma->ch); in sst_dsp_dma_get_channel()
239 dma->ch = NULL; in sst_dsp_dma_get_channel()
248 struct sst_dma *dma = dsp->dma; in sst_dsp_dma_put_channel() local
250 if (!dma->ch) in sst_dsp_dma_put_channel()
253 dma_release_channel(dma->ch); in sst_dsp_dma_put_channel()
254 dma->ch = NULL; in sst_dsp_dma_put_channel()
261 struct sst_dma *dma; in sst_dma_new() local
280 dma = devm_kzalloc(sst->dev, sizeof(struct sst_dma), GFP_KERNEL); in sst_dma_new()
281 if (!dma) in sst_dma_new()
284 dma->sst = sst; in sst_dma_new()
293 dma->chip = dw_probe(sst->dma_dev, &mem, sst_pdata->irq); in sst_dma_new()
294 if (IS_ERR(dma->chip)) { in sst_dma_new()
296 ret = PTR_ERR(dma->chip); in sst_dma_new()
300 sst->dma = dma; in sst_dma_new()
305 devm_kfree(sst->dev, dma); in sst_dma_new()
310 void sst_dma_free(struct sst_dma *dma) in sst_dma_free() argument
313 if (dma == NULL) in sst_dma_free()
316 if (dma->ch) in sst_dma_free()
317 dma_release_channel(dma->ch); in sst_dma_free()
319 if (dma->chip) in sst_dma_free()
320 dw_remove(dma->chip); in sst_dma_free()