From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754971AbdARL5a (ORCPT ); Wed, 18 Jan 2017 06:57:30 -0500 Received: from mga14.intel.com ([192.55.52.115]:37795 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752449AbdARL52 (ORCPT ); Wed, 18 Jan 2017 06:57:28 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,249,1477983600"; d="scan'208";a="810322421" Subject: Re: [PATCH v5 4/6] usb: xhci: use bus->sysdev for DMA configuration To: Roger Quadros , Alan Stern , gregkh@linuxfoundation.org References: <0a1a4328-fea3-a7fb-2c1b-15dbf77053b6@ti.com> Cc: Sriram Dash , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, mathias.nyman@intel.com, suresh.gupta@nxp.com, felipe.balbi@linux.intel.com, pku.leo@gmail.com, Arnd Bergmann From: Mathias Nyman Message-ID: <587F5864.201@linux.intel.com> Date: Wed, 18 Jan 2017 13:58:28 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <0a1a4328-fea3-a7fb-2c1b-15dbf77053b6@ti.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 >>>> >>>> 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. > 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