From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Felipe Balbi <balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>
Cc: Greg Kroah-Hartman
<gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org>,
Grygorii Strashko
<grygorii.strashko-l0cyMroinI0@public.gmane.org>,
Roger Quadros <rogerq-l0cyMroinI0@public.gmane.org>,
Sekhar Nori <nsekhar-l0cyMroinI0@public.gmane.org>,
linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Nishanth Menon <nm-l0cyMroinI0@public.gmane.org>
Subject: Re: [PATCH] usb: dwc3: omap: Fix imprecise external abort and oops on boot
Date: Thu, 8 Dec 2016 11:09:42 -0800 [thread overview]
Message-ID: <20161208190942.GD4920@atomide.com> (raw)
In-Reply-To: <20161208184425.GB4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
* Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> [161208 10:45]:
> * Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> [161208 10:25]:
> > * Felipe Balbi <balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> [161208 09:52]:
> > >
> > > Hi,
> > >
> > > Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> writes:
> > > > * Felipe Balbi <balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> [161208 01:45]:
> > > >>
> > > >> Hi,
> > > >>
> > > >> Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> writes:
> > > >> > Somehow starting with v4.9-rc7 there have been imprecise
> > > >>
> > > >> There's nothing touching dwc3 since v4.9-rc5.
> > > >
> > > > Right, nothing obvious has changed. I think it's just a slight timing
> > > > change in the code that started triggering it.
> > >
> > > could be
> > >
> > > >> > external aborts on omap5-uevm dwc3 controller. I have not been
> > > >> > able to bisect what exactly triggered this as it does not always
> > > >> > happen. It seems that something changed with probing that
> > > >> > now exposes the issue:
> > > >> >
> > > >> > Unhandled fault: imprecise external abort (0x1406) at 0x00000000
> > > >>
> > > >> hmmm, clock disabled... dwc3-omap shouldn't have pm runtime at all.
> > > >
> > > > It does for the interconnect target module clkctrl register via PM
> > > > runtime. That's the "usb_otg_ss" module.
> > >
> > > but that's all hidden in omap_device.c, we don't touch it from driver
> > > perspective.
> >
> > The call to pm_runtime_get_sync() in dwc3_omap_probe() will use it.
> >
> > Is there also some dwc3 internal clock? If we assume the usb_otg_ss
> > module is properly enabled it could be some dwc3 internal clock not
> > enabled?
> >
> > We do have a srst_udelay needed for enabling musb controller for some
> > SoCs, I'll check if that's the case here.
>
> If there are no dwc3 internal clocks that may be causing the imprecise
> external abort, then most likely we should apply the following change
> for srst_udelay. Looks like srst_udelay value of 2 is not enough here
> but 3 seems to do the job.
>
> The issue of the spurious interrupts on dwc3 probe remains though.
And for doing the reset looks like USBOTGSS_SYSCONFIG needs custom
handling as it's type2 byt with reset register in bit 17.
Anyways, for a minimal fix below is probably corrent if there are
no dw3 internal clocks to consider.
Regards,
Tony
> 8< ------------------------------------
> --- a/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
> +++ b/arch/arm/mach-omap2/omap_hwmod_54xx_data.c
> @@ -1952,6 +1952,7 @@ static struct omap_hwmod omap54xx_usb_tll_hs_hwmod = {
> static struct omap_hwmod_class_sysconfig omap54xx_usb_otg_ss_sysc = {
> .rev_offs = 0x0000,
> .sysc_offs = 0x0010,
> + .srst_udelay = 3,
> .sysc_flags = (SYSC_HAS_DMADISABLE | SYSC_HAS_MIDLEMODE |
> SYSC_HAS_SIDLEMODE),
> .idlemodes = (SIDLE_FORCE | SIDLE_NO | SIDLE_SMART |
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
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-12-08 19:09 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-08 3:21 [PATCH] usb: dwc3: omap: Fix imprecise external abort and oops on boot Tony Lindgren
[not found] ` <20161208032108.21962-1-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 9:44 ` Felipe Balbi
[not found] ` <87lgvqkb6f.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 15:37 ` Tony Lindgren
[not found] ` <20161208153734.GF4264-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 17:51 ` Felipe Balbi
[not found] ` <87a8c6pavm.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 18:25 ` Tony Lindgren
[not found] ` <20161208182521.GA4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 18:44 ` Tony Lindgren
[not found] ` <20161208184425.GB4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 19:09 ` Tony Lindgren [this message]
2016-12-08 19:18 ` Felipe Balbi
[not found] ` <8737hy8c1s.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 19:32 ` Tony Lindgren
[not found] ` <20161208193208.GE4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 20:09 ` Felipe Balbi
[not found] ` <87fulyuqs6.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 20:26 ` Tony Lindgren
2016-12-08 19:16 ` Felipe Balbi
[not found] ` <8760mu8c4m.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 19:45 ` Tony Lindgren
[not found] ` <20161208194557.GF4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 20:11 ` Felipe Balbi
[not found] ` <87d1h2uqny.fsf-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2016-12-08 20:25 ` Tony Lindgren
2016-12-08 21:54 ` Grygorii Strashko
[not found] ` <9cce1e34-2fec-9477-4827-6b4c67920a8a-l0cyMroinI0@public.gmane.org>
2016-12-08 22:57 ` Tony Lindgren
[not found] ` <20161208225724.GI4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-08 23:38 ` Grygorii Strashko
[not found] ` <2a0ce107-dddb-6c59-8681-677e217e9fac-l0cyMroinI0@public.gmane.org>
2016-12-08 23:55 ` Tony Lindgren
[not found] ` <20161208235513.GJ4920-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2016-12-09 18:45 ` Grygorii Strashko
2016-12-09 16:08 ` Roger Quadros
[not found] ` <8a94638a-a8fe-88e0-aece-1ed9835df3c6-l0cyMroinI0@public.gmane.org>
2016-12-09 16:28 ` 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=20161208190942.GD4920@atomide.com \
--to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
--cc=balbi-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r@public.gmane.org \
--cc=grygorii.strashko-l0cyMroinI0@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=nm-l0cyMroinI0@public.gmane.org \
--cc=nsekhar-l0cyMroinI0@public.gmane.org \
--cc=rogerq-l0cyMroinI0@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 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).