Lines Matching defs:dma
192 struct idxd_dma_dev *idxd_dma = container_of(device, struct idxd_dma_dev, dma);
200 struct dma_device *dma;
208 dma = &idxd_dma->dma;
209 INIT_LIST_HEAD(&dma->channels);
210 dma->dev = dev;
212 dma_cap_set(DMA_INTERRUPT, dma->cap_mask);
213 dma_cap_set(DMA_PRIVATE, dma->cap_mask);
214 dma_cap_set(DMA_COMPLETION_NO_ORDER, dma->cap_mask);
215 dma->device_release = idxd_dma_release;
217 dma->device_prep_dma_interrupt = idxd_dma_prep_interrupt;
219 dma_cap_set(DMA_MEMCPY, dma->cap_mask);
220 dma->device_prep_dma_memcpy = idxd_dma_submit_memcpy;
223 dma->device_tx_status = idxd_dma_tx_status;
224 dma->device_issue_pending = idxd_dma_issue_pending;
225 dma->device_alloc_chan_resources = idxd_dma_alloc_chan_resources;
226 dma->device_free_chan_resources = idxd_dma_free_chan_resources;
228 rc = dma_async_device_register(dma);
245 dma_async_device_unregister(&idxd->idxd_dma->dma);
251 struct dma_device *dma = &idxd->idxd_dma->dma;
262 chan->device = dma;
263 list_add_tail(&chan->device_node, &dma->channels);
272 rc = dma_async_device_channel_register(dma, chan);
291 dma_async_device_channel_unregister(&idxd_dma->dma, chan);