From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Felipe Balbi <balbi-l0cyMroinI0@public.gmane.org>
Cc: Heikki Krogerus
<heikki.krogerus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
"Rafael J. Wysocki"
<rafael.j.wysocki-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Andy Shevchenko
<andriy.shevchenko-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>,
Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Bin Liu <b-liu-l0cyMroinI0@public.gmane.org>,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: MUSB peripheral DMA regression caused by driver core runtime PM change
Date: Thu, 22 Oct 2015 11:02:16 -0700 [thread overview]
Message-ID: <20151022180216.GT3078@atomide.com> (raw)
In-Reply-To: <20151021234134.GQ3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
* Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org> [151021 16:44]:
> Hi all,
>
> I noticed a regresssino in v4.3-rc series to day with MUSB gadgets
> and DMA. Doing a git bisect between v4.2..v4.3-rc1 on it pointed to:
>
> ddef08dd00f5 ("Driver core: wakeup the parent device before trying probe")
>
> With the commit above reverted things work fine with DMA and USB gadgets.
>
> This is on omap3 with CONFIG_USB_INVENTRA_DMA selected. Selecting
> CONFIG_MUSB_PIO_ONLY still works even without reverting ddef08dd00f5.
>
> Anybody got ideas what might be wrong? Some wrong runtime PM usage
> under drivers/usb/musb?
Here's some more debug info on where things are different initializing
the USB gadgets. I added some printks and diffed the dmesg output. The
added calls from commit ddef08dd00f5 start with dd:
+dd __device_attach pm_runtime_put parent 480ab000.usb_otg_hs
+dd driver_probe_device pm_runtime_get_sync parent 0-0048
twl4030_usb 48070000.i2c:twl@48:twl4030-usb: Initialized TWL4030 USB module
+dd driver_probe_device pm_runtime_put parent 0-0048
+dd __device_attach pm_runtime_get_sync parent 480ab000.usb_otg_hs
+dd driver_probe_device pm_runtime_get_sync parent 480ab000.usb_otg_hs
musb musb-hdrc.0.auto _pm_runtime_get_sync
musb musb-hdrc.0.auto _pm_runtime_get_sync
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
@@ -273,11 +695,24 @@
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: MUSB HDRC host driver
-usb usb1: Manufacturer: Linux 4.3.0-rc6-00005-gb037ac9 musb-hcd
+usb usb1: Manufacturer: Linux 4.3.0-rc6-00005-g24b084c musb-hcd
usb usb1: SerialNumber: musb-hdrc.0.auto
+dd __device_attach pm_runtime_get_sync parent musb-hdrc.0.auto
+dd driver_probe_device pm_runtime_get_sync parent musb-hdrc.0.auto
+dd __device_attach pm_runtime_get_sync parent usb1
+dd driver_probe_device pm_runtime_get_sync parent usb1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
+dd driver_probe_device pm_runtime_put parent usb1
+dd __device_attach pm_runtime_put parent usb1
+dd driver_probe_device pm_runtime_put parent musb-hdrc.0.auto
+dd __device_attach pm_runtime_put parent musb-hdrc.0.auto
musb musb-hdrc.0.auto _pm_runtime_put
+dd driver_probe_device pm_runtime_put parent 480ab000.usb_otg_hs
+dd __device_attach pm_runtime_put parent 480ab000.usb_otg_hs
modprobe: module 'usb_core' not found
userial_init: registered 4 ttyGS* devices
Mass Storage Function, version: 2009/09/11
The musb driver is using autosuspend like Felipe pointed out offline,
so maybe that's where things go wrong with commit ddef08dd00f5?
Regards,
Tony
--
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
WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: MUSB peripheral DMA regression caused by driver core runtime PM change
Date: Thu, 22 Oct 2015 11:02:16 -0700 [thread overview]
Message-ID: <20151022180216.GT3078@atomide.com> (raw)
In-Reply-To: <20151021234134.GQ3078@atomide.com>
* Tony Lindgren <tony@atomide.com> [151021 16:44]:
> Hi all,
>
> I noticed a regresssino in v4.3-rc series to day with MUSB gadgets
> and DMA. Doing a git bisect between v4.2..v4.3-rc1 on it pointed to:
>
> ddef08dd00f5 ("Driver core: wakeup the parent device before trying probe")
>
> With the commit above reverted things work fine with DMA and USB gadgets.
>
> This is on omap3 with CONFIG_USB_INVENTRA_DMA selected. Selecting
> CONFIG_MUSB_PIO_ONLY still works even without reverting ddef08dd00f5.
>
> Anybody got ideas what might be wrong? Some wrong runtime PM usage
> under drivers/usb/musb?
Here's some more debug info on where things are different initializing
the USB gadgets. I added some printks and diffed the dmesg output. The
added calls from commit ddef08dd00f5 start with dd:
+dd __device_attach pm_runtime_put parent 480ab000.usb_otg_hs
+dd driver_probe_device pm_runtime_get_sync parent 0-0048
twl4030_usb 48070000.i2c:twl at 48:twl4030-usb: Initialized TWL4030 USB module
+dd driver_probe_device pm_runtime_put parent 0-0048
+dd __device_attach pm_runtime_get_sync parent 480ab000.usb_otg_hs
+dd driver_probe_device pm_runtime_get_sync parent 480ab000.usb_otg_hs
musb musb-hdrc.0.auto _pm_runtime_get_sync
musb musb-hdrc.0.auto _pm_runtime_get_sync
musb-hdrc: ConfigData=0xde (UTMI-8, dyn FIFOs, bulk combine, bulk split, HB-ISO Rx, HB-ISO Tx, SoftConn)
@@ -273,11 +695,24 @@
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: MUSB HDRC host driver
-usb usb1: Manufacturer: Linux 4.3.0-rc6-00005-gb037ac9 musb-hcd
+usb usb1: Manufacturer: Linux 4.3.0-rc6-00005-g24b084c musb-hcd
usb usb1: SerialNumber: musb-hdrc.0.auto
+dd __device_attach pm_runtime_get_sync parent musb-hdrc.0.auto
+dd driver_probe_device pm_runtime_get_sync parent musb-hdrc.0.auto
+dd __device_attach pm_runtime_get_sync parent usb1
+dd driver_probe_device pm_runtime_get_sync parent usb1
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
+dd driver_probe_device pm_runtime_put parent usb1
+dd __device_attach pm_runtime_put parent usb1
+dd driver_probe_device pm_runtime_put parent musb-hdrc.0.auto
+dd __device_attach pm_runtime_put parent musb-hdrc.0.auto
musb musb-hdrc.0.auto _pm_runtime_put
+dd driver_probe_device pm_runtime_put parent 480ab000.usb_otg_hs
+dd __device_attach pm_runtime_put parent 480ab000.usb_otg_hs
modprobe: module 'usb_core' not found
userial_init: registered 4 ttyGS* devices
Mass Storage Function, version: 2009/09/11
The musb driver is using autosuspend like Felipe pointed out offline,
so maybe that's where things go wrong with commit ddef08dd00f5?
Regards,
Tony
next prev parent reply other threads:[~2015-10-22 18:02 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-21 23:41 MUSB peripheral DMA regression caused by driver core runtime PM change Tony Lindgren
2015-10-21 23:41 ` Tony Lindgren
[not found] ` <20151021234134.GQ3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-10-22 18:02 ` Tony Lindgren [this message]
2015-10-22 18:02 ` Tony Lindgren
[not found] ` <20151022180216.GT3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-10-22 23:01 ` Tony Lindgren
2015-10-22 23:01 ` Tony Lindgren
[not found] ` <20151022230133.GV3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-10-23 12:50 ` Grygorii Strashko
2015-10-23 12:50 ` Grygorii Strashko
[not found] ` <562A2D0D.3060104-l0cyMroinI0@public.gmane.org>
2015-10-23 16:43 ` Tony Lindgren
2015-10-23 16:43 ` Tony Lindgren
[not found] ` <20151023163957.GW3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-10-23 16:48 ` Felipe Balbi
2015-10-23 16:48 ` Felipe Balbi
[not found] ` <877fmdcyzi.fsf-HgARHv6XitJaoMGHk7MhZQC/G2K4zDHf@public.gmane.org>
2015-10-23 17:58 ` Grygorii Strashko
2015-10-23 17:58 ` Grygorii Strashko
[not found] ` <562A7549.3070400-l0cyMroinI0@public.gmane.org>
2015-10-23 18:27 ` Alan Stern
2015-10-23 18:27 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.1510231406200.1644-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2015-10-23 19:20 ` Tony Lindgren
2015-10-23 19:20 ` Tony Lindgren
2015-10-23 20:33 ` Alan Stern
2015-10-23 20:33 ` Alan Stern
2015-10-23 20:36 ` Tony Lindgren
2015-10-23 20:36 ` Tony Lindgren
2015-10-28 17:14 ` Tony Lindgren
2015-10-28 17:14 ` Tony Lindgren
[not found] ` <20151028171441.GE3078-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-10-28 17:16 ` Felipe Balbi
2015-10-28 17:16 ` Felipe Balbi
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=20151022180216.GT3078@atomide.com \
--to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
--cc=andriy.shevchenko-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
--cc=b-liu-l0cyMroinI0@public.gmane.org \
--cc=balbi-l0cyMroinI0@public.gmane.org \
--cc=heikki.krogerus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org \
--cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=rafael.j.wysocki-ral2JQCrhuEAvxtiuMwx3w@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.