linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: peter.chen@freescale.com (Peter Chen)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 0/3] USB: add generic onboard USB HUB driver
Date: Tue, 15 Dec 2015 14:28:42 +0800	[thread overview]
Message-ID: <20151215062821.GA11241@shlinux2> (raw)
In-Reply-To: <CAOMZO5CfBKuJ584jwbg98s9tn+0Z7W0nOaZnUkm4cJUSvNGTZw@mail.gmail.com>

On Mon, Dec 14, 2015 at 09:26:55AM -0200, Fabio Estevam wrote:
> Hi Peter,
> 
> On Mon, Dec 14, 2015 at 5:26 AM, Peter Chen <peter.chen@freescale.com> wrote:
> 
> > Hi all,
> >
> > There is a known issue that the USB code can't handle USB HUB's
> > external pins well, in that case, it may cause some onboard
> > USB HUBs can't work since their PHY's clock or reset pin needs to
> > operate.
> >
> > The user reported this issue at below:
> > http://www.spinics.net/lists/linux-usb/msg131502.html
> >
> > In this patch set, I add a generic onboard USB HUB driver to
> > handle this problem, the external signals will be configured
> > before usb controller's initialization, it much likes we did
> > it at board code before.
> >
> > The user needs to add this generic hub node at dts to support it.
> >
> > @The udoo users, help to test please.
> 
> This is what I get with your series applied:
> 
> [    2.288300] usb 1-1: device descriptor read/64, error -71
> [    2.518083] usb 1-1: new full-speed USB device number 3 using ci_hdrc
> [    2.738078] usb 1-1: device descriptor read/64, error -71
> [    3.058078] usb 1-1: device descriptor read/64, error -71
> [    3.288079] usb 1-1: new full-speed USB device number 4 using ci_hdrc
> [    3.768069] usb 1-1: device not accepting address 4, error -71
> [    3.888084] usb 1-1: new full-speed USB device number 5 using ci_hdrc
> [    4.368067] usb 1-1: device not accepting address 5, error -71
> [    4.374117] usb usb1-port1: unable to enumerate USB device

Thanks, Fabio.

I am afraid I forget to set gpio as output, would you please apply
below patch against my original ones:

diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
index 64eabe2..34b0708 100644
--- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
@@ -24,7 +24,7 @@
 		compatible = "generic-onboard-hub";
 		clocks = <&clks IMX6QDL_CLK_CKO>;
 		reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
-		reset-duration-us = <2>;
+		reset-duration-us = <10>;
 	};
 };
 
diff --git a/drivers/usb/misc/generic_onboard_hub.c b/drivers/usb/misc/generic_onboard_hub.c
index 7db5b78..2f0afa7 100644
--- a/drivers/usb/misc/generic_onboard_hub.c
+++ b/drivers/usb/misc/generic_onboard_hub.c
@@ -89,6 +89,8 @@ static int usb_hub_generic_probe(struct platform_device *pdev)
 	of_property_read_u32(node, "reset-duration-us", &duration_us);
 
 	if (gpiod_reset) {
+		gpiod_direction_output(gpiod_reset, 1);
+
 		gpiod_set_value(gpiod_reset, 1);
 		usleep_range(duration_us, duration_us + 10);
 		gpiod_set_value(gpiod_reset, 0);

-- 

Best Regards,
Peter Chen

  reply	other threads:[~2015-12-15  6:28 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-14  7:26 [PATCH v2 0/3] USB: add generic onboard USB HUB driver Peter Chen
2015-12-14  7:26 ` [PATCH v2 1/3] usb: misc: generic_onboard_hub: " Peter Chen
2015-12-14  7:26 ` [PATCH v2 2/3] doc: dt-binding: generic onboard USB HUB Peter Chen
2015-12-14  7:26 ` [PATCH v2 3/3] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property Peter Chen
2015-12-14  9:35 ` [PATCH v2 0/3] USB: add generic onboard USB HUB driver Arnd Bergmann
2015-12-15  8:33   ` Peter Chen
2015-12-16 22:59   ` Rob Herring
2015-12-16 23:13     ` Arnd Bergmann
2015-12-17  2:31       ` Peter Chen
2015-12-17 13:49         ` Rob Herring
2015-12-18  7:38           ` Peter Chen
2015-12-17 16:13     ` Alan Stern
2015-12-18  7:42       ` Peter Chen
2015-12-18 15:38         ` Alan Stern
2015-12-21  8:33           ` Peter Chen
2015-12-21 19:40             ` Alan Stern
2015-12-22  3:32               ` Peter Chen
2015-12-22 15:48                 ` Alan Stern
2016-01-05 14:36             ` Rob Herring
2016-01-05 15:59               ` Alan Stern
2016-01-06  3:20               ` Peter Chen
2016-01-07 14:18                 ` Rob Herring
2016-01-08  3:33                   ` Peter Chen
2016-02-24  9:22                   ` Peter Chen
2015-12-14 11:26 ` Fabio Estevam
2015-12-15  6:28   ` Peter Chen [this message]
2015-12-15 11:32     ` Fabio Estevam
2015-12-16  4:11       ` Peter Chen
2015-12-16 10:11         ` Fabio Estevam
2015-12-16 20:05           ` Maciej S. Szmigiero
2015-12-17  6:57             ` Peter Chen
2015-12-18 23:48               ` Maciej S. Szmigiero
2015-12-21  8:44                 ` Peter Chen

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=20151215062821.GA11241@shlinux2 \
    --to=peter.chen@freescale.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).