From patchwork Tue Dec 20 18:40:46 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ladislav Michl X-Patchwork-Id: 9482031 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 4970E60237 for ; Tue, 20 Dec 2016 18:40:55 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3929F27F7F for ; Tue, 20 Dec 2016 18:40:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2DB1B27FA1; Tue, 20 Dec 2016 18:40:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2511027F7F for ; Tue, 20 Dec 2016 18:40:54 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1763415AbcLTSkw (ORCPT ); Tue, 20 Dec 2016 13:40:52 -0500 Received: from eddie.linux-mips.org ([148.251.95.138]:37816 "EHLO cvs.linux-mips.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754010AbcLTSkv (ORCPT ); Tue, 20 Dec 2016 13:40:51 -0500 Received: (from localhost user: 'ladis' uid#1021 fake: STDIN (ladis@eddie.linux-mips.org)) by eddie.linux-mips.org id S23993319AbcLTSktcIuh0 (ORCPT + 1 other); Tue, 20 Dec 2016 19:40:49 +0100 Date: Tue, 20 Dec 2016 19:40:46 +0100 From: Ladislav Michl To: Laurent Pinchart Cc: Bin Liu , Tony Lindgren , Boris Brezillon , Greg Kroah-Hartman , Andreas Kemnade , Felipe Balbi , Kishon Vijay Abraham I , Ivaylo Dimitrov , Johan Hovold , Sergei Shtylyov , linux-usb@vger.kernel.org, linux-omap@vger.kernel.org Subject: Re: [PATCH 0/4] musb fixes for v4.9-rc cycle Message-ID: <20161220184046.livxczyqrqub653l@lenoch> References: <20161107215020.31399-1-tony@atomide.com> <3814185.kgidRBy8ST@avalon> <20161111230602.GA17429@uda0271908> <64319829.AAeNM2SzI6@avalon> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <64319829.AAeNM2SzI6@avalon> User-Agent: NeoMutt/20161126 (1.7.1) Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Hi Laurent, On Sat, Nov 12, 2016 at 03:21:24AM +0200, Laurent Pinchart wrote: > Hi Bin, > > http://pandaboard.org/sites/default/files/board_reference/ES/750-2170-002-sch_revb.pdf > > It would seem that the voltage is provided by the TWL6030. I'm not sure what's > turning it on as the MUSB driver doesn't seem to perform any set_vbus call in > the faulty configuration (I've traced musb_platform_set_vbus(), > omap2430_musb_set_vbus(), otg_set_vbus(), omap_usb_set_vbus() and > twl6030_set_vbus() and none of them get called). > > An interesting point to note is that the TWL6030 gets probed after MUSB when > MUSB is configured in host mode only, and that happens after the call to > musb_start(). just gave 4.9.0 more testing on IGEPv2 board (DM3730 based), schematics here: https://www.isee.biz/support/downloads/item/igepv2-rc-schematics musb is configured in host only mode, driver compiled in. ID pin is grounded, VBUS not connected, D+, D-, and GND are connected to self powered hub. $ lsusb -t /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-omap/3p, 480M /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=musb-hdrc/1p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=udlfb, 480M |__ Port 4: Dev 4, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 4: Dev 5, If 1, Class=CDC Data, Driver=cdc_acm, 12M |__ Port 4: Dev 5, If 0, Class=Communications, Driver=cdc_acm, 12M /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ohci-omap3/3p, 12M 1) without following patch I'm getting: udlfb: wait for urb interrupted: ffffffc2 available: 0 however, devices get enumerated 2) With the patch above, everything is working correctly, until I unplug all devices from hub. Usb core then tries to suspend port which leads to endless flood of: musb_bus_suspend 2586: trying to suspend as a_idle while active Disabling CONFIG_PM causes usb device enumeration stop working. 3) Few boards were still suffering from: musb-hdrc musb-hdrc.0.auto: VBUS_ERROR in a_idle (90, controller); - pm_runtime_set_autosuspend_delay(musb->controller, 500); + pm_runtime_set_autosuspend_delay(musb->controller, 100); pm_runtime_enable(musb->controller); pm_runtime_get_sync(musb->controller);