Re: [PATCH v5 1/5] dt-bindings: connector: add typec-power-opmode property to usb-connector

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





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,
};

Regards
Amelie



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux