On Wed, 11 Jan 2017, Mathias Nyman wrote:

> On 17.11.2016 13:43, Sriram Dash wrote:
> > From: Arnd Bergmann <a...@arndb.de>
> >
> > For xhci-hcd platform device, all the DMA parameters are not
> > configured properly, notably dma ops for dwc3 devices. So, set
> > the dma for xhci from sysdev. sysdev is pointing to device that
> > is known to the system firmware or hardware.
> >
> > Signed-off-by: Arnd Bergmann <a...@arndb.de>
> > Signed-off-by: Sriram Dash <sriram.d...@nxp.com>
> > Tested-by: Baolin Wang <baolin.w...@linaro.org>
> > ---
> 
> ...
> 
> > +   /*
> > +    * sysdev must point to a device that is known to the system firmware
> > +    * or PCI hardware. We handle these three cases here:
> > +    * 1. xhci_plat comes from firmware
> > +    * 2. xhci_plat is child of a device from firmware (dwc3-plat)
> > +    * 3. xhci_plat is grandchild of a pci device (dwc3-pci)
> > +    */
> > +   sysdev = &pdev->dev;
> > +   if (sysdev->parent && !sysdev->of_node && sysdev->parent->of_node)
> > +           sysdev = sysdev->parent;
> > +#ifdef CONFIG_PCI
> > +   else if (sysdev->parent && sysdev->parent->parent &&
> > +            sysdev->parent->parent->bus == &pci_bus_type)
> > +           sysdev = sysdev->parent->parent;
> > +#endif
> > +
> 
> Not maybe the the ideal situation here, and looks really tailored to make PCI 
> dwc3
> controllers with xhci support work.
> 
> Was there some reason child devices can't automatically inherit the dma mask 
> from the parents,
> forcing us to dig it from grandparents?
> 
> Anyway, looks like the dwc3 part is already in 4.10-rc,
> If Greg and Alan want to take this series that's fine by me

I have no objections.

Alan Stern

> I haven't tested that it won't break anything on PCI XHCI controllers though
> 
> -Mathias  

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

Reply via email to