From: Jun Li <jun.li@nxp.com>
To: robh+dt@kernel.org, mark.rutland@arm.com,
gregkh@linuxfoundation.org, heikki.krogerus@linux.intel.com
Cc: a.hajda@samsung.com, jun.li@nxp.com, linux@roeck-us.net,
yueyao@google.com, shufan_lee@richtek.com, o_leveque@orange.fr,
linux-usb@vger.kernel.org, linux-imx@nxp.com
Subject: [v3,01/12] dt-bindings: connector: add properties for typec
Date: Tue, 13 Mar 2018 17:34:27 +0800 [thread overview]
Message-ID: <1520933678-10535-2-git-send-email-jun.li@nxp.com> (raw)
Add bingdings supported by current typec driver, so user can pass
all those properties via dt.
Signed-off-by: Li Jun <jun.li@nxp.com>
---
Change for v3:
- port-type change to be power-type which only for power.
- add data-type for data capability.
- preferred-role change to try-power-role(bool property need 2, and user
may add both at the same time, so still use one property but rename
it to be try-power-role).
- Separate basic typec and power delivery properties.
- keep the max-sink-mv/ma/mw, and op-mw, because the counterpart driver
code is to be back[1], to be discussed if we need those 4 setting for long
term.
[1] https://www.spinics.net/lists/linux-usb/msg166366.html
.../bindings/connector/usb-connector.txt | 48 ++++++++++++++++++++++
1 file changed, 48 insertions(+)
diff --git a/Documentation/devicetree/bindings/connector/usb-connector.txt b/Documentation/devicetree/bindings/connector/usb-connector.txt
index e1463f1..9c7fc83 100644
--- a/Documentation/devicetree/bindings/connector/usb-connector.txt
+++ b/Documentation/devicetree/bindings/connector/usb-connector.txt
@@ -15,6 +15,35 @@ Optional properties:
- type: size of the connector, should be specified in case of USB-A, USB-B
non-fullsize connectors: "mini", "micro".
+Optional properties for usb-c-connector:
+- power-type: should be one of "source", "sink" or "dual"(DRP) if typec
+ connector has power support.
+- try-power-role: preferred power role if "dual"(DRP) can support Try.SNK
+ or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
+- data-type: should be one of "host", "device", "dual"(DRD) if typec
+ connector supports USB data.
+
+Required properties for usb-c-connector with power delivery support:
+- source-pdos: 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.
+- sink-pdos: 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.
+- max-sink-microvolt: The max voltage the sink can support in micro volts,
+ required for power sink and power dual role.
+- max-sink-microamp: The max current the sink can support in micro amps,
+ required for power sink and power dual role.
+- max-sink-microwatt-hours: The max power the sink can support in micro
+ watt-hours, required for power sink and power dual role.
+- op-sink-microwatt-hours: Sink required operating power in micro
+ watt-hours, if source offered power is less then it, Capability Mismatch
+ is set, required for power sink and power dual role.
+
Required nodes:
- any data bus to the connector should be modeled using the OF graph bindings
specified in bindings/graph.txt, unless the bus is between parent node and
@@ -73,3 +102,22 @@ ccic: s2mm005@33 {
};
};
};
+
+3. USB-C connector attached to a typec port controller(ptn5110), which has
+power delivery support and enables drp.
+
+typec: ptn5110@50 {
+ ...
+ usb_con: connector {
+ compatible = "usb-c-connector";
+ label = "USB-C";
+ power-type = "dual";
+ try-power-role = "sink";
+ source-pdos = <0x380190c8>;
+ sink-pdos = <0x380190c8 0x3802d0c8>;
+ max-sink-microvolt = <9000>;
+ max-sink-microamp = <2000>;
+ max-sink-microwatt-hours = <18000>;
+ op-sink-microwatt-hours = <9000>;
+ };
+};
next reply other threads:[~2018-03-13 9:34 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-13 9:34 Jun Li [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-03-14 9:40 [v3,01/12] dt-bindings: connector: add properties for typec Heikki Krogerus
2018-03-14 9:49 Jun Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1520933678-10535-2-git-send-email-jun.li@nxp.com \
--to=jun.li@nxp.com \
--cc=a.hajda@samsung.com \
--cc=gregkh@linuxfoundation.org \
--cc=heikki.krogerus@linux.intel.com \
--cc=linux-imx@nxp.com \
--cc=linux-usb@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=mark.rutland@arm.com \
--cc=o_leveque@orange.fr \
--cc=robh+dt@kernel.org \
--cc=shufan_lee@richtek.com \
--cc=yueyao@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).