Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754496AbbHIJAk (ORCPT ); Sun, 9 Aug 2015 05:00:40 -0400 Received: from neil.brown.name ([103.29.64.221]:51470 "EHLO vanity" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754099AbbHIJAi (ORCPT ); Sun, 9 Aug 2015 05:00:38 -0400 Date: Sun, 9 Aug 2015 19:00:17 +1000 From: NeilBrown To: Kishon Vijay Abraham I Cc: Alexander Holler , Greg Kroah-Hartman , , Subject: Re: [PATCH 4.1 099/267] phy: twl4030-usb: remove incorrect pm_runtime_get_sync() in probe function. Message-ID: <20150809190017.39a056a8@home.neil.brown.name> In-Reply-To: <55C5A657.7060003@ti.com> References: <20150731194001.933895871@linuxfoundation.org> <20150731194005.016920253@linuxfoundation.org> <55C59952.1000503@ahsoftware.de> <55C5A657.7060003@ti.com> X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.28; x86_64-suse-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3487 Lines: 102 On Sat, 8 Aug 2015 12:18:55 +0530 Kishon Vijay Abraham I wrote: > > > On Saturday 08 August 2015 11:23 AM, Alexander Holler wrote: > > Hello, > > > > this patch killed the musb-host functionality on my classic Beagleboard (rev > > c4). Symptom was that it there was a message I don't remember and the attached > > device didn't enumerate anymore (likely because of missing power, but I'm not > > sure). > > > > A simple revert has fixed it, I haven't looked further into the problem. > > Neil Brown, how was this tested? Well, I have a board with an OMAP3 connected to a twl4030 for USB and I noted that it wasn't power-managed properly and when I made that change, it was. I don't recall the exact details This is probably related to Commit: 56301df6bcaa ("phy: twl4030-usb: make runtime pm more reliable.") I certainly only tested with that patch in place. Looking at the code again, I cannot see why I thought I needed the 4724e277 patch. Devices are initialised as RPM_SUSPENDED with a usage count of zero (in pm_runtime_init) so when twl4030_usb_probe() calls pm_runtime_get_sync(), that will increase the usage_count to 1 and resume the device. Then it calls pm_runtime_put_autosuspend() which will (ultimately) drop the usage_count back to zero and suspend the device. So it looks like I messed up, but I'm sure I must have had a reason for that patch. I'll try to do some testing later in the week and will report what I find. NeilBrown > > -Kishon > > > > > Regards, > > > > Alexander Holler > > > > Am 31.07.2015 um 21:39 schrieb Greg Kroah-Hartman: > >> 4.1-stable review patch. If anyone has any objections, please let me know. > >> > >> ------------------ > >> > >> From: NeilBrown > >> > >> commit 4724e27114c4a7eceeee07db227a17fcab6f165c upstream. > >> > >> The USB phy should initialize with power-off, and will be powered on > >> by the USB system when a cable connection is detected. > >> > >> Having this pm_runtime_get_sync() during probe causes the phy to > >> *always* be powered on. > >> Removing it returns to sensible power management. > >> > >> Fixes: 96be39ab34b77c6f6f5cd6ae03aac6c6449ee5c4 > >> Signed-off-by: NeilBrown > >> Signed-off-by: Kishon Vijay Abraham I > >> Signed-off-by: Greg Kroah-Hartman > >> > >> --- > >> drivers/phy/phy-twl4030-usb.c | 1 - > >> 1 file changed, 1 deletion(-) > >> > >> --- a/drivers/phy/phy-twl4030-usb.c > >> +++ b/drivers/phy/phy-twl4030-usb.c > >> @@ -711,7 +711,6 @@ static int twl4030_usb_probe(struct plat > >> pm_runtime_use_autosuspend(&pdev->dev); > >> pm_runtime_set_autosuspend_delay(&pdev->dev, 2000); > >> pm_runtime_enable(&pdev->dev); > >> - pm_runtime_get_sync(&pdev->dev); > >> > >> /* Our job is to use irqs and status from the power module > >> * to keep the transceiver disabled when nothing's connected. > >> > >> > >> -- > >> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > >> the body of a message to majordomo@vger.kernel.org > >> More majordomo info at http://vger.kernel.org/majordomo-info.html > >> Please read the FAQ at http://www.tux.org/lkml/ > >> > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/