From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751133AbdALIir (ORCPT ); Thu, 12 Jan 2017 03:38:47 -0500 Received: from fllnx210.ext.ti.com ([198.47.19.17]:53217 "EHLO fllnx210.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750803AbdALIiq (ORCPT ); Thu, 12 Jan 2017 03:38:46 -0500 Subject: Re: [PATCH v5 4/6] usb: xhci: use bus->sysdev for DMA configuration To: Alan Stern , Mathias Nyman References: CC: Sriram Dash , , , , , , , , Arnd Bergmann From: Roger Quadros Message-ID: <0a1a4328-fea3-a7fb-2c1b-15dbf77053b6@ti.com> Date: Thu, 12 Jan 2017 10:38:30 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 >>> >>> 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 >>> Signed-off-by: Sriram Dash >>> Tested-by: Baolin Wang >>> --- >> >> ... >> >>> + /* >>> + * 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. cheers, roger