public inbox for devicetree@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/3] arm64: dts: qcom: kodiak: Enable 4-lane DP via QMP Combo PHY
@ 2026-04-29  6:40 Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 1/3] arm64: dts: qcom: kodiak: allow mode-switch events to reach the " Mahadevan P
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Mahadevan P @ 2026-04-29  6:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, cros-qcom-dts-watchers
  Cc: linux-arm-msm, devicetree, linux-kernel, Mahadevan P, Mahadevan P

This series enables full 4-lane DisplayPort operation on SC7280/kodiak
platforms by wiring up the QMP Combo PHY correctly and consolidating
the DP endpoint configuration in the SoC dtsi.

Patch 1 adds mode-switch to the QMP Combo PHY node in kodiak.dtsi,
which is required for the PHY to respond to USB-C Alternate Mode
negotiation and switch into 4-lane DP configuration.

Patch 2 moves the data-lanes property from individual board files into
kodiak.dtsi since the PHY-to-controller wiring is fixed in silicon.
It also removes redundant remote-endpoint and orientation-switch
overrides from qcs6490-rb3gen2 and qcs6490-thundercomm-rubikpi3 that
are already covered by the SoC dtsi.

Patch 3 updates data-lanes from <0 1> to <0 1 2 3> in kodiak.dtsi now
that mode-switch is in place, enabling the full 4-lane DP link.

Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>
---
Changes in v2:
- Split single patch into 3 patches.
- Move mode-switch and data-lanes to kodiak.dtsi instead of board
  file (Neil Armstrong, Konrad Dybcio)
- Remove redundant board-level endpoint and orientation-switch
  overrides now covered by kodiak.dtsi
- v1 received a Reviewed-by from Dmitry on the combined change;
  that tag has been dropped pending re-review of the split.

---
Mahadevan P (3):
      arm64: dts: qcom: kodiak: allow mode-switch events to reach the QMP Combo PHY
      arm64: dts: qcom: kodiak: move dp data-lanes to SoC dtsi
      arm64: dts: qcom: kodiak: Set up 4-lane DP

 arch/arm64/boot/dts/qcom/kodiak.dtsi                          |  2 ++
 arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts            |  4 ----
 arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts         |  4 ----
 arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts                  | 11 -----------
 arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts |  1 -
 arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts     |  3 ---
 arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi                |  1 -
 7 files changed, 2 insertions(+), 24 deletions(-)
---
base-commit: 452c3b1ea875276105ac90ba474f72b4cd9b77a2
change-id: 20260420-kodiak_v2-d7a06d50db5e

Best regards,
-- 
Mahadevan P <mahadevan.p@oss.qualcomm.com>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH v2 1/3] arm64: dts: qcom: kodiak: allow mode-switch events to reach the QMP Combo PHY
  2026-04-29  6:40 [PATCH v2 0/3] arm64: dts: qcom: kodiak: Enable 4-lane DP via QMP Combo PHY Mahadevan P
@ 2026-04-29  6:40 ` Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 2/3] arm64: dts: qcom: kodiak: move dp data-lanes to SoC dtsi Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 3/3] arm64: dts: qcom: kodiak: Set up 4-lane DP Mahadevan P
  2 siblings, 0 replies; 4+ messages in thread
From: Mahadevan P @ 2026-04-29  6:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, cros-qcom-dts-watchers
  Cc: linux-arm-msm, devicetree, linux-kernel, Mahadevan P, Mahadevan P

From: Mahadevan P <mahap@qti.qualcomm.com>

Allow mode-switch events to reach the QMP Combo PHY to support
setting the QMP Combo PHY in DP 4Lanes Altmode.

Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/kodiak.dtsi | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
index 988ca5f7c8a0..96ac3656ab5a 100644
--- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
+++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
@@ -4320,6 +4320,7 @@ usb_1_qmpphy: phy@88e8000 {
 			#clock-cells = <1>;
 			#phy-cells = <1>;
 
+			mode-switch;
 			orientation-switch;
 
 			ports {

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2 2/3] arm64: dts: qcom: kodiak: move dp data-lanes to SoC dtsi
  2026-04-29  6:40 [PATCH v2 0/3] arm64: dts: qcom: kodiak: Enable 4-lane DP via QMP Combo PHY Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 1/3] arm64: dts: qcom: kodiak: allow mode-switch events to reach the " Mahadevan P
@ 2026-04-29  6:40 ` Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 3/3] arm64: dts: qcom: kodiak: Set up 4-lane DP Mahadevan P
  2 siblings, 0 replies; 4+ messages in thread
From: Mahadevan P @ 2026-04-29  6:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, cros-qcom-dts-watchers
  Cc: linux-arm-msm, devicetree, linux-kernel, Mahadevan P, Mahadevan P

From: Mahadevan P <mahap@qti.qualcomm.com>

The connection between the QMP Combo PHY and the DisplayPort controller
is fixed in SoC, so move the data-lanes property to kodiak.dtsi and
drop the per-board overrides.

Also remove the redundant remote-endpoint cross-links and
orientation-switch property from qcs6490-rb3gen2 and
qcs6490-thundercomm-rubikpi3, which are already defined in kodiak.dtsi.

Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/kodiak.dtsi                          |  1 +
 arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts            |  4 ----
 arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts         |  4 ----
 arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts                  | 11 -----------
 arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts |  1 -
 arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts     |  3 ---
 arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi                |  1 -
 7 files changed, 1 insertion(+), 24 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
index 96ac3656ab5a..0acc6917d7aa 100644
--- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
+++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
@@ -5704,6 +5704,7 @@ dp_in: endpoint {
 					port@1 {
 						reg = <1>;
 						mdss_dp_out: endpoint {
+							data-lanes = <0 1>;
 							remote-endpoint = <&usb_dp_qmpphy_dp_in>;
 						};
 					};
diff --git a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
index 04cb9230d29f..9fe09968768a 100644
--- a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
+++ b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
@@ -932,10 +932,6 @@ &mdss_dp {
 	status = "okay";
 };
 
-&mdss_dp_out {
-	data-lanes = <0 1>;
-};
-
 &mdss_dsi {
 	vdda-supply = <&vreg_l6b>;
 	status = "okay";
diff --git a/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts b/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
index bf18c4852081..5a019501437a 100644
--- a/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
+++ b/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
@@ -540,10 +540,6 @@ &mdss_dp {
 	status = "okay";
 };
 
-&mdss_dp_out {
-	data-lanes = <0 1>;
-};
-
 &pcie0 {
 	perst-gpios = <&tlmm 87 GPIO_ACTIVE_LOW>;
 	wake-gpios = <&tlmm 89 GPIO_ACTIVE_HIGH>;
diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
index e393ccf1884a..9f76c95af4bc 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
@@ -788,11 +788,6 @@ &mdss_dp {
 	status = "okay";
 };
 
-&mdss_dp_out {
-	data-lanes = <0 1>;
-	remote-endpoint = <&usb_dp_qmpphy_dp_in>;
-};
-
 &mdss_dsi {
 	vdda-supply = <&vreg_l6b_1p2>;
 	status = "okay";
@@ -1391,8 +1386,6 @@ &usb_1_qmpphy {
 	vdda-phy-supply = <&vreg_l6b_1p2>;
 	vdda-pll-supply = <&vreg_l1b_0p912>;
 
-	orientation-switch;
-
 	status = "okay";
 };
 
@@ -1404,10 +1397,6 @@ &usb_dp_qmpphy_usb_ss_in {
 	remote-endpoint = <&usb_1_dwc3_ss>;
 };
 
-&usb_dp_qmpphy_dp_in {
-	remote-endpoint = <&mdss_dp_out>;
-};
-
 &ufs_mem_hc {
 	reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>;
 	vcc-supply = <&vreg_l7b_2p952>;
diff --git a/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts b/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts
index a5ad796cb65d..a120f7c5cfa5 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-minipc-g1iot.dts
@@ -662,7 +662,6 @@ &mdss_dp {
 };
 
 &mdss_dp_out {
-	data-lanes = <0 1>;
 	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
 };
 
diff --git a/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts b/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts
index f47efca42d48..d33f8aa38b13 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-thundercomm-rubikpi3.dts
@@ -788,10 +788,7 @@ &mdss_dp {
 };
 
 &mdss_dp_out {
-	data-lanes = <0 1>;
 	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
-
-	remote-endpoint = <&usb_dp_qmpphy_dp_in>;
 };
 
 &mdss_dsi {
diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi
index 5c5e4f1dd221..504c3615f7ac 100644
--- a/arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine.dtsi
@@ -463,7 +463,6 @@ &mdss_dp {
 };
 
 &mdss_dp_out {
-	data-lanes = <0 1>;
 	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000>;
 };
 

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH v2 3/3] arm64: dts: qcom: kodiak: Set up 4-lane DP
  2026-04-29  6:40 [PATCH v2 0/3] arm64: dts: qcom: kodiak: Enable 4-lane DP via QMP Combo PHY Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 1/3] arm64: dts: qcom: kodiak: allow mode-switch events to reach the " Mahadevan P
  2026-04-29  6:40 ` [PATCH v2 2/3] arm64: dts: qcom: kodiak: move dp data-lanes to SoC dtsi Mahadevan P
@ 2026-04-29  6:40 ` Mahadevan P
  2 siblings, 0 replies; 4+ messages in thread
From: Mahadevan P @ 2026-04-29  6:40 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, cros-qcom-dts-watchers
  Cc: linux-arm-msm, devicetree, linux-kernel, Mahadevan P, Mahadevan P

From: Mahadevan P <mahap@qti.qualcomm.com>

Allow up to 4 lanes for the DisplayPort link from the PHY to the
controller now the mode-switch events can reach the QMP Combo PHY.

Signed-off-by: Mahadevan P <mahadevan.p@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/kodiak.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
index 0acc6917d7aa..204513a6bd89 100644
--- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
+++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
@@ -5704,7 +5704,7 @@ dp_in: endpoint {
 					port@1 {
 						reg = <1>;
 						mdss_dp_out: endpoint {
-							data-lanes = <0 1>;
+							data-lanes = <0 1 2 3>;
 							remote-endpoint = <&usb_dp_qmpphy_dp_in>;
 						};
 					};

-- 
2.34.1


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-04-29  6:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-29  6:40 [PATCH v2 0/3] arm64: dts: qcom: kodiak: Enable 4-lane DP via QMP Combo PHY Mahadevan P
2026-04-29  6:40 ` [PATCH v2 1/3] arm64: dts: qcom: kodiak: allow mode-switch events to reach the " Mahadevan P
2026-04-29  6:40 ` [PATCH v2 2/3] arm64: dts: qcom: kodiak: move dp data-lanes to SoC dtsi Mahadevan P
2026-04-29  6:40 ` [PATCH v2 3/3] arm64: dts: qcom: kodiak: Set up 4-lane DP Mahadevan P

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox