[PATCH 8/8] ARM: omap_hsmmc: remove platform data dma_mask and initialization
Tony Lindgren
tony at atomide.com
Mon Apr 23 10:30:48 EDT 2012
* Russell King - ARM Linux <linux at arm.linux.org.uk> [120423 07:17]:
> On Fri, Apr 20, 2012 at 09:50:00AM -0700, Tony Lindgren wrote:
> > Then something like this is still needed on top of your original mmc driver
> > patch for omap2420:
> >
> > --- a/drivers/mmc/host/omap.c
> > +++ b/drivers/mmc/host/omap.c
> > @@ -1617,11 +1617,14 @@ static int __init mmc_omap_probe(struct platform_device *pdev)
> > host->dma_tx_burst = -1;
> > host->dma_rx_burst = -1;
> >
> > - sig = host->id == 0 ? OMAP_DMA_MMC_TX : OMAP_DMA_MMC2_TX;
> > + if (cpu_is_omap24xx())
> > + sig = host->id == 0 ? OMAP24XX_DMA_MMC1_TX : OMAP24XX_DMA_MMC2_TX;
> > + else
> > + sig = host->id == 0 ? OMAP_DMA_MMC_TX : OMAP_DMA_MMC2_TX;
> > host->dma_tx = dma_request_channel(mask, omap_dma_filter_fn, &sig);
> > #if 0
> > if (!host->dma_tx) {
> > - def_err(host->dev, "unable to obtain TX DMA engine channel %u\n",
> > + dev_err(host->dev, "unable to obtain TX DMA engine channel %u\n",
> > sig);
> > goto err_dma;
> > }
> > @@ -1632,7 +1635,10 @@ static int __init mmc_omap_probe(struct platform_device *pdev)
> > #endif
> > #endif
> > #ifdef USE_DMA_ENGINE
> > - sig = host->id == 0 ? OMAP_DMA_MMC_RX : OMAP_DMA_MMC2_RX;
> > + if (cpu_is_omap24xx())
> > + sig = host->id == 0 ? OMAP24XX_DMA_MMC1_RX : OMAP24XX_DMA_MMC2_RX;
> > + else
> > + sig = host->id == 0 ? OMAP_DMA_MMC_RX : OMAP_DMA_MMC2_RX;
> > host->dma_rx = dma_request_channel(mask, omap_dma_filter_fn, &sig);
> > #if 0
> > if (!host->dma_rx) {
>
> Is there any chance this DMA signal information could be moved into
> platform resources, like omap_hsmmc has done? I could then get rid
> of the plat/dma.h dependence from this driver.
Sure, I'll take a look at that later on today.
Tony
More information about the linux-arm-kernel
mailing list