On Friday 02 January 2015 19:21:28 Felipe Balbi wrote: > > On Tue, Dec 30, 2014 at 11:12:51AM +0100, Arnd Bergmann wrote: > > On Monday 29 December 2014 01:52:04 Sneeker Yeh wrote: > > > > > +static int dwc3_mb86s70_remove_child(struct device *dev, void *unused) > > > > > +{ > > > > > + struct platform_device *pdev = to_platform_device(dev); > > > > > + > > > > > + of_device_unregister(pdev); > > > > > + > > > > > + return 0; > > > > > +} > > > > > + > > > > > +static u64 dwc3_mb86s70_dma_mask = DMA_BIT_MASK(32); > > > > > > > > why ? Use dma_coerce_mask_and_coherent(). > > > > > > > > > > okay. > > > > Actually that is still wrong: we use dma_coerce_mask_and_coherent() to > > annotate drivers that have traditionally been forcing their own dma mask > > by some other means and that need to be changed to something proper (after > > finding out why they did it in the first place). > > > > Since this is about a child device, the correct interface is to use > > platform_device_register_full(). > > no, that's wrong. He's essentially fixing the default set by OF core, > which is always 32-bits anyway, so this can actually be removed. Your > suggestion would just make it worse. Ah, so this was for a device that gets probed from DT? Yes, then no change is needed here at all. Note that I'm working on a patch set to change the DT initialization to be a little smarter about the mask. Specifically any device whose parent has a smaller dma-ranges window than 4GB needs to start out with the smaller mask, and the dma_set_mask function that is called to allow 64-bit DMA on a device will check if the bus can actually support it. Arnd -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html