From: Akash Kumar <akash.kumar@oss.qualcomm.com>
To: Bjorn Andersson <andersson@kernel.org>,
Konrad Dybcio <konradybcio@kernel.org>,
Abel Vesa <abelvesa@kernel.org>, Rob Herring <robh@kernel.org>,
Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>
Cc: linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org,
devicetree@vger.kernel.org
Subject: [PATCH] arm64: dts: qcom: talos-lyra-evk: Add CYPD6129 Type-C support
Date: Mon, 12 Oct 2026 18:41:13 +0530 [thread overview]
Message-ID: <20261012131518.858396-1-akash.kumar@oss.qualcomm.com> (raw)
Add support for the Cypress CYPD6129 dual Type-C PD controller on the
Talos Lyra EVK.
Enable the controller on I2C5 at address 0x40, configure its GPIO86
interrupt and wakeup support, and describe both USB Type-C connectors.
Connect the connectors to USB1 and USB2 through USB role-switch
remote-endpoint links.
Configure both USB controllers in OTG mode with usb-role-switch support
so that the CYPD6129 controller can manage their USB data roles.
USB1 is routed to the daughter-card board-to-board connector. Add a
fixed USB1 VBUS regulator controlled by PM8150 GPIO10 to provide and
control VBUS for the USB port on the daughter card. Configure the
corresponding PM8150 GPIO pinctrl state and keep the regulator enabled
for the board configuration.
Add the TLMM GPIO64 VBUS boost enable as a GPIO hog. This enables the
5 V boost converter required to generate the VBUS supply for the USB
daughter-card connector. The boost converter output is set to 5 V by
the feedback network consisting of R2403 and R2401:
VOUT = 0.6 * (1 + R2403 / R2401)
= 0.6 * (1 + 75K / 10K)
= 5 V
The changes also add the I2C5 alias, CYPD6129 pinctrl configuration,
wakeup-source properties, USB endpoint connections, and the required
VBUS power-control GPIO descriptions.
Signed-off-by: Akash Kumar <akakum@qti.qualcomm.com>
---
arch/arm64/boot/dts/qcom/talos-lyra-evk.dts | 119 +++++++++++++++++++-
1 file changed, 117 insertions(+), 2 deletions(-)
---
base-commit: b7e62b4d28bc0d2f16f03904616da78e4478aa88
change-id: 20261012-talos-lyra-evk-v2-v2-0-dcc9316ebb59
base commit link: https://lore.kernel.org/all/20261012-talos-lyra-evk-v2-v2-0-dcc9316ebb59@oss.qualcomm.com/
Link to Driver and DT-Binding change: https://lore.kernel.org/all/20261012091658.635441-1-akash.kumar@oss.qualcomm.com/
---
diff --git a/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts b/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
index cfb563658fe0..2cd5a2562f3e 100644
--- a/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
+++ b/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
@@ -11,6 +11,10 @@ / {
compatible = "qcom,talos-lyra-evk", "qcom,qcs615", "qcom,sm6150";
chassis-type = "embedded";
+ aliases {
+ i2c5 = &i2c5;
+ };
+
dp0-connector {
compatible = "dp-connector";
label = "DP0";
@@ -25,6 +29,16 @@ dp0_connector_in: endpoint {
};
};
+ regulator-usb1-vbus {
+ compatible = "regulator-fixed";
+ regulator-name = "USB1_VBUS";
+ gpio = <&pm8150_gpios 10 GPIO_ACTIVE_HIGH>;
+ pinctrl-0 = <&usb1_en>;
+ pinctrl-names = "default";
+ enable-active-high;
+ regulator-always-on;
+ };
+
};
&i2c5 {
@@ -59,6 +73,68 @@ expander3: gpio@3c {
#gpio-cells = <2>;
gpio-controller;
};
+
+ typec@40 {
+ compatible = "cypress,cypd6129";
+ reg = <0x40>;
+ interrupt-parent = <&tlmm>;
+ interrupts = <86 IRQ_TYPE_LEVEL_LOW>;
+ pinctrl-0 = <&usb0_intr_state>;
+ pinctrl-names = "default";
+ wakeup-source;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ status = "okay";
+
+ /*
+ * connector@0 is the USB0 Type-C port with SuperSpeed support,
+ * routed to usb_1. connector@1 is the USB1 Type-C port with
+ * USB 2.0 HS-only support, routed to usb_2.
+ */
+ ccg_typec_con0: connector@0 {
+ compatible = "usb-c-connector";
+ reg = <0>;
+ label = "USB-C";
+ data-role = "dual";
+ power-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ ucsi_ccg_port_0_hs: endpoint {
+ remote-endpoint = <&usb_1_dwc3_hs>;
+ };
+ };
+ };
+ };
+
+ ccg_typec_con1: connector@1 {
+ compatible = "usb-c-connector";
+ reg = <1>;
+ label = "USB-C";
+ data-role = "dual";
+ power-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ ucsi_ccg_port_1_hs: endpoint {
+ remote-endpoint = <&usb_2_dwc3_hs>;
+ };
+ };
+ };
+ };
+ };
};
&mdss {
@@ -74,6 +150,15 @@ &mdss_dp0_out {
remote-endpoint = <&dp0_connector_in>;
};
+&pm8150_gpios {
+ usb1_en: usb1-en-state {
+ pins = "gpio10";
+ function = "normal";
+ output-enable;
+ power-source = <0>;
+ };
+};
+
&pon_pwrkey {
status = "okay";
};
@@ -94,10 +179,33 @@ tpm@0 {
};
};
+&tlmm {
+ usb0_intr_state: usb0-intr-state {
+ pins = "gpio86";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
+ vbus_boost_5v: vbus-boost-5v-hog {
+ gpio-hog;
+ gpios = <64 GPIO_ACTIVE_HIGH>;
+ output-high;
+ line-name = "vbus-boost-5v";
+ };
+};
+
&usb_1 {
- dr_mode = "peripheral";
+ dr_mode = "otg";
+ usb-role-switch;
status = "okay";
+
+ port {
+ usb_1_dwc3_hs: endpoint {
+ remote-endpoint = <&ucsi_ccg_port_0_hs>;
+ };
+ };
};
&usb_1_hsphy {
@@ -109,9 +217,16 @@ &usb_1_hsphy {
};
&usb_2 {
- dr_mode = "host";
+ dr_mode = "otg";
+ usb-role-switch;
status = "okay";
+
+ port {
+ usb_2_dwc3_hs: endpoint {
+ remote-endpoint = <&ucsi_ccg_port_1_hs>;
+ };
+ };
};
&usb_2_hsphy {
--
2.43.0
reply other threads:[~2026-10-12 13:15 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20261012131518.858396-1-akash.kumar@oss.qualcomm.com \
--to=akash.kumar@oss.qualcomm.com \
--cc=abelvesa@kernel.org \
--cc=andersson@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@oss.qualcomm.com \
--cc=konradybcio@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh@kernel.org \
/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
all inboxes | Powered by JetHome®