lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 11 Jan 2017 16:21:29 +0200
From:   Mathias Nyman <mathias.nyman@...ux.intel.com>
To:     Sriram Dash <sriram.dash@....com>, linux-kernel@...r.kernel.org,
        linux-usb@...r.kernel.org
Cc:     mathias.nyman@...el.com, gregkh@...uxfoundation.org,
        suresh.gupta@....com, felipe.balbi@...ux.intel.com,
        stern@...land.harvard.edu, pku.leo@...il.com,
        Arnd Bergmann <arnd@...db.de>
Subject: Re: [PATCH v5 4/6] usb: xhci: use bus->sysdev for DMA configuration

On 17.11.2016 13:43, Sriram Dash wrote:
> From: Arnd Bergmann <arnd@...db.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@...db.de>
> Signed-off-by: Sriram Dash <sriram.dash@....com>
> Tested-by: Baolin Wang <baolin.wang@...aro.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 haven't tested that it won't break anything on PCI XHCI controllers though

-Mathias  

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ