lkml.org 
[lkml]   [2017]   [Jan]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v5 4/6] usb: xhci: use bus->sysdev for DMA configuration
    From
    Date
    On 12.01.2017 10:38, Roger Quadros wrote:
    > Mathias,
    >
    > On 11/01/17 17:08, Alan Stern wrote:
    >> On Wed, 11 Jan 2017, Mathias Nyman wrote:
    >>
    >>> On 17.11.2016 13:43, Sriram Dash wrote:
    >>>> From: Arnd Bergmann <arnd@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 <arnd@arndb.de>
    >>>> Signed-off-by: Sriram Dash <sriram.dash@nxp.com>
    >>>> Tested-by: Baolin Wang <baolin.wang@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
    >
    > Are you going to pick all the remaining patches from this series (i.e. 1 to 4)?
    >
    > That should fix the warning that people are seeing on v4.10-rc.
    >

    Let's check with Greg

    Greg, 5/6 and 6/6 are in 4.10-rc already, causing additional warnings for
    people using dwc3 xhci.

    First 3 patches change usb core, patch 4 xhci.

    Compiles and boots, doesn't break pci xhci (non-dwc3) functionality

    Would you like me to send first 4 patches for usb-linus to get a clean final 4.10
    without warnings, or to send them for usb-next?

    Or will you just pick the patches from here directly.

    for patch 4/6:
    Acked-by: Mathias Nyman <mathias.nyman@linux.intel.com>

    -Mathias

    \
     
     \ /
      Last update: 2017-01-18 12:57    [W:3.219 / U:0.876 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site