Messages in this thread | | | Subject | Re: [PATCH v5 1/5] dt-bindings: connector: add typec-power-opmode property to usb-connector | From | Amelie DELAUNAY <> | Date | Mon, 9 Nov 2020 17:10:23 +0100 |
| |
On 11/9/20 5:02 PM, Rob Herring wrote: > On Mon, Nov 9, 2020 at 9:54 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: >> >> On 11/9/20 4:03 PM, Rob Herring wrote: >>> On Fri, Nov 6, 2020 at 10:58 AM Amelie Delaunay <amelie.delaunay@st.com> 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@st.com> >>>> --- >>>> 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, };
Regards Amelie
| |