aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/dma/mmp_pdma.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/drivers/dma/mmp_pdma.c b/drivers/dma/mmp_pdma.c
index c1b7c3ac7676..b439679f4126 100644
--- a/drivers/dma/mmp_pdma.c
+++ b/drivers/dma/mmp_pdma.c
@@ -899,19 +899,11 @@ static struct dma_chan *mmp_pdma_dma_xlate(struct of_phandle_args *dma_spec,
899{ 899{
900 struct mmp_pdma_device *d = ofdma->of_dma_data; 900 struct mmp_pdma_device *d = ofdma->of_dma_data;
901 struct dma_chan *chan; 901 struct dma_chan *chan;
902 struct mmp_pdma_chan *c;
903 902
904 chan = dma_get_any_slave_channel(&d->device); 903 chan = dma_get_any_slave_channel(&d->device);
905 if (!chan) 904 if (!chan)
906 return NULL; 905 return NULL;
907 906
908 /* dma_get_slave_channel will return NULL if we lost a race between
909 * the lookup and the reservation */
910 chan = dma_get_slave_channel(candidate);
911
912 if (!chan)
913 goto retry;
914
915 to_mmp_pdma_chan(chan)->drcmr = dma_spec->args[0]; 907 to_mmp_pdma_chan(chan)->drcmr = dma_spec->args[0];
916 908
917 return chan; 909 return chan;