Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933227AbcKCRmd (ORCPT ); Thu, 3 Nov 2016 13:42:33 -0400 Received: from mail-wm0-f50.google.com ([74.125.82.50]:37785 "EHLO mail-wm0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933190AbcKCRmb (ORCPT ); Thu, 3 Nov 2016 13:42:31 -0400 Subject: Re: [PATCH v3 5/5] usb: musb: da8xx: Remove set_mode callback To: Bin Liu , David Lechner , balbi@kernel.org, kishon@ti.com, khilman@baylibre.com, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, nsekhar@ti.com References: <1478186765-19840-1-git-send-email-abailon@baylibre.com> <1478186765-19840-6-git-send-email-abailon@baylibre.com> <20161103172758.GA27605@uda0271908> From: Alexandre Bailon Message-ID: Date: Thu, 3 Nov 2016 18:42:18 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <20161103172758.GA27605@uda0271908> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2194 Lines: 55 On 11/03/2016 06:27 PM, Bin Liu wrote: > On Thu, Nov 03, 2016 at 12:18:53PM -0500, David Lechner wrote: >> On 11/03/2016 10:26 AM, Alexandre Bailon wrote: >>> The USB PHY is able to operate in OTG, host or peripheral. >>> Some board may be wired to work act only as host or peripheral. >>> In such case, the dr_mode property of controller must be set to >>> host or peripheral. But doing that will also configure the PHY >>> in host or peripheral mode whereas OTG is able to detect which >>> role the USB controller should take. >>> The PHY's host or peripheral mode are actually only useful when >>> hardware doesn't allow OTG to detect it's role. >>> >>> The set_mode callback is used by the musb driver to set mode >>> of the PHY. But in the case of DA8xx, the PHY have some issues. >>> The OTG mode work correctly but the host and peripheral don't. >>> In host mode, the PHY stops to work after the first disconnect. >>> In device mode, the PHY doesn't detect any disconnect. >>> As the OTG mode is working properly, let the PHY in OTG mode, >>> whatever is the controller mode. >>> >>> Signed-off-by: Alexandre Bailon >>> --- >>> drivers/usb/musb/da8xx.c | 23 ----------------------- >>> 1 file changed, 23 deletions(-) >>> >>> diff --git a/drivers/usb/musb/da8xx.c b/drivers/usb/musb/da8xx.c >>> index 6749aa1..581f830 100644 >>> --- a/drivers/usb/musb/da8xx.c >>> +++ b/drivers/usb/musb/da8xx.c >>> @@ -335,28 +335,6 @@ static irqreturn_t da8xx_musb_interrupt(int irq, void *hci) >>> return ret; >>> } >>> >>> -static int da8xx_musb_set_mode(struct musb *musb, u8 musb_mode) >> >> Bin suggested using some sort of quirks flag. So instead of removing >> this callback, I think this is where to incorporate the quirks >> flags. >> >> I suppose the quirks could be kernel config options. Perhaps someone >> else has a better idea? > > I didn't closely follow this thread, but I was thinking about to reuse > musb->io.quirks, and define the quirks in device tree... I have understood that. It seems to be a better solution than what I did. > > I am debugging an issue in dsps, and might need a quirk for the > solution... > > Regards, > -Bin. > Thanks, Alexandre