Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759499AbcKCRd7 (ORCPT ); Thu, 3 Nov 2016 13:33:59 -0400 Received: from mail-wm0-f50.google.com ([74.125.82.50]:37973 "EHLO mail-wm0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1759184AbcKCRd6 (ORCPT ); Thu, 3 Nov 2016 13:33:58 -0400 Subject: Re: [PATCH v3 3/5] dt/bindings: Add a new property to DA8xx USB PHY To: David Lechner , b-liu@ti.com, balbi@kernel.org References: <1478186765-19840-1-git-send-email-abailon@baylibre.com> <1478186765-19840-4-git-send-email-abailon@baylibre.com> Cc: kishon@ti.com, khilman@baylibre.com, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, nsekhar@ti.com From: Alexandre Bailon Message-ID: Date: Thu, 3 Nov 2016 18:33:55 +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: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2471 Lines: 57 On 11/03/2016 05:53 PM, 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. >> >> Add the usb20_force_mode property to force the PHY to operate >> in host or peripheral mode. > > Device tree describes the hardware, not the configuration, so this is > not acceptable. I think that is really hardware (and board) dependent. We will only need to set it for unusual hardware that doesn't let the otg phy automatically find the it's role. What do you think I should do? > > Besides, this setting should not be fixed to one value anyway. Actually, a bool is enough. If we need to force the phy in a specific mode, we can reuse dr_mode of controller. > >> When usb20_force_mode is used, dr_mode should also be configured >> to host or peripheral. >> The controller uses dr_mode to configure itself, but the phy use >> it to get the mode to use to configure the PHY mode. >> >> Signed-off-by: Alexandre Bailon >> --- >> Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt >> b/Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt >> index c26478b..9fc87fb 100644 >> --- a/Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt >> +++ b/Documentation/devicetree/bindings/phy/phy-da8xx-usb.txt >> @@ -4,6 +4,11 @@ Required properties: >> - compatible: must be "ti,da830-usb-phy". >> - #phy-cells: must be 1. >> >> +Optional properties: >> +- usb20-force-mode: Force the phy to operate in same mode than the >> USB OTG controller. >> + It should only be defined if the hardware is not capable >> correctly >> + detect the role of USB by using VBUS and ID pin. >> + >> This device controls the PHY for both the USB 1.1 OHCI and USB 2.0 OTG >> controllers on DA8xx SoCs. Consumers of this device should use index >> 0 for >> the USB 2.0 phy device and index 1 for the USB 1.1 phy device. >> >