On Wed, Mar 06, 2013 at 07:12:29PM +0530, Balaji T K wrote:
> On Wednesday 06 March 2013 02:43 AM, Matt Porter wrote:
> >From: Santosh Shilimkar <santosh.shilim...@ti.com>
> >
> >MMC driver probe will abort for DT case because of failed
> >platform_get_resource_byname() lookup. Fix it by skipping resource
> >byname lookup for device tree build.
> >
> >Issue is hidden because hwmod popullates the IO resources which
> >helps to succeed platform_get_resource_byname() and probe.
> >
> 
> Hi Matt,
> Could you please drop this patch from the current series,
> since this patch causes regression on omap3,4 platform
> which are not yet dma dt adapted.
> It is best to send this patch along with Jon Hunter dma dt series,
> which adds dt dma support and mmc dma data. DMA dt series is needed
> any way before hwmod cleanup can happen.

*sigh* ok, I should have never split this stuff out from the am33xx
series. Will do.

-Matt

> >Signed-off-by: Santosh Shilimkar <santosh.shilim...@ti.com>
> >---
> >  drivers/mmc/host/omap_hsmmc.c |   28 +++++++++++++++-------------
> >  1 file changed, 15 insertions(+), 13 deletions(-)
> >
> >diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c
> >index e79b12d..8ae1225 100644
> >--- a/drivers/mmc/host/omap_hsmmc.c
> >+++ b/drivers/mmc/host/omap_hsmmc.c
> >@@ -1896,21 +1896,23 @@ static int omap_hsmmc_probe(struct platform_device 
> >*pdev)
> >
> >     omap_hsmmc_conf_bus_power(host);
> >
> >-    res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "tx");
> >-    if (!res) {
> >-            dev_err(mmc_dev(host->mmc), "cannot get DMA TX channel\n");
> >-            ret = -ENXIO;
> >-            goto err_irq;
> >-    }
> >-    tx_req = res->start;
> >+    if (!pdev->dev.of_node) {
> >+            res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "tx");
> >+            if (!res) {
> >+                    dev_err(mmc_dev(host->mmc), "cannot get DMA TX 
> >channel\n");
> >+                    ret = -ENXIO;
> >+                    goto err_irq;
> >+            }
> >+            tx_req = res->start;
> >
> >-    res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "rx");
> >-    if (!res) {
> >-            dev_err(mmc_dev(host->mmc), "cannot get DMA RX channel\n");
> >-            ret = -ENXIO;
> >-            goto err_irq;
> >+            res = platform_get_resource_byname(pdev, IORESOURCE_DMA, "rx");
> >+            if (!res) {
> >+                    dev_err(mmc_dev(host->mmc), "cannot get DMA RX 
> >channel\n");
> >+                    ret = -ENXIO;
> >+                    goto err_irq;
> >+            }
> >+            rx_req = res->start;
> >     }
> >-    rx_req = res->start;
> >
> >     dma_cap_zero(mask);
> >     dma_cap_set(DMA_SLAVE, mask);
> >
> 
> _______________________________________________
> devicetree-discuss mailing list
> devicetree-disc...@lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/devicetree-discuss
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to