This commit adds the following properties:
* sink-wait-cap-time-ms
* ps-source-off-time-ms
* cc-debounce-time-ms
This is to enable setting of platform/board specific timer values as
these timers have a range of acceptable values.
Signed-off-by: Amit Sunil Dhamne <amitsd@google.com>
---
.../bindings/connector/usb-connector.yaml | 32 ++++++++++++++++++-
1 file changed, 31 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml
index fb216ce68bb3..5efa4ea3c41c 100644
--- a/Documentation/devicetree/bindings/connector/usb-connector.yaml
+++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml
@@ -253,6 +253,33 @@ properties:
additionalProperties: false
+ sink-wait-cap-time-ms:
+ description: Represents the max time in ms that USB Type-C port (in sink
+ role) should wait for the port partner (source role) to send source caps.
+ SinkWaitCap timer starts when port in sink role attaches to the source.
+ This timer will stop when sink receives PD source cap advertisement before
+ timeout in which case it'll move to capability negotiation stage. A
+ timeout leads to a hard reset message by the port. If no value is set for
+ this property then the driver assumes a default value of PD_T_SINK_WAIT_CAP
+ (defined in include/linux/usb/pd.h).
+
+ ps-source-off-time-ms:
+ description: Represents the max time in ms that a DRP in source role should
+ take to turn off power after the PsSourceOff timer starts. PsSourceOff
+ timer starts when a sink's PHY layer receives EOP of the GoodCRC message
+ (corresponding to an Accept message sent in response to a PR_Swap or a
+ FR_Swap request). This timer stops when last bit of GoodCRC EOP
+ corresponding to the received PS_RDY message is transmitted by the PHY
+ layer. A timeout shall lead to error recovery in the type-c port. If no
+ value is set for this property then the driver assumes a default value of
+ PD_T_PS_SOURCE_OFF (defined in include/linux/usb/pd.h).
+
+ cc-debounce-time-ms:
+ description: Represents the max time in ms that a port shall wait to
+ determine if it's attached to a partner. If no value is set for this
+ property then the driver assumes a default value of PD_T_CC_DEBOUNCE
+ (defined in include/linux/usb/pd.h).
+
dependencies:
sink-vdos-v1: [ sink-vdos ]
sink-vdos: [ sink-vdos-v1 ]
@@ -380,7 +407,7 @@ examples:
};
# USB-C connector attached to a typec port controller(ptn5110), which has
- # power delivery support and enables drp.
+ # power delivery support, explicitly defines time properties and enables drp.
- |
#include <dt-bindings/usb/pd.h>
typec: ptn5110 {
@@ -393,6 +420,9 @@ examples:
sink-pdos = <PDO_FIXED(5000, 2000, PDO_FIXED_USB_COMM)
PDO_VAR(5000, 12000, 2000)>;
op-sink-microwatt = <10000000>;
+ sink-wait-cap-time-ms = <465>;
+ ps-source-off-time-ms = <835>;
+ cc-debounce-time-ms = <101>;
};
};
--
2.46.0.792.g87dc391469-goog
On Thu, Sep 19, 2024 at 12:51:13AM -0700, Amit Sunil Dhamne wrote: > This commit adds the following properties: > * sink-wait-cap-time-ms > * ps-source-off-time-ms > * cc-debounce-time-ms > > This is to enable setting of platform/board specific timer values as > these timers have a range of acceptable values. What's acceptable? Put that in constraints for the properties. > > Signed-off-by: Amit Sunil Dhamne <amitsd@google.com> > --- > .../bindings/connector/usb-connector.yaml | 32 ++++++++++++++++++- > 1 file changed, 31 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml > index fb216ce68bb3..5efa4ea3c41c 100644 > --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml > +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml > @@ -253,6 +253,33 @@ properties: > > additionalProperties: false > > + sink-wait-cap-time-ms: > + description: Represents the max time in ms that USB Type-C port (in sink > + role) should wait for the port partner (source role) to send source caps. > + SinkWaitCap timer starts when port in sink role attaches to the source. > + This timer will stop when sink receives PD source cap advertisement before > + timeout in which case it'll move to capability negotiation stage. A > + timeout leads to a hard reset message by the port. If no value is set for > + this property then the driver assumes a default value of PD_T_SINK_WAIT_CAP > + (defined in include/linux/usb/pd.h). Express default as "default: N". Sorry, defines don't work here.
© 2016 - 2024 Red Hat, Inc.