Received: by 2002:a25:c205:0:0:0:0:0 with SMTP id s5csp6146020ybf; Thu, 5 Mar 2020 14:09:45 -0800 (PST) X-Google-Smtp-Source: ADFU+vsete1cCgYIbBgJwo7tpVAZm95sJcTjzh1m/bTF+U+tb5vurmkYGL6Jmim26nzulaTN57DS X-Received: by 2002:aca:f12:: with SMTP id 18mr449006oip.126.1583446185178; Thu, 05 Mar 2020 14:09:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1583446185; cv=none; d=google.com; s=arc-20160816; b=dVd2Yt0aTTAzOmp+Gm4+r7iSAhncM5oWfy2qTx9K3df4/tuj8CkTwHJ0V8S45AcSnn iTnQpUX0Of9hrT48ljwtRCfSroQ9oG2X4s7xNNXKx8HhXn6V7+vJ7hu4KZOZJxGlqi6e QEHyG5Sz5h6qV6CHbAwqkbsEHr1ZOtCenXvYaq+QqyWIN4Z7MjYpfufqTgs0WQXB+7Fu AMZ0dHEtZmYArQib7Du+1rzJUcbTnisuf/fEH0VMoaaR3XBcUp5F16ukgRT417P27gDg iFzaIwpqaBaHtqdjEvLdrn1QJJ4Tr4glvOeuiRhVxLJzEbraaXNyeRtUz+uuTHm6cnYL P0fQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=oDdCfltD2QaBSAFFf+wWMswJOlfqgPRuLkEZFJgGNrM=; b=cI7NKb/vF3+0uoG9SUgXXFEq9beDm5z0TBDbCxd/Xya8iLdU/CZERFPhwbQQFb6oG/ akxQlE3uXfVjklCE9tNrEcoT+XUI/tBRn1HeclE+p+gcHawYHU0Mc2lZjPwmUgdvXyWW hT3q7IlOXqohG5rkv4jVZbHwqlZ1DRnGt1Gq0uH1RAQjTLEzVNSHlBUHzj/d8IK2t+Fw GkzaPkmZAFm+uSRPWR/wohYahe7MJ+7JC2hc0bSntz1u/q9cREGqMLyAIbTRZp+Qv1Hr zJ/9AO4lxdZe7zptl4JFoewz8CMPKywYbTWuWIy/lkwFlbq35zx/e3faguDabyGXjavK L8Zg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=WPeErd9h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d8si153534oti.306.2020.03.05.14.09.31; Thu, 05 Mar 2020 14:09:45 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@chromium.org header.s=google header.b=WPeErd9h; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726178AbgCEWJB (ORCPT + 99 others); Thu, 5 Mar 2020 17:09:01 -0500 Received: from mail-pg1-f195.google.com ([209.85.215.195]:44229 "EHLO mail-pg1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725991AbgCEWJB (ORCPT ); Thu, 5 Mar 2020 17:09:01 -0500 Received: by mail-pg1-f195.google.com with SMTP id n24so71123pgk.11 for ; Thu, 05 Mar 2020 14:09:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=oDdCfltD2QaBSAFFf+wWMswJOlfqgPRuLkEZFJgGNrM=; b=WPeErd9hhzVZX/Waac4idjpF5e1w/9TGIpnu0CXQ7llkO14XJgGYKzMw8QZ3O6Ir8R +7SC8GCkS6eBCJp9sfV05tfmssFengeJa4nq6nYNiJb6hw5SVjCDYOtH/29BdMnRRIxO 020BrKHkDlcKIGl/YMOB9r7MjXc4STIqzJgJk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=oDdCfltD2QaBSAFFf+wWMswJOlfqgPRuLkEZFJgGNrM=; b=YUyJzh0SqICaSMAdKYPQIWz+ALR0BZOoAwmTM7USVF68DjPWORltqMo3rpX0gJjrP6 ul30MpBXOfrumNLL1Nsq5MA9xAnEgTKpe8GpFTFcnNCnsqFDjm9hhAgxZDLQt9h+YOX5 o1OMyM5NGrAsnTAkgzbDR9Qywy9kYxyDJtDf4EeqjDIJ9jaUG8U69q9rwyQH1NNuy7ur VRF6YOXO2vrneoqGTDv4BZijiVSHznN2gwQrP23SONmm81rYAQ1ubglVdke/qgdiml7b sKn9d4YDfrBn4eYJkiPMAyC63q8PTgIawI5XnmKV4elkZL+1CLzY4ocnPxpPkJclWK6e PTew== X-Gm-Message-State: ANhLgQ2lhHypA+v4W063ks6xNT2n7UvNZyY4X2SbhSRu1Dtd18FxV93m 7r50aIh+j2URZg44atPw6tgxBA== X-Received: by 2002:aa7:8392:: with SMTP id u18mr484796pfm.41.1583446139767; Thu, 05 Mar 2020 14:08:59 -0800 (PST) Received: from google.com ([2620:15c:202:201:476b:691:abc3:38db]) by smtp.gmail.com with ESMTPSA id q21sm34620995pff.105.2020.03.05.14.08.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Mar 2020 14:08:59 -0800 (PST) Date: Thu, 5 Mar 2020 14:08:58 -0800 From: Prashant Malani To: Rob Herring Cc: Stephen Boyd , devicetree@vger.kernel.org, Benson Leung , Heikki Krogerus , Enric Balletbo i Serra , Bryan O'Donoghue , Chunfeng Yun , Greg Kroah-Hartman , Linus Walleij , "moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE" , "linux-kernel@vger.kernel.org" , "moderated list:ARM/Mediatek SoC support" , Linux USB List , Mark Rutland , Matthias Brugger , Miquel Raynal Subject: Re: [PATCH v2] dt-bindings: Convert usb-connector to YAML format. Message-ID: <20200305220858.GD142502@google.com> References: <20200305030135.210675-1-pmalani@chromium.org> <158344320452.25912.4758137777863945655@swboyd.mtv.corp.google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.12.2 (2019-09-21) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Thanks Rob for reviewing this patch. Kindly see my responses inline. Best regards, -Prashant On Thu, Mar 05, 2020 at 03:40:18PM -0600, Rob Herring wrote: > On Thu, Mar 5, 2020 at 3:20 PM Stephen Boyd wrote: > > > > Quoting Prashant Malani (2020-03-04 19:01:30) > > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > > new file mode 100644 > > > index 0000000000000..b386e2880405c > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > > @@ -0,0 +1,203 @@ > > > +# SPDX-License-Identifier: GPL-2.0-only > > > +%YAML 1.2 > > > +--- > > > +$id: http://devicetree.org/schemas/connector/usb-connector.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: USB Connector > > > + > > > +maintainers: > > > + - linux-usb@vger.kernel.org > > > + > > > +description: > > > + A USB connector node represents a physical USB connector. It should be a child > > > + of a USB interface controller. > > > + > > > +properties: > > > + compatible: > > > + enum: > > > + - usb-a-connector > > > + - usb-b-connector > > > + - usb-c-connector > > > + > > > + label: > > > + description: Symbolic name for the connector. > > > + > > > + type: > > > + description: Size of the connector, should be specified in case of USB-A, > > > + USB-B non-fullsize connectors. > > > > Maybe "should be specified in case of non-fullsize 'usb-a-connector' or > > 'usb-b-connector' compatible connectors"? > > > > > + $ref: /schemas/types.yaml#definitions/string > > > + enum: > > > + - mini > > > + - micro > > > + > > > + self-powered: > > > + description: Set this property if the USB device has its own power source. > > > + type: boolean > > > + > > > + # The following are optional properties for "usb-b-connector". > > > + id-gpios: > > > + description: An input gpio for USB ID pin. > > > + maxItems: 1 > > > + > > > + vbus-gpios: > > > + description: An input gpio for USB VBus pin, used to detect presence of > > > + VBUS 5V. See gpio/gpio.txt. > > > > Can this be written as bindings/gpio/gpio.txt? > > Or just drop the reference so we don't have to fix it later. Dropped the reference. > > > > + maxItems: 1 > > > + > > > + vbus-supply: > > > + description: A phandle to the regulator for USB VBUS if needed when host > > > + mode or dual role mode is supported. > > > + Particularly, if use an output GPIO to control a VBUS regulator, should > > > + model it as a regulator. See regulator/fixed-regulator.yaml > > > > And bindings/regulator/fixed-regulator.yaml? The idea is to > > disambiguate from kernel Documentation/ directory. > > > > > + > > > + # The following are optional properties for "usb-c-connector". > > > > Is there a way to constrain the binding so that this can't be put in a > > connector that doesn't have the usb-c-connector compatible string? > > Yes, with if/then and setting excluded properties to 'false'. > Personally, I don't think it is worth the messiness. I'm not too > worried if folks put in properties that are going to be ignored. Leaving this as is for now, based on the above comment. > > Rob > > > > + power-role: > > > + description: Determines the power role that the Type C connector will > > > + support. "dual" refers to Dual Role Port (DRP). > > > + allOf: > > > + - $ref: /schemas/types.yaml#definitions/string > > > + enum: > > > + - source > > > + - sink > > > + - dual > > > + > > > + try-power-role: > > > + description: Preferred power role. > > > + allOf: > > > + - $ref: /schemas/types.yaml#definitions/string > > > + enum: > > > + - source > > > + - sink > > > + - dual > > > + > > > + data-role: > > > + description: Data role if Type C connector supports USB data. "dual" refers > > > + Dual Role Device (DRD). > > > + allOf: > > > + - $ref: /schemas/types.yaml#definitions/string > > > + enum: > > > + - host > > > + - device > > > + - dual > > > > Is there a way to maintain a description for each possible string > > property? Then we could move the last sentence in the description above > > to be attached to '- dual' here. > > > > > + > > > + # The following are optional properties for "usb-c-connector" with power > > > + # delivery support. > > > + source-pdos: > > > + description: An array of u32 with each entry providing supported power > > > + source data object(PDO), the detailed bit definitions of PDO can be found > > > + in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2 > > > + Source_Capabilities Message, the order of each entry(PDO) should follow > > > + the PD spec chapter 6.4.1. Required for power source and power dual role. > > > + User can specify the source PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() > > > + defined in dt-bindings/usb/pd.h. > > > + minItems: 1 > > > + maxItems: 7 > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32-array > > > + > > > + sink-pdos: > > > + description: An array of u32 with each entry providing supported power sink > > > + data object(PDO), the detailed bit definitions of PDO can be found in > > > + "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3 > > > + Sink Capabilities Message, the order of each entry(PDO) should follow the > > > + PD spec chapter 6.4.1. Required for power sink and power dual role. User > > > + can specify the sink PDO array via PDO_FIXED/BATT/VAR/PPS_APDO() defined > > > + in dt-bindings/usb/pd.h. > > > + minItems: 1 > > > + maxItems: 7 > > > + allOf: > > > + - $ref: /schemas/types.yaml#/definitions/uint32-array > > > + > > > + op-sink-microwatt: > > > + description: Sink required operating power in microwatt, if source can't > > > + offer the power, Capability Mismatch is set. Required for power sink and > > > + power dual role. > > > + > > > + ports: > > > + description: OF graph bindings (specified in bindings/graph.txt) that model > > > + any data bus to the connector unless the bus is between parent node and > > > + the connector. Since a single connector can have multiple data buses every > > > + bus has assigned OF graph port number as described below. > > > > has an assigned? > > > > > + type: object > > > + properties: > > > + port@0: > > > + type: object > > > + description: High Speed (HS), present in all connectors. > > > + > > > + port@1: > > > + type: object > > > + description: Super Speed (SS), present in SS capable connectors. > > > + > > > + port@2: > > > + type: object > > > + description: Sideband Use (SBU), present in USB-C. > > > > Likewise, is it possible to constrain this to only usb-c-connector > > compatible string based bindings? And if so, does it become required for > > that compatible string? > > Not required as alternate modes are not required. (BTW, it should > probably be clarified this is supposed to be the alternate mode > connection of which SBU is part of). I've changed the description text for port@2 to: "Sideband Use (SBU), present in USB-C. This describes the alternate mode connection of which SBU is a part. " > > Rob