Lines Matching refs:dma
435 INIT_LIST_HEAD(&hsu->dma.channels); in hsu_dma_probe()
440 vchan_init(&hsuc->vchan, &hsu->dma); in hsu_dma_probe()
448 dma_cap_set(DMA_SLAVE, hsu->dma.cap_mask); in hsu_dma_probe()
449 dma_cap_set(DMA_PRIVATE, hsu->dma.cap_mask); in hsu_dma_probe()
451 hsu->dma.device_free_chan_resources = hsu_dma_free_chan_resources; in hsu_dma_probe()
453 hsu->dma.device_prep_slave_sg = hsu_dma_prep_slave_sg; in hsu_dma_probe()
455 hsu->dma.device_issue_pending = hsu_dma_issue_pending; in hsu_dma_probe()
456 hsu->dma.device_tx_status = hsu_dma_tx_status; in hsu_dma_probe()
458 hsu->dma.device_config = hsu_dma_slave_config; in hsu_dma_probe()
459 hsu->dma.device_pause = hsu_dma_pause; in hsu_dma_probe()
460 hsu->dma.device_resume = hsu_dma_resume; in hsu_dma_probe()
461 hsu->dma.device_terminate_all = hsu_dma_terminate_all; in hsu_dma_probe()
463 hsu->dma.src_addr_widths = HSU_DMA_BUSWIDTHS; in hsu_dma_probe()
464 hsu->dma.dst_addr_widths = HSU_DMA_BUSWIDTHS; in hsu_dma_probe()
465 hsu->dma.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV); in hsu_dma_probe()
466 hsu->dma.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST; in hsu_dma_probe()
468 hsu->dma.dev = chip->dev; in hsu_dma_probe()
470 ret = dma_async_device_register(&hsu->dma); in hsu_dma_probe()
484 dma_async_device_unregister(&hsu->dma); in hsu_dma_remove()