From: Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
To: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
Cc: Bin Liu <b-liu-l0cyMroinI0@public.gmane.org>,
Boris Brezillon
<boris.brezillon-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>,
Greg Kroah-Hartman
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
Andreas Kemnade <andreas-cLv4Z9ELZ06ZuzBka8ofvg@public.gmane.org>,
Felipe Balbi <balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Kishon Vijay Abraham I <kishon-l0cyMroinI0@public.gmane.org>,
Ivaylo Dimitrov
<ivo.g.dimitrov.75-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
Johan Hovold <johan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Ladislav Michl <ladis-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org>,
Sergei Shtylyov
<sergei.shtylyov-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org>,
linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 0/4] musb fixes for v4.9-rc cycle
Date: Sat, 12 Nov 2016 00:11:04 +0200 [thread overview]
Message-ID: <3814185.kgidRBy8ST@avalon> (raw)
In-Reply-To: <20161111165321.GF7138-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
Hello,
On Friday 11 Nov 2016 08:53:22 Tony Lindgren wrote:
> * Bin Liu <b-liu-l0cyMroinI0@public.gmane.org> [161111 08:25]:
> > On Fri, Nov 11, 2016 at 01:39:28AM +0200, Laurent Pinchart wrote:
> >> Hello,
> >>
> >> On Friday 11 Nov 2016 00:27:52 Laurent Pinchart wrote:
> >>> On Thursday 10 Nov 2016 13:42:34 Tony Lindgren wrote:
> >>>> * Laurent Pinchart <laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org> [161110 13:29]:
> >>>>> I had to disable CONFIG_USB_GADGET is compiling it as a module
> >>>>> prevents selecting CONFIG_NOP_USB_XCEIV=y, which is a dependency for
> >>>>> CONFIG_USB_EHCI_HCD_OMAP=m.
> >>>>>
> >>>>> The new configuration resulted in a few changes, among which the
> >>>>> most notable is
> >>>>>
> >>>>> -# CONFIG_USB_MUSB_HOST is not set
> >>>>> -# CONFIG_USB_MUSB_GADGET is not set
> >>>>> -CONFIG_USB_MUSB_DUAL_ROLE=y
> >>>>> +CONFIG_USB_MUSB_HOST=y
> >>>>>
> >>>>> I then get the same error as originally reported.
> >>>>
> >>>> Yeah OK, that's the problem.. We still have musb hardware
> >>>> trying to do things on it's own and phy trying to detect
> >>>> the state.
> >>>>
> >>>> Any ideas why we have a dependency like that in Kconfig?
> >>>
> >>> Well, with CONFIG_USB_GADGET disabled, I don't expect
> >>> CONFIG_USB_MUSB_GADGET to be enabled. MUSB can only operate in host
> >>> mode in that case, so musb-> xceiv->otg->state = OTG_STATE_A_IDLE
> >>> makes sense.
> >>
> >> I've tried to investigate this but I'm not familiar enough with the MUSB
> >> driver to reach any conclusion. Felipe, if you have time could you give
> >> me a hand ?
> >>
> >> To summarize the issue, on a pandaboard-es where the MUSB is wired to an
> >> OTG connector with mode rightfully set to MUSB_PORT_MODE_DUAL_ROLE in
> >> DT, a kernel configured with CONFIG_USB_MUSB_HOST=y (for instance
> >> because CONFIG_USB_GADGET is disabled) will print an endless stream of
> >> the following meessage.
> >>
> >> [ 2.766174] musb_bus_suspend 2586: trying to suspend as a_idle while
> >> active
> >
> > I don't have a omap3/4 platform to test on this, but I don't see this
> > problem on am335x board.
Which board is that ? For the problem to occur the board has to have an OTG
connector.
> >> musb_init_controller() performs the following actions
> >>
> >> case MUSB_PORT_MODE_DUAL_ROLE:
> >> status = musb_host_setup(musb, plat->power);
> >> if (status < 0)
> >> goto fail3;
> >> status = musb_gadget_setup(musb);
> >> if (status) {
> >> musb_host_cleanup(musb);
> >> goto fail3;
> >> }
> >> status = musb_platform_set_mode(musb, MUSB_OTG);
> >> break;
> >>
> >> and as gadget support is disabled musb_gadget_setup() compiles to a
> >> no-op inline function. The system is thus configured in host mode by
> >> musb_host_setup() with musb->xceiv->otg->state = OTG_STATE_A_IDLE. A
> >> later call to musb_start() verifies the condition
> >>
> >> if (musb->port_mode != MUSB_PORT_MODE_HOST &&
> >> musb->xceiv->otg->state != OTG_STATE_A_WAIT_BCON &&
> >> (devctl & MUSB_DEVCTL_VBUS) == MUSB_DEVCTL_VBUS) {
> >
> > To get there, devctl[MUSB_DEVCTL_VBUS] bits have to be set, where does the
> > vbus voltage come from? Session is not on yet.
MUSB_DEVCTL is first set to 0 by musb_generic_disable() called from
musb_init_controller(). The register is then left untouched (as far as I can
tell, I've intercepted all musb_writeb() and musb_readb() calls) until
musb_start() to reads the register. The read value has BDEVICE and VBUS=3 set.
> >> and sets musb->is_active to 1. Later, musb_bus_suspend() complains
> >> because is_active is not 0.
> >>
> >> What is wrong in that sequence ?
>
> I think the issue is pandaboard connected to a PC with mini-B
> cable while musb is being forced to host mode?
The issue also occurs when the cable isn't connected.
--
Regards,
Laurent Pinchart
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2016-11-11 22:11 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-07 21:50 [PATCH 0/4] musb fixes for v4.9-rc cycle Tony Lindgren
[not found] ` <20161107215020.31399-1-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-07 21:50 ` [PATCH 1/4] usb: musb: Fix broken use of static variable for multiple instances Tony Lindgren
[not found] ` <20161107215020.31399-2-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 17:10 ` Johan Hovold
2016-11-07 21:50 ` [PATCH 2/4] usb: musb: Fix sleeping function called from invalid context for hdrc glue Tony Lindgren
[not found] ` <20161107215020.31399-3-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 17:09 ` Johan Hovold
2016-11-08 17:34 ` Tony Lindgren
[not found] ` <20161108173413.GM2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 19:03 ` Johan Hovold
2016-11-09 1:26 ` Tony Lindgren
[not found] ` <20161109012606.GR2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-09 15:34 ` Tony Lindgren
[not found] ` <20161109153409.GU2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-09 15:50 ` Johan Hovold
2016-11-09 15:39 ` Johan Hovold
2016-11-09 16:04 ` Johan Hovold
2016-11-09 17:54 ` Tony Lindgren
[not found] ` <20161109175437.GZ2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 16:04 ` Johan Hovold
2016-11-10 17:41 ` Tony Lindgren
[not found] ` <20161110174150.GC27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 18:02 ` Tony Lindgren
[not found] ` <20161110180234.GH27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 18:04 ` Johan Hovold
2016-11-10 18:42 ` Johan Hovold
2016-11-10 19:40 ` Tony Lindgren
[not found] ` <20161110194003.GI27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-11 12:03 ` Johan Hovold
2016-11-11 15:42 ` Tony Lindgren
[not found] ` <20161111154250.GB7138-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-11 16:40 ` Johan Hovold
2016-11-11 16:50 ` Tony Lindgren
2016-11-07 21:50 ` [PATCH 3/4] usb: musb: Fix PM for hub disconnect Tony Lindgren
2016-11-07 21:50 ` [PATCH 4/4] phy: twl4030-usb: Fix for musb session bit based PM Tony Lindgren
2016-11-08 13:38 ` [PATCH 0/4] musb fixes for v4.9-rc cycle Ladislav Michl
[not found] ` <20161108133821.GA1855-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2016-11-08 14:49 ` Tony Lindgren
[not found] ` <20161108144934.GK2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 14:55 ` Tony Lindgren
[not found] ` <20161108145550.GL2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 17:19 ` Ladislav Michl
[not found] ` <20161108171951.GA27533-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2016-11-08 22:05 ` Tony Lindgren
[not found] ` <20161108220530.GO2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 22:52 ` Ladislav Michl
[not found] ` <20161108225206.GA14049-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2016-11-08 23:16 ` Tony Lindgren
[not found] ` <20161108231637.GP2428-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-08 23:39 ` Ladislav Michl
[not found] ` <20161108233934.GA25005-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2016-11-08 23:47 ` Tony Lindgren
2016-11-10 12:46 ` Laurent Pinchart
2016-11-10 15:01 ` Tony Lindgren
[not found] ` <20161110150152.GA27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 17:18 ` Laurent Pinchart
2016-11-10 17:25 ` Laurent Pinchart
2016-11-10 17:43 ` Laurent Pinchart
2016-11-10 17:50 ` Tony Lindgren
[not found] ` <20161110175033.GD27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 20:29 ` Laurent Pinchart
2016-11-10 20:42 ` Tony Lindgren
[not found] ` <20161110204233.GJ27724-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-10 22:27 ` Laurent Pinchart
2016-11-10 23:39 ` Laurent Pinchart
2016-11-11 16:24 ` Bin Liu
2016-11-11 16:53 ` Tony Lindgren
[not found] ` <20161111165321.GF7138-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-11 22:11 ` Laurent Pinchart [this message]
2016-11-11 23:06 ` Bin Liu
2016-11-12 1:21 ` Laurent Pinchart
2016-12-20 18:40 ` Ladislav Michl
2016-12-20 20:59 ` Tony Lindgren
2016-11-10 21:25 ` Laurent Pinchart
2016-11-10 21:56 ` Tony Lindgren
2016-11-23 10:14 ` Tomi Valkeinen
[not found] ` <839f0f26-3bb0-d368-8cff-dbccaffa7244-l0cyMroinI0@public.gmane.org>
2016-11-23 15:49 ` Laurent Pinchart
2016-11-23 15:54 ` Tomi Valkeinen
[not found] ` <47c6e11e-3725-8955-5cc4-654df4d1c3bc-l0cyMroinI0@public.gmane.org>
2016-11-23 15:57 ` Tony Lindgren
[not found] ` <20161123155747.GF4082-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-23 16:13 ` Tomi Valkeinen
[not found] ` <c76fd922-9ac8-3b32-902a-7839a4817109-l0cyMroinI0@public.gmane.org>
2016-11-23 16:34 ` Tony Lindgren
[not found] ` <20161123163448.GJ4082-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-11-23 16:40 ` Tomi Valkeinen
[not found] ` <19526c30-5f18-337a-1e73-7f8965a778c1-l0cyMroinI0@public.gmane.org>
2016-11-23 16:44 ` Tony Lindgren
2016-11-23 16:44 ` Laurent Pinchart
2016-12-08 5:51 ` Tony Lindgren
[not found] ` <20161208055122.GC4264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 12:03 ` Laurent Pinchart
2016-12-08 18:47 ` 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=3814185.kgidRBy8ST@avalon \
--to=laurent.pinchart-rylnwiuwjnjg/c1bvhzhaw@public.gmane.org \
--cc=andreas-cLv4Z9ELZ06ZuzBka8ofvg@public.gmane.org \
--cc=b-liu-l0cyMroinI0@public.gmane.org \
--cc=balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=boris.brezillon-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=ivo.g.dimitrov.75-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=johan-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=kishon-l0cyMroinI0@public.gmane.org \
--cc=ladis-6z/3iImG2C8G8FEW9MqTrA@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=sergei.shtylyov-M4DtvfQ/ZS1MRgGoP+s0PdBPR1lH4CV8@public.gmane.org \
--cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.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 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.