All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alan Stern <stern@rowland.harvard.edu>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Felipe Balbi <balbi@kernel.org>,
	Peter Chen <hzpeterchen@gmail.com>, Leo Li <pku.leo@gmail.com>,
	Grygorii Strashko <grygorii.strashko@ti.com>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>,
	"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
	Sekhar Nori <nsekhar@ti.com>, lkml <linux-kernel@vger.kernel.org>,
	Stuart Yoder <stuart.yoder@nxp.com>,
	Scott Wood <oss@buserror.net>,
	David Fisher <david.fisher1@synopsys.com>,
	"Thang Q. Nguyen" <tqnguyen@apm.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH] usb: dwc3: host: inherit dma configuration from parent dev
Date: Wed, 7 Sep 2016 12:08:20 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.44L0.1609071158160.2115-100000@iolanthe.rowland.org> (raw)
In-Reply-To: <3189648.KnWLgq0lTY@wuerfel>

On Wed, 7 Sep 2016, Arnd Bergmann wrote:

> However, to summarize the discussion so far, I agree that
> of_dma_configure() is not the solution to these problems, and I think
> we can do much better:
> 
> Splitting the usb_bus->controller field into the Linux-internal device
> (used for the sysfs hierarchy, for printks and for power management)
> and a new pointer (used for DMA, DT enumeration and phy lookup) probably
> covers all that we really need.
> 
> I've prototyped it below, with the dwc3, xhci and chipidea changes
> together with the core changes. I've surely made mistakes there and
> don't expect it to work out of the box, but this should give an
> idea of how I think this can all be solved in the least invasive
> way.
> 
> I noticed that the gadget interface already has a way to handle the
> DMA allocation by device, so I added that in as well.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
>  drivers/usb/chipidea/core.c    |  4 ----
>  drivers/usb/chipidea/host.c    |  3 ++-
>  drivers/usb/chipidea/udc.c     |  8 ++++----
>  drivers/usb/core/buffer.c      | 12 ++++++------
>  drivers/usb/core/hcd.c         | 48 +++++++++++++++++++++++++++++-------------------
>  drivers/usb/core/usb.c         | 16 ++++++++--------
>  drivers/usb/dwc3/core.c        | 28 +++++++++++++++-------------
>  drivers/usb/dwc3/core.h        |  1 +
>  drivers/usb/dwc3/dwc3-exynos.c | 10 ----------
>  drivers/usb/dwc3/dwc3-st.c     |  1 -
>  drivers/usb/dwc3/ep0.c         |  8 ++++----
>  drivers/usb/dwc3/gadget.c      | 34 +++++++++++++++++-----------------
>  drivers/usb/dwc3/host.c        | 13 ++++---------
>  drivers/usb/host/ehci-fsl.c    |  4 ++--

How did this driver end up in the patch?

>  drivers/usb/host/xhci-plat.c   | 32 +++++++++++++++++++++++++-------
>  include/linux/usb.h            |  1 +
>  include/linux/usb/hcd.h        |  3 +++

> diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
> index 9f5ffb629973..b2419950221f 100644
> --- a/drivers/usb/host/ehci-fsl.c
> +++ b/drivers/usb/host/ehci-fsl.c
> @@ -96,8 +96,8 @@ static int fsl_ehci_drv_probe(struct platform_device *pdev)
>  	}
>  	irq = res->start;
>  
> -	hcd = usb_create_hcd(&fsl_ehci_hc_driver, &pdev->dev,
> -				dev_name(&pdev->dev));
> +	hcd = __usb_create_hcd(&fsl_ehci_hc_driver, &pdev->dev.parent,
> +				&pdev->dev, dev_name(&pdev->dev), NULL);

Based on the

	if (of_device_is_compatible(dev->parent->of_node,
				    "fsl,mpc5121-usb2-dr")) {

lines in the driver?

>  	if (!hcd) {
>  		retval = -ENOMEM;
>  		goto err1;

Alan Stern

WARNING: multiple messages have this Message-ID (diff)
From: stern@rowland.harvard.edu (Alan Stern)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] usb: dwc3: host: inherit dma configuration from parent dev
Date: Wed, 7 Sep 2016 12:08:20 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.44L0.1609071158160.2115-100000@iolanthe.rowland.org> (raw)
In-Reply-To: <3189648.KnWLgq0lTY@wuerfel>

On Wed, 7 Sep 2016, Arnd Bergmann wrote:

> However, to summarize the discussion so far, I agree that
> of_dma_configure() is not the solution to these problems, and I think
> we can do much better:
> 
> Splitting the usb_bus->controller field into the Linux-internal device
> (used for the sysfs hierarchy, for printks and for power management)
> and a new pointer (used for DMA, DT enumeration and phy lookup) probably
> covers all that we really need.
> 
> I've prototyped it below, with the dwc3, xhci and chipidea changes
> together with the core changes. I've surely made mistakes there and
> don't expect it to work out of the box, but this should give an
> idea of how I think this can all be solved in the least invasive
> way.
> 
> I noticed that the gadget interface already has a way to handle the
> DMA allocation by device, so I added that in as well.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> 
>  drivers/usb/chipidea/core.c    |  4 ----
>  drivers/usb/chipidea/host.c    |  3 ++-
>  drivers/usb/chipidea/udc.c     |  8 ++++----
>  drivers/usb/core/buffer.c      | 12 ++++++------
>  drivers/usb/core/hcd.c         | 48 +++++++++++++++++++++++++++++-------------------
>  drivers/usb/core/usb.c         | 16 ++++++++--------
>  drivers/usb/dwc3/core.c        | 28 +++++++++++++++-------------
>  drivers/usb/dwc3/core.h        |  1 +
>  drivers/usb/dwc3/dwc3-exynos.c | 10 ----------
>  drivers/usb/dwc3/dwc3-st.c     |  1 -
>  drivers/usb/dwc3/ep0.c         |  8 ++++----
>  drivers/usb/dwc3/gadget.c      | 34 +++++++++++++++++-----------------
>  drivers/usb/dwc3/host.c        | 13 ++++---------
>  drivers/usb/host/ehci-fsl.c    |  4 ++--

How did this driver end up in the patch?

>  drivers/usb/host/xhci-plat.c   | 32 +++++++++++++++++++++++++-------
>  include/linux/usb.h            |  1 +
>  include/linux/usb/hcd.h        |  3 +++

> diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
> index 9f5ffb629973..b2419950221f 100644
> --- a/drivers/usb/host/ehci-fsl.c
> +++ b/drivers/usb/host/ehci-fsl.c
> @@ -96,8 +96,8 @@ static int fsl_ehci_drv_probe(struct platform_device *pdev)
>  	}
>  	irq = res->start;
>  
> -	hcd = usb_create_hcd(&fsl_ehci_hc_driver, &pdev->dev,
> -				dev_name(&pdev->dev));
> +	hcd = __usb_create_hcd(&fsl_ehci_hc_driver, &pdev->dev.parent,
> +				&pdev->dev, dev_name(&pdev->dev), NULL);

Based on the

	if (of_device_is_compatible(dev->parent->of_node,
				    "fsl,mpc5121-usb2-dr")) {

lines in the driver?

>  	if (!hcd) {
>  		retval = -ENOMEM;
>  		goto err1;

Alan Stern

  reply	other threads:[~2016-09-07 16:08 UTC|newest]

Thread overview: 182+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-04-25 19:21 [PATCH] usb: dwc3: host: inherit dma configuration from parent dev Grygorii Strashko
2016-04-25 19:21 ` Grygorii Strashko
2016-04-26  6:17 ` Felipe Balbi
2016-04-26  6:17   ` Felipe Balbi
2016-04-26  8:14   ` Grygorii Strashko
2016-04-26  8:14     ` Grygorii Strashko
2016-04-27  5:41     ` Felipe Balbi
2016-04-27  5:41       ` Felipe Balbi
2016-04-27 11:55       ` Grygorii Strashko
2016-04-27 11:55         ` Grygorii Strashko
2016-04-27 13:59       ` Catalin Marinas
2016-04-27 13:59         ` Catalin Marinas
2016-04-27 14:11         ` Arnd Bergmann
2016-04-27 14:11           ` Arnd Bergmann
2016-04-27 15:50           ` Catalin Marinas
2016-04-27 15:50             ` Catalin Marinas
2016-04-27 16:04             ` Arnd Bergmann
2016-04-27 16:04               ` Arnd Bergmann
2016-04-27 16:53               ` Felipe Balbi
2016-04-27 16:53                 ` Felipe Balbi
2016-04-27 17:42                 ` Arnd Bergmann
2016-04-27 17:42                   ` Arnd Bergmann
2016-04-27 17:59                   ` Alan Stern
2016-04-27 17:59                     ` Alan Stern
2016-04-27 18:08                     ` Arnd Bergmann
2016-04-27 18:08                       ` Arnd Bergmann
2016-04-27 20:05                       ` Felipe Balbi
2016-04-27 20:05                         ` Felipe Balbi
2016-04-27 21:05                         ` Arnd Bergmann
2016-04-27 21:05                           ` Arnd Bergmann
2016-04-28  6:37                           ` Felipe Balbi
2016-04-28  6:37                             ` Felipe Balbi
2016-04-28 14:16                             ` Russell King - ARM Linux
2016-04-28 14:16                               ` Russell King - ARM Linux
2016-04-28 14:23                               ` Arnd Bergmann
2016-04-28 14:23                                 ` Arnd Bergmann
2016-04-28 14:27                                 ` Felipe Balbi
2016-04-28 14:27                                   ` Felipe Balbi
2016-09-01 22:14                                   ` Leo Li
2016-09-01 22:14                                     ` Leo Li
2016-09-02 10:43                                     ` Arnd Bergmann
2016-09-02 10:43                                       ` Arnd Bergmann
2016-09-02 10:47                                       ` Russell King - ARM Linux
2016-09-02 10:47                                         ` Russell King - ARM Linux
2016-09-02 11:08                                         ` Felipe Balbi
2016-09-02 11:08                                           ` Felipe Balbi
2016-09-02 14:11                                           ` Felipe Balbi
2016-09-02 14:11                                             ` Felipe Balbi
2016-09-02 14:21                                           ` Alan Stern
2016-09-02 14:21                                             ` Alan Stern
2016-09-02 15:51                                             ` Arnd Bergmann
2016-09-02 15:51                                               ` Arnd Bergmann
2016-09-07  7:17                                               ` Roger Quadros
2016-09-07  7:17                                                 ` Roger Quadros
2016-09-07  8:29                                                 ` Arnd Bergmann
2016-09-07  8:29                                                   ` Arnd Bergmann
2016-09-07 13:04                                                   ` Roger Quadros
2016-09-07 13:04                                                     ` Roger Quadros
2016-09-07 14:38                                                     ` Arnd Bergmann
2016-09-07 14:38                                                       ` Arnd Bergmann
2016-09-02 16:23                                           ` Grygorii Strashko
2016-09-02 16:23                                             ` Grygorii Strashko
2016-09-02 10:53                                       ` Felipe Balbi
2016-09-02 10:53                                         ` Felipe Balbi
2016-09-02 11:55                                         ` Robin Murphy
2016-09-02 11:55                                           ` Robin Murphy
2016-09-02 12:56                                           ` Felipe Balbi
2016-09-02 12:56                                             ` Felipe Balbi
2016-09-02 13:10                                           ` Arnd Bergmann
2016-09-02 13:10                                             ` Arnd Bergmann
2016-09-02 22:16                                       ` Leo Li
2016-09-02 22:16                                         ` Leo Li
2016-09-05 15:39                                         ` Arnd Bergmann
2016-09-05 15:39                                           ` Arnd Bergmann
2016-09-06  6:35                                           ` Peter Chen
2016-09-06  6:35                                             ` Peter Chen
2016-09-06  6:40                                             ` Felipe Balbi
2016-09-06  6:40                                               ` Felipe Balbi
2016-09-06 10:46                                               ` Arnd Bergmann
2016-09-06 10:46                                                 ` Arnd Bergmann
2016-09-06 10:50                                                 ` Felipe Balbi
2016-09-06 10:50                                                   ` Felipe Balbi
2016-09-06 13:27                                                   ` Arnd Bergmann
2016-09-06 13:27                                                     ` Arnd Bergmann
2016-09-07  6:51                                                     ` Felipe Balbi
2016-09-07  6:51                                                       ` Felipe Balbi
2016-09-07  7:44                                                     ` Peter Chen
2016-09-07  7:44                                                       ` Peter Chen
2016-09-07  8:52                                                       ` Arnd Bergmann
2016-09-07  8:52                                                         ` Arnd Bergmann
2016-09-07  9:29                                                         ` Peter Chen
2016-09-07  9:29                                                           ` Peter Chen
2016-09-07  9:35                                                           ` Russell King - ARM Linux
2016-09-07  9:35                                                             ` Russell King - ARM Linux
2016-09-07 10:18                                                             ` Felipe Balbi
2016-09-07 10:18                                                               ` Felipe Balbi
2016-09-06 10:38                                             ` Arnd Bergmann
2016-09-06 10:38                                               ` Arnd Bergmann
2016-09-07  6:33                                               ` Peter Chen
2016-09-07  6:33                                                 ` Peter Chen
2016-09-07  8:48                                                 ` Arnd Bergmann
2016-09-07  8:48                                                   ` Arnd Bergmann
2016-09-07  9:55                                                   ` Peter Chen
2016-09-07  9:55                                                     ` Peter Chen
2016-09-07 10:33                                                     ` Robin Murphy
2016-09-07 10:33                                                       ` Robin Murphy
2016-09-07 10:47                                                       ` Felipe Balbi
2016-09-07 10:47                                                         ` Felipe Balbi
2016-09-14 16:31                                                         ` Lorenzo Pieralisi
2016-09-14 16:31                                                           ` Lorenzo Pieralisi
2016-09-14 21:50                                                           ` Arnd Bergmann
2016-09-14 21:50                                                             ` Arnd Bergmann
2016-09-07 10:24                                                   ` Felipe Balbi
2016-09-07 10:24                                                     ` Felipe Balbi
2016-09-07 15:24                                                     ` Arnd Bergmann
2016-09-07 15:24                                                       ` Arnd Bergmann
2016-09-07 16:08                                                       ` Alan Stern [this message]
2016-09-07 16:08                                                         ` Alan Stern
2016-09-07 19:45                                                         ` Arnd Bergmann
2016-09-07 19:45                                                           ` Arnd Bergmann
2016-09-08  1:15                                                       ` Peter Chen
2016-09-08  1:15                                                         ` Peter Chen
2016-09-08  8:02                                                         ` Arnd Bergmann
2016-09-08  8:02                                                           ` Arnd Bergmann
2016-09-08  8:03                                                       ` Felipe Balbi
2016-09-08  8:03                                                         ` Felipe Balbi
2016-09-08  8:26                                                         ` Arnd Bergmann
2016-09-08  8:26                                                           ` Arnd Bergmann
2016-09-08  8:29                                                           ` Felipe Balbi
2016-09-08  8:29                                                             ` Felipe Balbi
2016-09-08  8:45                                                             ` Arnd Bergmann
2016-09-08  8:45                                                               ` Arnd Bergmann
2016-09-08  9:43                                                               ` Felipe Balbi
2016-09-08  9:43                                                                 ` Felipe Balbi
2016-09-08 10:17                                                                 ` Arnd Bergmann
2016-09-08 10:17                                                                   ` Arnd Bergmann
2016-09-08 11:00                                                                   ` Felipe Balbi
2016-09-08 11:00                                                                     ` Felipe Balbi
2016-09-08 11:11                                                                     ` Arnd Bergmann
2016-09-08 11:11                                                                       ` Arnd Bergmann
2016-09-08 11:20                                                                       ` Felipe Balbi
2016-09-08 11:20                                                                         ` Felipe Balbi
2016-09-08 11:39                                                                         ` Arnd Bergmann
2016-09-08 11:39                                                                           ` Arnd Bergmann
2016-09-08 11:52                                                                           ` Felipe Balbi
2016-09-08 11:52                                                                             ` Felipe Balbi
2016-09-08 12:46                                                                             ` Arnd Bergmann
2016-09-08 12:46                                                                               ` Arnd Bergmann
2016-09-08 12:02                                                                     ` Grygorii Strashko
2016-09-08 12:02                                                                       ` Grygorii Strashko
2016-09-08 12:14                                                                       ` Arnd Bergmann
2016-09-08 12:14                                                                         ` Arnd Bergmann
2016-09-08 12:28                                                                   ` Peter Chen
2016-09-08 12:28                                                                     ` Peter Chen
2016-09-08 12:52                                                                     ` Arnd Bergmann
2016-09-08 12:52                                                                       ` Arnd Bergmann
2016-09-09  1:37                                                                       ` Peter Chen
2016-09-09  1:37                                                                         ` Peter Chen
2016-09-08 12:59                                                                     ` Grygorii Strashko
2016-09-08 12:59                                                                       ` Grygorii Strashko
2016-09-09  1:52                                                                       ` Peter Chen
2016-09-09  1:52                                                                         ` Peter Chen
2016-09-21 11:06                                                       ` Sriram Dash
2016-09-21 11:06                                                         ` Sriram Dash
2016-09-21 11:31                                                         ` Arnd Bergmann
2016-09-21 11:31                                                           ` Arnd Bergmann
2016-09-21 11:43                                                           ` Sriram Dash
2016-09-21 11:43                                                             ` Sriram Dash
2016-09-21 12:48                                                             ` Arnd Bergmann
2016-09-21 12:48                                                               ` Arnd Bergmann
2016-09-22  5:02                                                               ` Sriram Dash
2016-09-22  5:02                                                                 ` Sriram Dash
2016-10-07 22:46                                                                 ` Leo Li
2016-10-07 22:46                                                                   ` Leo Li
2016-09-21 17:14                                                             ` [PATCH] usb: xhci: Fix the patch inherit dma configuration from kbuild test robot
2016-09-21 17:14                                                               ` kbuild test robot
2016-04-27 20:57                   ` [PATCH] usb: dwc3: host: inherit dma configuration from parent dev Felipe Balbi
2016-04-27 20:57                     ` Felipe Balbi
2016-04-27 14:14         ` Grygorii Strashko
2016-04-27 14:14           ` Grygorii Strashko
2016-05-05 17:07 ` Brian Norris
2016-05-05 17:07   ` Brian Norris

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Pine.LNX.4.44L0.1609071158160.2115-100000@iolanthe.rowland.org \
    --to=stern@rowland.harvard.edu \
    --cc=arnd@arndb.de \
    --cc=balbi@kernel.org \
    --cc=catalin.marinas@arm.com \
    --cc=david.fisher1@synopsys.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=grygorii.strashko@ti.com \
    --cc=hzpeterchen@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=nsekhar@ti.com \
    --cc=oss@buserror.net \
    --cc=pku.leo@gmail.com \
    --cc=stuart.yoder@nxp.com \
    --cc=tqnguyen@apm.com \
    --cc=yoshihiro.shimoda.uh@renesas.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.