Re: [PATCH 05/13] mmc: omap_hsmmc: Support for deferred probing when requesting DMA channels

2015-05-28 Thread Ulf Hansson
On 26 May 2015 at 15:26, Peter Ujfalusi peter.ujfal...@ti.com wrote:
 Switch to use ma_request_slave_channel_compat_reason() to request the DMA

I guess it should be dma_request_slave_... huh, that was a long name. :-)

 channels. In case of error, return the error code we received including
 -EPROBE_DEFER

 Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com
 CC: Ulf Hansson ulf.hans...@linaro.org

With the minor change above.

Acked-by: Ulf Hansson ulf.hans...@linaro.org

Kind regards
Uffe

 ---
  drivers/mmc/host/omap_hsmmc.c | 22 ++
  1 file changed, 10 insertions(+), 12 deletions(-)

 diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
 index 57bb85930f81..d252478391ee 100644
 --- a/drivers/mmc/host/omap_hsmmc.c
 +++ b/drivers/mmc/host/omap_hsmmc.c
 @@ -2088,23 +2088,21 @@ static int omap_hsmmc_probe(struct platform_device 
 *pdev)
 dma_cap_zero(mask);
 dma_cap_set(DMA_SLAVE, mask);

 -   host-rx_chan =
 -   dma_request_slave_channel_compat(mask, omap_dma_filter_fn,
 -rx_req, pdev-dev, rx);
 +   host-rx_chan = dma_request_slave_channel_compat_reason(mask,
 +   omap_dma_filter_fn, rx_req, pdev-dev, 
 rx);

 -   if (!host-rx_chan) {
 +   if (IS_ERR(host-rx_chan)) {
 dev_err(mmc_dev(host-mmc), unable to obtain RX DMA engine 
 channel %u\n, rx_req);
 -   ret = -ENXIO;
 +   ret = PTR_ERR(host-rx_chan);
 goto err_irq;
 }

 -   host-tx_chan =
 -   dma_request_slave_channel_compat(mask, omap_dma_filter_fn,
 -tx_req, pdev-dev, tx);
 +   host-tx_chan = dma_request_slave_channel_compat_reason(mask,
 +   omap_dma_filter_fn, tx_req, pdev-dev, 
 tx);

 -   if (!host-tx_chan) {
 +   if (IS_ERR(host-tx_chan)) {
 dev_err(mmc_dev(host-mmc), unable to obtain TX DMA engine 
 channel %u\n, tx_req);
 -   ret = -ENXIO;
 +   ret = PTR_ERR(host-tx_chan);
 goto err_irq;
 }

 @@ -2166,9 +2164,9 @@ err_slot_name:
 if (host-use_reg)
 omap_hsmmc_reg_put(host);
  err_irq:
 -   if (host-tx_chan)
 +   if (!IS_ERR_OR_NULL(host-tx_chan))
 dma_release_channel(host-tx_chan);
 -   if (host-rx_chan)
 +   if (!IS_ERR_OR_NULL(host-rx_chan))
 dma_release_channel(host-rx_chan);
 pm_runtime_put_sync(host-dev);
 pm_runtime_disable(host-dev);
 --
 2.3.5

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH 05/13] mmc: omap_hsmmc: Support for deferred probing when requesting DMA channels

2015-05-26 Thread Peter Ujfalusi
Switch to use ma_request_slave_channel_compat_reason() to request the DMA
channels. In case of error, return the error code we received including
-EPROBE_DEFER

Signed-off-by: Peter Ujfalusi peter.ujfal...@ti.com
CC: Ulf Hansson ulf.hans...@linaro.org
---
 drivers/mmc/host/omap_hsmmc.c | 22 ++
 1 file changed, 10 insertions(+), 12 deletions(-)

diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
index 57bb85930f81..d252478391ee 100644
--- a/drivers/mmc/host/omap_hsmmc.c
+++ b/drivers/mmc/host/omap_hsmmc.c
@@ -2088,23 +2088,21 @@ static int omap_hsmmc_probe(struct platform_device 
*pdev)
dma_cap_zero(mask);
dma_cap_set(DMA_SLAVE, mask);
 
-   host-rx_chan =
-   dma_request_slave_channel_compat(mask, omap_dma_filter_fn,
-rx_req, pdev-dev, rx);
+   host-rx_chan = dma_request_slave_channel_compat_reason(mask,
+   omap_dma_filter_fn, rx_req, pdev-dev, rx);
 
-   if (!host-rx_chan) {
+   if (IS_ERR(host-rx_chan)) {
dev_err(mmc_dev(host-mmc), unable to obtain RX DMA engine 
channel %u\n, rx_req);
-   ret = -ENXIO;
+   ret = PTR_ERR(host-rx_chan);
goto err_irq;
}
 
-   host-tx_chan =
-   dma_request_slave_channel_compat(mask, omap_dma_filter_fn,
-tx_req, pdev-dev, tx);
+   host-tx_chan = dma_request_slave_channel_compat_reason(mask,
+   omap_dma_filter_fn, tx_req, pdev-dev, tx);
 
-   if (!host-tx_chan) {
+   if (IS_ERR(host-tx_chan)) {
dev_err(mmc_dev(host-mmc), unable to obtain TX DMA engine 
channel %u\n, tx_req);
-   ret = -ENXIO;
+   ret = PTR_ERR(host-tx_chan);
goto err_irq;
}
 
@@ -2166,9 +2164,9 @@ err_slot_name:
if (host-use_reg)
omap_hsmmc_reg_put(host);
 err_irq:
-   if (host-tx_chan)
+   if (!IS_ERR_OR_NULL(host-tx_chan))
dma_release_channel(host-tx_chan);
-   if (host-rx_chan)
+   if (!IS_ERR_OR_NULL(host-rx_chan))
dma_release_channel(host-rx_chan);
pm_runtime_put_sync(host-dev);
pm_runtime_disable(host-dev);
-- 
2.3.5

--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html