On Mon, Nov 09, 2020 at 05:10:23PM +0100, Amelie DELAUNAY wrote: > > > On 11/9/20 5:02 PM, Rob Herring wrote: > > On Mon, Nov 9, 2020 at 9:54 AM Amelie DELAUNAY <amelie.delaunay@xxxxxx> wrote: > > > > > > On 11/9/20 4:03 PM, Rob Herring wrote: > > > > On Fri, Nov 6, 2020 at 10:58 AM Amelie Delaunay <amelie.delaunay@xxxxxx> wrote: > > > > > > > > > > Power operation mode may depends on hardware design, so, add the optional > > > > > property typec-power-opmode for usb-c connector to select the power > > > > > operation mode capability. > > > > > > > > > > Signed-off-by: Amelie Delaunay <amelie.delaunay@xxxxxx> > > > > > --- > > > > > Hi Bahdri, Rob, > > > > > > > > > > I've added the exlusion with FRS property, but new FRS property name > > > > > should be use here so, be careful. > > > > > > > > > > --- > > > > > .../bindings/connector/usb-connector.yaml | 24 +++++++++++++++++++ > > > > > 1 file changed, 24 insertions(+) > > > > > > > > > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > > > > index 62781518aefc..a84464b3e1f2 100644 > > > > > --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml > > > > > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > > > > > @@ -93,6 +93,24 @@ properties: > > > > > - device > > > > > - dual > > > > > > > > > > + typec-power-opmode: > > > > > + description: Determines the power operation mode that the Type C connector > > > > > + will support and will advertise through CC pins when it has no power > > > > > + delivery support. > > > > > + - "default" corresponds to default USB voltage and current defined by the > > > > > + USB 2.0 and USB 3.2 specifications, 5V 500mA for USB 2.0 ports and > > > > > + 5V 900mA or 1500mA for USB 3.2 ports in single-lane or dual-lane > > > > > + operation respectively. > > > > > + - "1.5A" and "3.0A", 5V 1.5A and 5V 3.0A respectively, as defined in USB > > > > > + Type-C Cable and Connector specification, when Power Delivery is not > > > > > + supported. > > > > > + allOf: > > > > > + - $ref: /schemas/types.yaml#definitions/string > > > > > + enum: > > > > > + - default > > > > > + - 1.5A > > > > > + - 3.0A > > > > > > > > Use the enums here. Unless you want to define it as actual current as > > > > a numerical value. > > > > > > If I understand your point correctly, I think I should remove allOf here > > > and stick with what is done to describe power-role and data-role > > > property. Right ? > > > > No, use the numerical values like FRS: > > > > + "1" refers to default USB power level as described by "Table > > 6-14 Fixed Supply PDO - Sink". > > + "2" refers to 1.5A@5V. > > + "3" refers to 3.0A@5V. > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [1, 2, 3] > > But it changes the type-c class philosophy. There is already an API to > convert string into enum, the same kind is used for data-role and power-role > properties. > Moveover, FRS values doesn't fit with typec_pwr_opmode enum: > enum typec_pwr_opmode { > TYPEC_PWR_MODE_USB, > TYPEC_PWR_MODE_1_5A, > TYPEC_PWR_MODE_3_0A, > TYPEC_PWR_MODE_PD, > }; Okay, then strings it is I guess. Reviewed-by: Rob Herring <robh@xxxxxxxxxx>