diff options
-rw-r--r-- | drivers/dma/of-dma.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/dma/of-dma.c b/drivers/dma/of-dma.c index 8266893fef45..2882403a39cf 100644 --- a/drivers/dma/of-dma.c +++ b/drivers/dma/of-dma.c | |||
@@ -221,12 +221,13 @@ struct dma_chan *of_dma_request_slave_channel(struct device_node *np, | |||
221 | 221 | ||
222 | ofdma = of_dma_get_controller(&dma_spec); | 222 | ofdma = of_dma_get_controller(&dma_spec); |
223 | 223 | ||
224 | if (!ofdma) | 224 | if (ofdma) { |
225 | continue; | 225 | chan = ofdma->of_dma_xlate(&dma_spec, ofdma); |
226 | |||
227 | chan = ofdma->of_dma_xlate(&dma_spec, ofdma); | ||
228 | 226 | ||
229 | of_dma_put_controller(ofdma); | 227 | of_dma_put_controller(ofdma); |
228 | } else { | ||
229 | chan = NULL; | ||
230 | } | ||
230 | 231 | ||
231 | of_node_put(dma_spec.np); | 232 | of_node_put(dma_spec.np); |
232 | 233 | ||