Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6b3348f9 authored by Robert Jarzmik's avatar Robert Jarzmik
Browse files

mmc: pxamci: remove the dmaengine compat need



As the pxa architecture switched towards the dmaengine slave map, the
old compatibility mechanism to acquire the dma requestor line number and
priority are not needed anymore.

This patch simplifies the dma resource acquisition, using the more
generic function dma_request_slave_channel().

Signed-off-by: default avatarRobert Jarzmik <robert.jarzmik@free.fr>
Acked-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 88a0513c
Loading
Loading
Loading
Loading
+3 −26
Original line number Diff line number Diff line
@@ -24,7 +24,6 @@
#include <linux/interrupt.h>
#include <linux/dmaengine.h>
#include <linux/dma-mapping.h>
#include <linux/dma/pxa-dma.h>
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/mmc/host.h>
@@ -637,10 +636,8 @@ static int pxamci_probe(struct platform_device *pdev)
{
	struct mmc_host *mmc;
	struct pxamci_host *host = NULL;
	struct resource *r, *dmarx, *dmatx;
	struct pxad_param param_rx, param_tx;
	struct resource *r;
	int ret, irq, gpio_cd = -1, gpio_ro = -1, gpio_power = -1;
	dma_cap_mask_t mask;

	ret = pxamci_of_init(pdev);
	if (ret)
@@ -739,34 +736,14 @@ static int pxamci_probe(struct platform_device *pdev)

	platform_set_drvdata(pdev, mmc);

	if (!pdev->dev.of_node) {
		dmarx = platform_get_resource(pdev, IORESOURCE_DMA, 0);
		dmatx = platform_get_resource(pdev, IORESOURCE_DMA, 1);
		if (!dmarx || !dmatx) {
			ret = -ENXIO;
			goto out;
		}
		param_rx.prio = PXAD_PRIO_LOWEST;
		param_rx.drcmr = dmarx->start;
		param_tx.prio = PXAD_PRIO_LOWEST;
		param_tx.drcmr = dmatx->start;
	}

	dma_cap_zero(mask);
	dma_cap_set(DMA_SLAVE, mask);

	host->dma_chan_rx =
		dma_request_slave_channel_compat(mask, pxad_filter_fn,
						 &param_rx, &pdev->dev, "rx");
	host->dma_chan_rx = dma_request_slave_channel(&pdev->dev, "rx");
	if (host->dma_chan_rx == NULL) {
		dev_err(&pdev->dev, "unable to request rx dma channel\n");
		ret = -ENODEV;
		goto out;
	}

	host->dma_chan_tx =
		dma_request_slave_channel_compat(mask, pxad_filter_fn,
						 &param_tx,  &pdev->dev, "tx");
	host->dma_chan_tx = dma_request_slave_channel(&pdev->dev, "tx");
	if (host->dma_chan_tx == NULL) {
		dev_err(&pdev->dev, "unable to request tx dma channel\n");
		ret = -ENODEV;