[Patch v5 06/13] usb: chipidea: add imx platform driver

Richard Zhao richard.zhao at freescale.com
Wed Jun 13 21:21:41 EDT 2012


On Thu, Jun 14, 2012 at 12:07:00AM +0200, Sascha Hauer wrote:
> On Wed, Jun 13, 2012 at 11:57:34PM +0200, Marek Vasut wrote:
> > Dear Sascha Hauer,
> > 
> > > > +
> > > > +	if (!pdev->dev.dma_mask) {
> > > > +		pdev->dev.dma_mask = devm_kzalloc(&pdev->dev,
> > > > +				      sizeof(*pdev->dev.dma_mask), GFP_KERNEL);
> > > > +		if (!pdev->dev.dma_mask) {
> > > > +			ret = -ENOMEM;
> > > > +			dev_err(&pdev->dev, "Failed to alloc dma_mask!\n");
> > > > +			goto err;
> > > > +		}
> > > > +		*pdev->dev.dma_mask = DMA_BIT_MASK(32);
> > > > +		dma_set_coherent_mask(&pdev->dev, *pdev->dev.dma_mask);
> > > > +	}
> > > 
> > > Do you need this? I assume not.
> > 
> > Ain't this the dma mask crap without which the usb stuff won't work?
> 
> Yes, the device needs this, but afaik the of platform code will set this
> for you. You only have to do this manually for devices which you
> allocate yourself.
Unfortunately, devices device tree populated don't set dma_mask.
It always hit if (!pdev->dev.dma_mask). I'm not the only one suffer it.

Thanks
Richard
> 
> Sascha
> 
> -- 
> Pengutronix e.K.                           |                             |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
> Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |
> 




More information about the linux-arm-kernel mailing list