From: Badhri Jagan Sridharan <badhri@google.com> To: Guenter Roeck <linux@roeck-us.net>, Heikki Krogerus <heikki.krogerus@linux.intel.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Rob Herring <robh+dt@kernel.org>, Lee Jones <lee.jones@linaro.org>, Mark Brown <broonie@kernel.org>, Maxime Ripard <mripard@kernel.org>, Alexandre Belloni <alexandre.belloni@bootlin.com>, Thierry Reding <treding@nvidia.com>, Prashant Malani <pmalani@chromium.org>, Badhri Jagan Sridharan <badhri@google.com> Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Subject: [PATCH v9 05/15] dt-bindings: connector: Add property to set initial current cap for FRS Date: Mon, 28 Sep 2020 19:39:54 -0700 Message-ID: <20200929024004.244992-6-badhri@google.com> (raw) In-Reply-To: <20200929024004.244992-1-badhri@google.com> This change adds frs-typec-current which allows setting the initial current capability of the new source when vSafe5V is applied during PD3.0 sink Fast Role Swap. Signed-off-by: Badhri Jagan Sridharan <badhri@google.com> --- Changes since v1: - Changing patch version to v6 to fix version number confusion. Changes since v6: - Removed the redundant usb-connector.txt that I created by mistake. - Moved to yaml. Changes since v7: - Rebase Changes since v8: - Redefine new-source-frs-typec-current as string enums to address Rob Herring's comment. --- .../bindings/connector/usb-connector.yaml | 26 +++++++++++++++++++ include/dt-bindings/usb/pd.h | 10 +++++++ 2 files changed, 36 insertions(+) diff --git a/Documentation/devicetree/bindings/connector/usb-connector.yaml b/Documentation/devicetree/bindings/connector/usb-connector.yaml index 9bd52e63c935..0b8cd08a8678 100644 --- a/Documentation/devicetree/bindings/connector/usb-connector.yaml +++ b/Documentation/devicetree/bindings/connector/usb-connector.yaml @@ -142,6 +142,32 @@ properties: required: - port@0 + new-source-frs-typec-current: + description: Initial current capability of the new source when vSafe5V + is applied during PD3.0 Fast Role Swap. "Table 6-14 Fixed Supply PDO - Sink" + of "USB Power Delivery Specification Revision 3.0, Version 1.2" provides the + different power levels and "6.4.1.3.1.6 Fast Role Swap USB Type-C Current" + provides a detailed description of the field. The sink PDO from current source + reflects the current source's(i.e. transmitter of the FRS signal) power + requirement during fr swap. The current sink (i.e. receiver of the FRS signal), + a.k.a new source, should check if it will be able to satisfy the current source's, + new sink's, requirement during frswap before enabling the frs signal reception. + This property refers to maximum current capability that the current sink can + satisfy. During FRS, VBUS voltage is at 5V, as the partners are in implicit + contract, hence, the power level is only a function of the current capability. + "not-supported" implies sink to source fast role swap not supported. + "default" refers to default USB power level as described by + "Table 6-14 Fixed Supply PDO - Sink". + "1.5A" refers to 1.5A@5V. + "3.0A" refers to 3.0A@5V. + + $ref: /schemas/types.yaml#/definitions/string + enum: + - not-supported + - default + - 1.5A + - 3.0A + required: - compatible diff --git a/include/dt-bindings/usb/pd.h b/include/dt-bindings/usb/pd.h index 985f2bbd4d24..db1ad4532197 100644 --- a/include/dt-bindings/usb/pd.h +++ b/include/dt-bindings/usb/pd.h @@ -35,6 +35,16 @@ #define VSAFE5V 5000 /* mv units */ +/* + * Based on "Table 6-14 Fixed Supply PDO - Sink" of "USB Power Delivery Specification Revision 3.0, + * Version 1.2" + * Initial current capability of the new source when vSafe5V is applied. + */ +#define FRS_NOT_SUPPORTED 0 +#define FRS_DEFAULT_POWER 1 +#define FRS_5V_1P5A 2 +#define FRS_5V_3A 3 + #define PDO_BATT_MAX_VOLT_SHIFT 20 /* 50mV units */ #define PDO_BATT_MIN_VOLT_SHIFT 10 /* 50mV units */ #define PDO_BATT_MAX_PWR_SHIFT 0 /* 250mW units */ -- 2.28.0.709.gb0816b6eb0-goog
next prev parent reply index Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-29 2:39 [PATCH v9 00/15] TCPM support for FRS and AutoDischarge Disconnect Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 01/15] usb: typec: tcpci: Add a getter method to retrieve tcpm_port reference Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 02/15] usb: typec: tcpci: Add set_vbus tcpci callback Badhri Jagan Sridharan 2020-10-02 13:39 ` Greg Kroah-Hartman 2020-10-02 13:40 ` Greg Kroah-Hartman 2020-10-02 16:08 ` Badhri Jagan Sridharan 2020-10-03 15:57 ` Greg Kroah-Hartman 2020-10-08 6:32 ` Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 03/15] dt-bindings: usb: Maxim type-c controller device tree binding document Badhri Jagan Sridharan 2020-10-05 14:46 ` Rob Herring 2020-10-08 0:42 ` Badhri Jagan Sridharan 2020-10-13 13:43 ` Rob Herring 2020-10-13 13:50 ` Rob Herring 2020-10-20 6:16 ` Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 04/15] usb: typec: tcpci_maxim: Chip level TCPC driver Badhri Jagan Sridharan 2020-09-29 2:39 ` Badhri Jagan Sridharan [this message] 2020-10-06 18:29 ` [PATCH v9 05/15] dt-bindings: connector: Add property to set initial current cap for FRS Rob Herring 2020-10-08 1:06 ` Badhri Jagan Sridharan 2020-10-13 14:15 ` Rob Herring 2020-10-20 9:43 ` Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 06/15] usb: typec: tcpm: Add support for Sink Fast Role SWAP(FRS) Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 07/15] usb: typec: tcpci: Implement callbacks for FRS Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 08/15] usb: typec: tcpci_maxim: Add support for Sink FRS Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 09/15] usb: typec: tcpm: frs sourcing vbus callback Badhri Jagan Sridharan 2020-09-29 2:39 ` [PATCH v9 10/15] usb: typec: tcpci: " Badhri Jagan Sridharan 2020-09-29 2:40 ` [PATCH v9 11/15] usb: typec: tcpci_max77759: Fix vbus stuck on upon diconnecting sink Badhri Jagan Sridharan 2020-09-29 2:40 ` [PATCH v9 12/15] usb: typec: tcpm: Parse frs type-c current from device tree Badhri Jagan Sridharan 2020-09-29 2:40 ` [PATCH v9 13/15] usb: typec: tcpm: Implement enabling Auto Discharge disconnect support Badhri Jagan Sridharan 2020-09-29 2:40 ` [PATCH v9 14/15] usb: typec: tcpci: Implement Auto discharge disconnect callbacks Badhri Jagan Sridharan 2020-09-29 2:40 ` [PATCH v9 15/15] usb: typec: tcpci_maxim: Enable auto discharge disconnect Badhri Jagan Sridharan
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=20200929024004.244992-6-badhri@google.com \ --to=badhri@google.com \ --cc=alexandre.belloni@bootlin.com \ --cc=broonie@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=gregkh@linuxfoundation.org \ --cc=heikki.krogerus@linux.intel.com \ --cc=lee.jones@linaro.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-usb@vger.kernel.org \ --cc=linux@roeck-us.net \ --cc=mripard@kernel.org \ --cc=pmalani@chromium.org \ --cc=robh+dt@kernel.org \ --cc=treding@nvidia.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
Linux-USB Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/linux-usb/0 linux-usb/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 linux-usb linux-usb/ https://lore.kernel.org/linux-usb \ linux-usb@vger.kernel.org public-inbox-index linux-usb Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-usb AGPL code for this site: git clone https://public-inbox.org/public-inbox.git