|
@@ -942,6 +942,12 @@ static int sa11x0_dma_probe(struct platform_device *pdev)
|
|
|
dma_cap_set(DMA_CYCLIC, d->slave.cap_mask);
|
|
|
d->slave.device_prep_slave_sg = sa11x0_dma_prep_slave_sg;
|
|
|
d->slave.device_prep_dma_cyclic = sa11x0_dma_prep_dma_cyclic;
|
|
|
+ d->slave.directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
|
|
|
+ d->slave.residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
|
|
|
+ d->slave.src_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) |
|
|
|
+ BIT(DMA_SLAVE_BUSWIDTH_2_BYTES);
|
|
|
+ d->slave.dst_addr_widths = BIT(DMA_SLAVE_BUSWIDTH_1_BYTE) |
|
|
|
+ BIT(DMA_SLAVE_BUSWIDTH_2_BYTES);
|
|
|
ret = sa11x0_dma_init_dmadev(&d->slave, &pdev->dev);
|
|
|
if (ret) {
|
|
|
dev_warn(d->slave.dev, "failed to register slave async device: %d\n",
|