dmaengine: sh: usb-dmac: Let the core do the device node validation
authorBaolin Wang <baolin.wang@linaro.org>
Mon, 20 May 2019 11:32:21 +0000 (19:32 +0800)
committerVinod Koul <vkoul@kernel.org>
Mon, 27 May 2019 05:53:53 +0000 (11:23 +0530)
Let the DMA engine core do the device node validation instead of drivers.

Signed-off-by: Baolin Wang <baolin.wang@linaro.org>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/dma/sh/usb-dmac.c

index 59403f6..0afabf3 100644 (file)
@@ -636,9 +636,6 @@ static bool usb_dmac_chan_filter(struct dma_chan *chan, void *arg)
        struct usb_dmac_chan *uchan = to_usb_dmac_chan(chan);
        struct of_phandle_args *dma_spec = arg;
 
-       if (dma_spec->np != chan->device->dev->of_node)
-               return false;
-
        /* USB-DMAC should be used with fixed usb controller's FIFO */
        if (uchan->index != dma_spec->args[0])
                return false;
@@ -659,7 +656,8 @@ static struct dma_chan *usb_dmac_of_xlate(struct of_phandle_args *dma_spec,
        dma_cap_zero(mask);
        dma_cap_set(DMA_SLAVE, mask);
 
-       chan = dma_request_channel(mask, usb_dmac_chan_filter, dma_spec);
+       chan = __dma_request_channel(&mask, usb_dmac_chan_filter, dma_spec,
+                                    ofdma->of_node);
        if (!chan)
                return NULL;