Lines Matching defs:dma
15 #include <linux/dma-mapping.h>
27 #include "virt-dma.h"
129 * list for dma transfer
160 * struct owl_dma_lli - Link list for dma transfer
186 * @base: virtual memory base for the dma channel
213 * @dma: dma engine for this instance
226 struct dma_device dma;
292 return container_of(dd, struct owl_dma, dma);
514 dev_warn(od->dma.dev,
626 dev_dbg(od->dma.dev,
647 dev_warn(od->dma.dev, "no vchan attached on pchan %d\n",
847 dev_dbg(od->dma.dev, "allocated pchan %d\n", pchan->id);
943 dev_err(od->dma.dev,
1056 next, &od->dma.channels, vc.chan.device_node) {
1073 chan = dma_get_any_slave_channel(&od->dma);
1084 { .compatible = "actions,s500-dma", .data = (void *)S900_DMA,},
1085 { .compatible = "actions,s700-dma", .data = (void *)S700_DMA,},
1086 { .compatible = "actions,s900-dma", .data = (void *)S900_DMA,},
1105 ret = of_property_read_u32(np, "dma-channels", &nr_channels);
1107 dev_err(&pdev->dev, "can't get dma-channels\n");
1111 ret = of_property_read_u32(np, "dma-requests", &nr_requests);
1113 dev_err(&pdev->dev, "can't get dma-requests\n");
1117 dev_info(&pdev->dev, "dma-channels %d, dma-requests %d\n",
1130 dma_cap_set(DMA_MEMCPY, od->dma.cap_mask);
1131 dma_cap_set(DMA_SLAVE, od->dma.cap_mask);
1132 dma_cap_set(DMA_CYCLIC, od->dma.cap_mask);
1134 od->dma.dev = &pdev->dev;
1135 od->dma.device_free_chan_resources = owl_dma_free_chan_resources;
1136 od->dma.device_tx_status = owl_dma_tx_status;
1137 od->dma.device_issue_pending = owl_dma_issue_pending;
1138 od->dma.device_prep_dma_memcpy = owl_dma_prep_memcpy;
1139 od->dma.device_prep_slave_sg = owl_dma_prep_slave_sg;
1140 od->dma.device_prep_dma_cyclic = owl_prep_dma_cyclic;
1141 od->dma.device_config = owl_dma_config;
1142 od->dma.device_pause = owl_dma_pause;
1143 od->dma.device_resume = owl_dma_resume;
1144 od->dma.device_terminate_all = owl_dma_terminate_all;
1145 od->dma.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
1146 od->dma.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_4_BYTES);
1147 od->dma.directions = BIT(DMA_MEM_TO_MEM);
1148 od->dma.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
1150 INIT_LIST_HEAD(&od->dma.channels);
1194 vchan_init(&vchan->vc, &od->dma);
1198 od->lli_pool = dma_pool_create(dev_name(od->dma.dev), od->dma.dev,
1209 ret = dma_async_device_register(&od->dma);
1226 dma_async_device_unregister(&od->dma);
1239 dma_async_device_unregister(&od->dma);
1245 devm_free_irq(od->dma.dev, od->irq, od);
1259 .name = "dma-owl",