From: Tony Lindgren <tony@atomide.com>
To: Bin Liu <b-liu@ti.com>,
Moreno Bartalucci <moreno.bartalucci@tecnorama.it>,
Lars Melin <larsm17@gmail.com>,
"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
"linux-usb@vger.kernel.org" <linux-usb@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Alessio Igor Bogani <abogani@kernel.org>
Subject: Re: [PATCH] usb-musb: keep VBUS on when device is disconnected
Date: Mon, 27 Mar 2017 07:30:50 -0700 [thread overview]
Message-ID: <20170327143049.GG10760@atomide.com> (raw)
In-Reply-To: <20170327131701.GA12674@uda0271908>
* Bin Liu <b-liu@ti.com> [170327 06:22]:
> On Mon, Mar 27, 2017 at 02:53:27PM +0200, Moreno Bartalucci wrote:
> > > Il giorno 25 mar 2017, alle ore 08:21, Lars Melin <larsm17@gmail.com> ha scritto:
> > >
> > >>
> > >> The usb device has been disconnected, why it still cares about VBUS
> > >> power?
> > >
> > > Morphing devices (3G dongles, wifi dongles, some printers) boots up in install mode, usually only as a virtual cd-rom containing Windows drivers and software.
> > > [...]
> > > why a host only configured port should cut the VBUS supply, it could be always on right?
> > >
> >
> > Yes, that’s exactly the problem I tried to solve with this patch.
>
> Yeah, the problem is clear to me now.
Ah so it's with the state changing devices.
> > I have to add that the problem was not there with kernels up to
> > 4.8.17, I started to see it with 4.9 and up.
> >
> > By git-bisecting kernel sources, it appears this behaviour has been
> > introduced by this commit:
> >
> > 2f3fd2c5bde1f94513c3dc311ae64494085ec371
>
> It seems this patch changes how OTG_STATE_A_WAIT_VRISE and
> OTG_STATE_A_WAIT_BCON are used.
> >
> > I also agree that, in my opinion, a host only port should never remove
> > the VBUS supply, as it happens on all the PCs (linux+windows+mac) that
> > I tested until now.
>
> True. It is just that the musb driver handles both dual-role and
> host-only mode.
Maybe the other way to fix it would be to keep VBUS on longer when
checking for connected devices. Maybe we now recheck based on the
poll_timeout too early and then nothing is found.
> > I saw this problem on a beaglebone black. Of course I’m available to
> > do all the tests that you might suggest me to help you better
> > understand the issue.
>
> Thanks for the offer. Please let me look at the problem first, I have a
> modem to test.
> It is not clear why the original driver clears VBUS in this place, so I
> have to ensure your patch is the correct change.
I wonder if the following test patch allows the mode changing
devices to been properly found? Of course it's just for testing,
and scanning for devices takes now 5 seconds.. But it might
provide clues why musb thinks no devices are connected and we
cut VBUS.
Regards,
Tony
8< ----------------------
diff --git a/drivers/usb/musb/musb_dsps.c b/drivers/usb/musb/musb_dsps.c
--- a/drivers/usb/musb/musb_dsps.c
+++ b/drivers/usb/musb/musb_dsps.c
@@ -991,7 +991,7 @@ static const struct dsps_musb_wrapper am33xx_driver_data = {
.rxep_shift = 16,
.rxep_mask = 0xfffe,
.rxep_bitmap = (0xfffe << 16),
- .poll_timeout = 2000, /* ms */
+ .poll_timeout = 5000, /* ms */
};
static const struct of_device_id musb_dsps_of_match[] = {
next prev parent reply other threads:[~2017-03-27 14:30 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-15 14:08 [PATCH] usb-musb: keep VBUS on when device is disconnected Moreno Bartalucci
[not found] ` <20170315140801.97230-1-moreno.bartalucci-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-24 18:58 ` Bin Liu
2017-03-25 7:21 ` Lars Melin
[not found] ` <2d10809f-d482-ffa9-30b7-8785e94ab102-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-03-27 12:53 ` Moreno Bartalucci
[not found] ` <00882633-3F61-4010-A4D2-D04473282B10-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-27 13:17 ` Bin Liu
2017-03-27 14:30 ` Tony Lindgren [this message]
2017-03-27 16:20 ` Moreno Bartalucci
[not found] ` <63FD9E13-2B70-485C-80A7-206BEC16905A-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-27 16:59 ` Tony Lindgren
2017-03-27 17:15 ` Bin Liu
2017-03-27 17:55 ` Tony Lindgren
2017-05-11 18:50 ` Bin Liu
2017-05-11 18:55 ` Tony Lindgren
2017-05-11 19:01 ` Bin Liu
2017-05-11 19:10 ` Bin Liu
2017-05-11 19:20 ` Bin Liu
2017-05-11 19:38 ` Tony Lindgren
2017-05-11 20:02 ` Bin Liu
2017-05-11 20:23 ` Tony Lindgren
2017-05-11 20:27 ` Tony Lindgren
2017-05-11 20:44 ` Bin Liu
2017-05-11 21:06 ` Tony Lindgren
2017-05-12 13:40 ` Bin Liu
2017-05-12 14:58 ` Tony Lindgren
2017-05-12 15:21 ` Bin Liu
2017-05-12 15:43 ` Moreno Bartalucci
2017-05-12 17:21 ` Tony Lindgren
2017-05-12 17:40 ` Bin Liu
2017-05-12 17:46 ` Tony Lindgren
2017-05-15 7:07 ` Moreno Bartalucci
2017-05-15 12:24 ` Bin Liu
2017-03-28 6:10 ` Moreno Bartalucci
[not found] ` <11BBAEC7-0B26-40FE-963E-811F7853F2FE-Hj/TeGiWV4YL5bzFcGmneg@public.gmane.org>
2017-03-28 14:59 ` Tony Lindgren
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=20170327143049.GG10760@atomide.com \
--to=tony@atomide.com \
--cc=abogani@kernel.org \
--cc=b-liu@ti.com \
--cc=larsm17@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=moreno.bartalucci@tecnorama.it \
/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).