* [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali
@ 2026-07-07 5:07 Krishna Kurapati
2026-07-07 5:07 ` [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node Krishna Kurapati
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Krishna Kurapati @ 2026-07-07 5:07 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Krishna Kurapati
This series enables PMIC Glink nodes on Kaanapali MTP and QRD platforms
for providing role-switch notifications to usb controller.
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
---
Krishna Kurapati (2):
arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node
arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node
arch/arm64/boot/dts/qcom/kaanapali-mtp.dts | 53 ++++++++++++++++++++++++++++--
arch/arm64/boot/dts/qcom/kaanapali-qrd.dts | 53 ++++++++++++++++++++++++++++--
2 files changed, 102 insertions(+), 4 deletions(-)
---
base-commit: 8e9685d3c41c35dd1b37df70d854137abcb2fbac
change-id: 20260707-kaanapali-pmic-glink-ccefd39ccf7a
Best regards,
--
Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node
2026-07-07 5:07 [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Krishna Kurapati
@ 2026-07-07 5:07 ` Krishna Kurapati
2026-07-07 5:21 ` sashiko-bot
2026-07-07 5:07 ` [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: " Krishna Kurapati
2026-07-13 15:06 ` [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Bjorn Andersson
2 siblings, 1 reply; 6+ messages in thread
From: Krishna Kurapati @ 2026-07-07 5:07 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Krishna Kurapati
Add PMIC Glink node on Kaanapali MTP Platform and add remote-endpoint
linkages to DWC3 controller and QMP phy respectively.
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/kaanapali-mtp.dts | 53 ++++++++++++++++++++++++++++--
1 file changed, 51 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
index f9b5b5718b90..3e9d9fb008eb 100644
--- a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
+++ b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
@@ -163,6 +163,49 @@ platform {
};
};
+ pmic-glink {
+ compatible = "qcom,kaanapali-pmic-glink",
+ "qcom,pmic-glink";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ connector@0 {
+ compatible = "usb-c-connector";
+ reg = <0>;
+
+ power-role = "dual";
+ data-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ pmic_glink_hs_in: endpoint {
+ remote-endpoint = <&usb_dwc3_hs>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ pmic_glink_ss_in: endpoint {
+ remote-endpoint = <&usb_dp_qmpphy_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ pmic_glink_sbu: endpoint {
+ };
+ };
+ };
+ };
+ };
+
wcd939x: audio-codec {
compatible = "qcom,wcd9395-codec", "qcom,wcd9390-codec";
@@ -1328,8 +1371,6 @@ &ufs_mem_phy {
};
&usb {
- dr_mode = "peripheral";
-
status = "okay";
};
@@ -1348,3 +1389,11 @@ &usb_dp_qmpphy {
status = "okay";
};
+
+&usb_dp_qmpphy_out {
+ remote-endpoint = <&pmic_glink_ss_in>;
+};
+
+&usb_dwc3_hs {
+ remote-endpoint = <&pmic_glink_hs_in>;
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node
2026-07-07 5:07 [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Krishna Kurapati
2026-07-07 5:07 ` [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node Krishna Kurapati
@ 2026-07-07 5:07 ` Krishna Kurapati
2026-07-07 5:18 ` sashiko-bot
2026-07-13 15:06 ` [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Bjorn Andersson
2 siblings, 1 reply; 6+ messages in thread
From: Krishna Kurapati @ 2026-07-07 5:07 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, Krishna Kurapati
Add PMIC Glink node on Kaanapali QRD Platform and add remote-endpoint
linkages to DWC3 controller and QMP phy respectively.
Signed-off-by: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/kaanapali-qrd.dts | 53 ++++++++++++++++++++++++++++--
1 file changed, 51 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts b/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
index 55d02219ef4e..a79ae73acf0d 100644
--- a/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
+++ b/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
@@ -80,6 +80,49 @@ key-volume-up {
wakeup-source;
};
};
+
+ pmic-glink {
+ compatible = "qcom,kaanapali-pmic-glink",
+ "qcom,pmic-glink";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ connector@0 {
+ compatible = "usb-c-connector";
+ reg = <0>;
+
+ power-role = "dual";
+ data-role = "dual";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ pmic_glink_hs_in: endpoint {
+ remote-endpoint = <&usb_dwc3_hs>;
+ };
+ };
+
+ port@1 {
+ reg = <1>;
+
+ pmic_glink_ss_in: endpoint {
+ remote-endpoint = <&usb_dp_qmpphy_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ pmic_glink_sbu: endpoint {
+ };
+ };
+ };
+ };
+ };
};
&apps_rsc {
@@ -823,8 +866,6 @@ &ufs_mem_phy {
};
&usb {
- dr_mode = "peripheral";
-
status = "okay";
};
@@ -843,3 +884,11 @@ &usb_dp_qmpphy {
status = "okay";
};
+
+&usb_dp_qmpphy_out {
+ remote-endpoint = <&pmic_glink_ss_in>;
+};
+
+&usb_dwc3_hs {
+ remote-endpoint = <&pmic_glink_hs_in>;
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node
2026-07-07 5:07 ` [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: " Krishna Kurapati
@ 2026-07-07 5:18 ` sashiko-bot
0 siblings, 0 replies; 6+ messages in thread
From: sashiko-bot @ 2026-07-07 5:18 UTC (permalink / raw)
To: Krishna Kurapati; +Cc: robh, conor+dt, devicetree
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] The `&usb` node lacks the `usb-role-switch` property, causing the DWC3 controller to silently fall back to peripheral mode and breaking Type-C dual-role functionality.
--
--- Patch [2]: [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node ---
commit 904c19a1a664815102c7af84e0fb9891b1a979d7
Author: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node
Add PMIC Glink node on Kaanapali QRD Platform and add remote-endpoint
linkages to DWC3 controller and QMP phy respectively.
> diff --git a/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts b/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
> index 55d02219ef4e9..a79ae73acf0de 100644
> --- a/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
> +++ b/arch/arm64/boot/dts/qcom/kaanapali-qrd.dts
[ ... ]
> @@ -823,8 +866,6 @@ &ufs_mem_phy {
> };
>
> &usb {
> - dr_mode = "peripheral";
> -
> status = "okay";
> };
[Severity: Medium]
Does removing dr_mode = "peripheral" without adding the usb-role-switch
property cause the DWC3 controller to silently fall back to peripheral mode?
During boot, when dwc3_get_dr_mode() initializes the DWC3 core driver,
omitting both dr_mode and the usb-role-switch property causes the driver
to fall back to USB_DR_MODE_PERIPHERAL and skip registering a USB role switch
device.
Because of this, does the PMIC GLINK Type-C driver fail to acquire the role
switch handle via the endpoint graph, breaking the intended Type-C dual-role
functionality?
Should the usb-role-switch property be added to this node to allow the
registration of the USB role switch?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260707-kaanapali-pmic-glink-v1-0-3f7d476672d9@oss.qualcomm.com?part=2
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node
2026-07-07 5:07 ` [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node Krishna Kurapati
@ 2026-07-07 5:21 ` sashiko-bot
0 siblings, 0 replies; 6+ messages in thread
From: sashiko-bot @ 2026-07-07 5:21 UTC (permalink / raw)
To: Krishna Kurapati; +Cc: robh, devicetree, conor+dt
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
New issues:
- [High] The `usb-role-switch` property is omitted from the `&usb` DWC3 node, which breaks Type-C role switching integration with PMIC Glink.
Pre-existing issues:
- [Medium] Missing `mode-switch` property in the `&usb_dp_qmpphy` node breaks DisplayPort Alt Mode.
--
--- Patch [1]: [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node ---
commit 6286754ebf3e4661a8a09cc98412dbc73a006aac
Author: Krishna Kurapati <krishna.kurapati@oss.qualcomm.com>
arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node
Add PMIC Glink node on Kaanapali MTP Platform and add remote-endpoint
linkages to DWC3 controller and QMP phy respectively.
> diff --git a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
> index f9b5b5718b904..3e9d9fb008ebd 100644
> --- a/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
> +++ b/arch/arm64/boot/dts/qcom/kaanapali-mtp.dts
[ ... ]
> @@ -1328,8 +1371,6 @@ &ufs_mem_phy {
> };
>
> &usb {
> - dr_mode = "peripheral";
> -
> status = "okay";
> };
[Severity: High]
The patch removes peripheral mode to enable dual-role, but without the
usb-role-switch; property, will Type-C role switching function correctly?
When a Type-C cable is inserted, the PMIC GLINK UCSI driver uses
fwnode_connection_find_match() to find the remote role switch using the
"usb-role-switch" property.
Simultaneously, the DWC3 core driver (dwc3_drd_init()) requires this
property to register the role switch via usb_role_switch_register().
Without it, does DWC3 fall back to legacy OTG block logic, causing UCSI
to fail to find the switch?
[ ... ]
> @@ -1348,3 +1389,11 @@ &usb_dp_qmpphy {
>
> status = "okay";
> };
> +
> +&usb_dp_qmpphy_out {
> + remote-endpoint = <&pmic_glink_ss_in>;
> +};
[Severity: Medium]
This isn't a bug introduced by this patch, but does the base &usb_dp_qmpphy
node in kaanapali.dtsi lack the mode-switch; property required for
DisplayPort Alt Mode?
The pmic_glink_altmode driver attempts to acquire the Type-C mux using
fwnode_typec_mux_get(), which traverses the OF-graph and strictly searches
the remote endpoint's parent for the "mode-switch" property:
usb_dp_qmpphy: phy@88e8000 {
compatible = "qcom,kaanapali-qmp-usb3-dp-phy",
"qcom,sm8750-qmp-usb3-dp-phy";
...
orientation-switch;
status = "disabled";
Since the usb_dp_qmpphy node lacks this property, the lookup returns NULL.
Consequently, typec_mux_set() does nothing, and the QMP PHY is never
instructed to configure its pins for DP out. Should this be added so Alt
Mode works properly with these new endpoints?
> +
> +&usb_dwc3_hs {
> + remote-endpoint = <&pmic_glink_hs_in>;
> +};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260707-kaanapali-pmic-glink-v1-0-3f7d476672d9@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali
2026-07-07 5:07 [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Krishna Kurapati
2026-07-07 5:07 ` [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node Krishna Kurapati
2026-07-07 5:07 ` [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: " Krishna Kurapati
@ 2026-07-13 15:06 ` Bjorn Andersson
2 siblings, 0 replies; 6+ messages in thread
From: Bjorn Andersson @ 2026-07-13 15:06 UTC (permalink / raw)
To: Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Krishna Kurapati
Cc: linux-arm-msm, devicetree, linux-kernel
On Tue, 07 Jul 2026 10:37:16 +0530, Krishna Kurapati wrote:
> This series enables PMIC Glink nodes on Kaanapali MTP and QRD platforms
> for providing role-switch notifications to usb controller.
>
>
Applied, thanks!
[1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node
commit: d0ada7b78e74becf8e7fe6fae8392f1731b52896
[2/2] arm64: dts: qcom: kaanapali-qrd: Add PMIC Glink node
commit: 987ba6986860a07a45e8d79436866b4aa92be8ec
Best regards,
--
Bjorn Andersson <andersson@kernel.org>
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-07-13 15:06 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-07 5:07 [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Krishna Kurapati
2026-07-07 5:07 ` [PATCH 1/2] arm64: dts: qcom: kaanapali-mtp: Add PMIC Glink node Krishna Kurapati
2026-07-07 5:21 ` sashiko-bot
2026-07-07 5:07 ` [PATCH 2/2] arm64: dts: qcom: kaanapali-qrd: " Krishna Kurapati
2026-07-07 5:18 ` sashiko-bot
2026-07-13 15:06 ` [PATCH 0/2] Enable PMIC Glink nodes on Kaanapali Bjorn Andersson
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.