* [PATCH v2 0/3] arm: qcom: display/msm: Require DSI graph endpoint
@ 2026-11-11 17:44 Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
` (2 more replies)
0 siblings, 3 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 17:44 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong
Cc: linux-arm-msm, devicetree, linux-kernel, Krzysztof Kozlowski,
dri-devel, freedreno, Krzysztof Kozlowski
The DTS can be applied as is. Then the bindings can go independently.
Changes in v2:
- Patch #1: Update also apq8016
- Link to v1: https://patch.msgid.link/20261110-display-msm-of-graph-v1-0-0f3106f817b4@oss.qualcomm.com
Qualcomm DSI display drivers won't work without proper endpoint, so be
explicit about this in the bindings, so we can validate the DTS
properly.
Best regards,
Krzysztof
---
Krzysztof Kozlowski (3):
arm64: dts: qcom: msm8916: Disable disconnected DSI
arm64: dts: qcom: msm8996-oneplus: Disable disconnected DSI
dt-bindings: display/msm: Require DSI graph endpoint
.../devicetree/bindings/display/msm/dsi-controller-main.yaml | 6 ++++++
.../devicetree/bindings/display/msm/qcom,milos-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml | 4 +++-
.../devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml | 8 ++++++--
.../devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml | 1 +
arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 4 ++++
arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts | 4 ++++
arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916.dtsi | 4 ++++
arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi | 2 --
33 files changed, 84 insertions(+), 5 deletions(-)
---
base-commit: e4924298116a18e6fb5b86e8a3b7bcd3b4ea0f46
change-id: 20261110-display-msm-of-graph-a081a5c614b4
Best regards,
--
Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI
2026-11-11 17:44 [PATCH v2 0/3] arm: qcom: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
@ 2026-11-11 17:45 ` Krzysztof Kozlowski
2026-11-11 18:13 ` Dmitry Baryshkov
2026-11-11 18:48 ` sashiko-bot
2026-11-11 17:45 ` [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: " Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2 siblings, 2 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 17:45 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong
Cc: linux-arm-msm, devicetree, linux-kernel, Krzysztof Kozlowski,
dri-devel, freedreno, Krzysztof Kozlowski
MDSS DSI and DSI PHY is useless, when nothing is attached (no panel
description in DTS), thus should be disabled in DTS. Linux MSM DRM
drivers will also fail the probe.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 4 ++++
arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts | 4 ++++
arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts | 6 ++++++
arch/arm64/boot/dts/qcom/msm8916.dtsi | 4 ++++
7 files changed, 36 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
index ba6ccf0db16a..6c94489f5f70 100644
--- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
+++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
@@ -262,6 +262,10 @@ &mdss_dsi0_out {
remote-endpoint = <&adv7533_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&mpss {
status = "okay";
diff --git a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
index ce75046ffdac..370ad8b01a1a 100644
--- a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
+++ b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
@@ -218,6 +218,10 @@ &mdss_dsi0_out {
remote-endpoint = <&adv7533_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&pm8916_codec {
qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts
index 906d31f1ea21..d3adbc7406b7 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts
@@ -87,6 +87,8 @@ &clk_pwm {
};
&mdss_dsi0 {
+ status = "okay";
+
panel@0 {
reg = <0>;
@@ -109,6 +111,10 @@ &mdss_dsi0_out {
remote-endpoint = <&panel_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&touchkey {
vcc-supply = <®_touch_key>;
vdd-supply = <®_key_led>;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
index 5b34529b816c..fe333ed489b5 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts
@@ -133,6 +133,8 @@ &mdss_dsi0 {
pinctrl-1 = <&mdss_sleep>;
pinctrl-names = "default", "sleep";
+ status = "okay";
+
panel@0 {
compatible = "samsung,ltl101at01", "samsung,s6d7aa0";
reg = <0>;
@@ -154,6 +156,10 @@ &mdss_dsi0_out {
remote-endpoint = <&panel_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&sound {
model = "samsung-gt510";
pinctrl-0 = <&cdc_pdm_default &sec_mi2s_default>;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts
index 3d6d9dd3b8a8..85d1cae19a66 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts
@@ -98,6 +98,8 @@ &mdss_dsi0 {
pinctrl-1 = <&mdss_sleep>;
pinctrl-names = "default", "sleep";
+ status = "okay";
+
panel@0 {
compatible = "samsung,lsl080al03", "samsung,s6d7aa0";
reg = <0>;
@@ -119,6 +121,10 @@ &mdss_dsi0_out {
remote-endpoint = <&panel_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&sound {
model = "samsung-a2015";
pinctrl-0 = <&cdc_pdm_default &sec_mi2s_default &secondary_mic_default>;
diff --git a/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts b/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts
index 71b5c98458ff..65de798201eb 100644
--- a/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts
+++ b/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts
@@ -337,6 +337,8 @@ &mdss_dsi0 {
pinctrl-0 = <&mdss_default>;
pinctrl-1 = <&mdss_sleep>;
+ status = "okay";
+
panel@0 {
compatible = "samsung,s6e88a0-ams427ap24";
reg = <0>;
@@ -359,6 +361,10 @@ &mdss_dsi0_out {
remote-endpoint = <&panel_in>;
};
+&mdss_dsi0_phy {
+ status = "okay";
+};
+
&mpss_mem {
reg = <0x0 0x86800000 0x0 0x5a00000>;
};
diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index e39743e22043..7d351cd15f90 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -1634,6 +1634,8 @@ mdss_dsi0: dsi@1a98000 {
#address-cells = <1>;
#size-cells = <0>;
+ status = "disabled";
+
ports {
#address-cells = <1>;
#size-cells = <0>;
@@ -1668,6 +1670,8 @@ mdss_dsi0_phy: phy@1a98300 {
clocks = <&gcc GCC_MDSS_AHB_CLK>,
<&xo_board>;
clock-names = "iface", "ref";
+
+ status = "disabled";
};
};
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: Disable disconnected DSI
2026-11-11 17:44 [PATCH v2 0/3] arm: qcom: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
@ 2026-11-11 17:45 ` Krzysztof Kozlowski
2026-11-11 18:14 ` Dmitry Baryshkov
2026-11-11 18:16 ` Dmitry Baryshkov
2026-11-11 17:45 ` [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2 siblings, 2 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 17:45 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong
Cc: linux-arm-msm, devicetree, linux-kernel, Krzysztof Kozlowski,
dri-devel, freedreno, Krzysztof Kozlowski
MDSS DSI and DSI PHY are useless, when nothing is attached (no panel
description in DTS), thus should be disabled in DTS. Linux MSM DRM
drivers will also fail the probe.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi | 2 --
1 file changed, 2 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
index 7a3f8afae22d..9c2cef11e7a9 100644
--- a/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
@@ -189,7 +189,6 @@ &mdss {
&mdss_dsi0 {
vdda-supply = <&vreg_l2a_1p25>;
vcca-supply = <&vreg_l22a_3p0>;
- status = "okay";
};
&mdss_dsi0_out {
@@ -198,7 +197,6 @@ &mdss_dsi0_out {
&mdss_dsi0_phy {
vcca-supply = <&vreg_l28a_0p925>;
- status = "okay";
};
&mmcc {
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint
2026-11-11 17:44 [PATCH v2 0/3] arm: qcom: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: " Krzysztof Kozlowski
@ 2026-11-11 17:45 ` Krzysztof Kozlowski
2026-11-11 18:16 ` Dmitry Baryshkov
2 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 17:45 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong
Cc: linux-arm-msm, devicetree, linux-kernel, Krzysztof Kozlowski,
dri-devel, freedreno, Krzysztof Kozlowski
Technically, DSI controllers do not need OF graphs with endpoint to the
panel and could rely directly on their child node (when panel is the
child of DSI).
However Linux Qualcomm MSM DRM DSI driver never implemented such
approach and it requires a valid graph endpoint pointing to the panel.
If it is missing, the drivers will silently accept such DTS in
dsi_host_parse_dt(), but later fail on dsi_host_attach() because number
of lanes is not initialized. The number of lanes is initialized to safe
default only when there is a valid endpoint which is missing data-lanes.
Extend the bindings to validate existing DTS to match expected ABI.
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
---
Please apply after Qualcomm Soc takes DTS changes to next.
---
.../devicetree/bindings/display/msm/dsi-controller-main.yaml | 6 ++++++
.../devicetree/bindings/display/msm/qcom,milos-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml | 4 +++-
.../devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml | 8 ++++++--
.../devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml | 1 +
.../devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml | 2 ++
.../devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml | 1 +
25 files changed, 48 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
index e4fd1cbbd4e0..e9446a333fa1 100644
--- a/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
+++ b/Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml
@@ -201,6 +201,12 @@ properties:
- timer3
- timer4
+ required:
+ - remote-endpoint
+
+ required:
+ - endpoint
+
required:
- port@0
- port@1
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,milos-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,milos-mdss.yaml
index 7010ffa0ae35..8b9f54f189e8 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,milos-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,milos-mdss.yaml
@@ -241,6 +241,7 @@ examples:
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml
index 2d9edab5a30d..dafe5c5d4b75 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,msm8998-mdss.yaml
@@ -181,6 +181,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -251,6 +252,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml
index 49a7b5c4c678..60ba466382b8 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,qcm2290-mdss.yaml
@@ -194,6 +194,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml
index 287cce4dbddc..c00c4d5dd918 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,qcs8300-mdss.yaml
@@ -235,7 +235,9 @@ examples:
port@1 {
reg = <1>;
- mdss0_dsi0_out: endpoint { };
+ mdss0_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
+ };
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml
index b68e7efbc189..48dd897d5d5b 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sa8775p-mdss.yaml
@@ -258,7 +258,9 @@ examples:
port@1 {
reg = <1>;
- mdss0_dsi0_out: endpoint { };
+ mdss0_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
+ };
};
};
@@ -335,7 +337,9 @@ examples:
port@1 {
reg = <1>;
- mdss0_dsi1_out: endpoint { };
+ mdss0_dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
+ };
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml
index fb3d24bbac7d..3e4a25a217cc 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sar2130p-mdss.yaml
@@ -326,6 +326,7 @@ examples:
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -418,6 +419,7 @@ examples:
reg = <1>;
mdss_dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml
index 7a0555b15ddf..16ebd5d701d0 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sc7180-mdss.yaml
@@ -206,6 +206,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml
index b643d3adf669..9f84ba248a83 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sc7280-mdss.yaml
@@ -230,6 +230,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml
index 00e82bdbbcc7..7e653552fdfe 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sc8180x-mdss.yaml
@@ -242,6 +242,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -333,6 +334,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml
index 7dc269322b8e..4430baecfd99 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sdm670-mdss.yaml
@@ -196,6 +196,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -266,6 +267,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml
index 6e8b69e5ec62..1330a5f80e3b 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sdm845-mdss.yaml
@@ -192,6 +192,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -262,6 +263,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml
index 309de1953c88..2993fc1eafe6 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm6115-mdss.yaml
@@ -179,6 +179,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml
index 3deb9dc81c9c..a942a479a440 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm6125-mdss.yaml
@@ -194,6 +194,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml
index 46e9335f849f..62920c8fba0c 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm6150-mdss.yaml
@@ -221,6 +221,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml
index bba666bdffe5..faafc451633c 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm6350-mdss.yaml
@@ -201,6 +201,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml
index e22b4c433fd0..46a8539308c8 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm6375-mdss.yaml
@@ -193,6 +193,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml
index 9b0621d88d50..5ae181bc4fbf 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm7150-mdss.yaml
@@ -263,6 +263,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -355,6 +356,7 @@ examples:
port@1 {
reg = <1>;
mdss_dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml
index e6dc5494baee..7edf4ee9e52d 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8150-mdss.yaml
@@ -231,6 +231,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -321,6 +322,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml
index 51368cda7b2f..bce5ab069324 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8250-mdss.yaml
@@ -234,6 +234,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -324,6 +325,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml
index f5acf528d0e4..b9087a06198c 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8350-mdss.yaml
@@ -236,6 +236,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml
index 747a2e9665f4..800144f1c7e2 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8450-mdss.yaml
@@ -243,6 +243,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -338,6 +339,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml
index 59192c59ddb9..977c2fb1595c 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8550-mdss.yaml
@@ -239,6 +239,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -328,6 +329,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml
index 0f7f79527748..05cc2f9753ce 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8650-mdss.yaml
@@ -227,6 +227,7 @@ examples:
port@1 {
reg = <1>;
dsi0_out: endpoint {
+ remote-endpoint = <&panel0_in>;
};
};
};
@@ -316,6 +317,7 @@ examples:
port@1 {
reg = <1>;
dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
diff --git a/Documentation/devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml b/Documentation/devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml
index 46dc0d28da29..0a8010f4d9d5 100644
--- a/Documentation/devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml
+++ b/Documentation/devicetree/bindings/display/msm/qcom,sm8750-mdss.yaml
@@ -364,6 +364,7 @@ examples:
reg = <1>;
mdss_dsi1_out: endpoint {
+ remote-endpoint = <&panel1_in>;
};
};
};
--
2.53.0
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
@ 2026-11-11 18:13 ` Dmitry Baryshkov
2026-11-11 18:48 ` sashiko-bot
1 sibling, 0 replies; 11+ messages in thread
From: Dmitry Baryshkov @ 2026-11-11 18:13 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong, linux-arm-msm,
devicetree, linux-kernel, Krzysztof Kozlowski, dri-devel,
freedreno
On Wed, Nov 11, 2026 at 06:45:00PM +0100, Krzysztof Kozlowski wrote:
> MDSS DSI and DSI PHY is useless, when nothing is attached (no panel
> description in DTS), thus should be disabled in DTS. Linux MSM DRM
> drivers will also fail the probe.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
> arch/arm64/boot/dts/qcom/apq8016-sbc.dts | 4 ++++
> arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts | 4 ++++
> arch/arm64/boot/dts/qcom/msm8916-samsung-a3u-eur.dts | 6 ++++++
> arch/arm64/boot/dts/qcom/msm8916-samsung-gt510.dts | 6 ++++++
> arch/arm64/boot/dts/qcom/msm8916-samsung-gt58.dts | 6 ++++++
> arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts | 6 ++++++
> arch/arm64/boot/dts/qcom/msm8916.dtsi | 4 ++++
> 7 files changed, 36 insertions(+)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: Disable disconnected DSI
2026-11-11 17:45 ` [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: " Krzysztof Kozlowski
@ 2026-11-11 18:14 ` Dmitry Baryshkov
2026-11-11 18:16 ` Dmitry Baryshkov
1 sibling, 0 replies; 11+ messages in thread
From: Dmitry Baryshkov @ 2026-11-11 18:14 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong, linux-arm-msm,
devicetree, linux-kernel, Krzysztof Kozlowski, dri-devel,
freedreno
On Wed, Nov 11, 2026 at 06:45:01PM +0100, Krzysztof Kozlowski wrote:
> MDSS DSI and DSI PHY are useless, when nothing is attached (no panel
> description in DTS), thus should be disabled in DTS. Linux MSM DRM
> drivers will also fail the probe.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
> arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi | 2 --
> 1 file changed, 2 deletions(-)
>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: Disable disconnected DSI
2026-11-11 17:45 ` [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: " Krzysztof Kozlowski
2026-11-11 18:14 ` Dmitry Baryshkov
@ 2026-11-11 18:16 ` Dmitry Baryshkov
2026-11-11 18:46 ` Krzysztof Kozlowski
1 sibling, 1 reply; 11+ messages in thread
From: Dmitry Baryshkov @ 2026-11-11 18:16 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong, linux-arm-msm,
devicetree, linux-kernel, Krzysztof Kozlowski, dri-devel,
freedreno
On Wed, Nov 11, 2026 at 06:45:01PM +0100, Krzysztof Kozlowski wrote:
> MDSS DSI and DSI PHY are useless, when nothing is attached (no panel
> description in DTS), thus should be disabled in DTS. Linux MSM DRM
> drivers will also fail the probe.
I don't think they will fail the probe. Nothing will be registered, no
bridge will be attached to the DSI host, which means that the component
device will not be constructed / bound.
>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
> ---
> arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi b/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
> index 7a3f8afae22d..9c2cef11e7a9 100644
> --- a/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
> +++ b/arch/arm64/boot/dts/qcom/msm8996-oneplus-common.dtsi
> @@ -189,7 +189,6 @@ &mdss {
> &mdss_dsi0 {
> vdda-supply = <&vreg_l2a_1p25>;
> vcca-supply = <&vreg_l22a_3p0>;
> - status = "okay";
> };
>
> &mdss_dsi0_out {
> @@ -198,7 +197,6 @@ &mdss_dsi0_out {
>
> &mdss_dsi0_phy {
> vcca-supply = <&vreg_l28a_0p925>;
> - status = "okay";
> };
>
> &mmcc {
>
> --
> 2.53.0
>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint
2026-11-11 17:45 ` [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
@ 2026-11-11 18:16 ` Dmitry Baryshkov
0 siblings, 0 replies; 11+ messages in thread
From: Dmitry Baryshkov @ 2026-11-11 18:16 UTC (permalink / raw)
To: Krzysztof Kozlowski
Cc: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong, linux-arm-msm,
devicetree, linux-kernel, Krzysztof Kozlowski, dri-devel,
freedreno
On Wed, Nov 11, 2026 at 06:45:02PM +0100, Krzysztof Kozlowski wrote:
> Technically, DSI controllers do not need OF graphs with endpoint to the
> panel and could rely directly on their child node (when panel is the
> child of DSI).
>
> However Linux Qualcomm MSM DRM DSI driver never implemented such
> approach and it requires a valid graph endpoint pointing to the panel.
> If it is missing, the drivers will silently accept such DTS in
> dsi_host_parse_dt(), but later fail on dsi_host_attach() because number
> of lanes is not initialized. The number of lanes is initialized to safe
> default only when there is a valid endpoint which is missing data-lanes.
>
> Extend the bindings to validate existing DTS to match expected ABI.
>
> Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
>
> ---
>
> Please apply after Qualcomm Soc takes DTS changes to next.
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: Disable disconnected DSI
2026-11-11 18:16 ` Dmitry Baryshkov
@ 2026-11-11 18:46 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 18:46 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Bjorn Andersson, Konrad Dybcio, Abel Vesa, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Rob Clark, Dmitry Baryshkov,
Abhinav Kumar, Jessica Zhang, Sean Paul, Marijn Suijten,
David Airlie, Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Krishna Manikandan, Luca Weiss, Del Regno,
Loic Poulain, Yongxing Mou, Mahadevan, Richard Acayan,
Danila Tikhonov, Robert Foss, Neil Armstrong, linux-arm-msm,
devicetree, linux-kernel, Krzysztof Kozlowski, dri-devel,
freedreno
On 11/11/2026 19:16, Dmitry Baryshkov wrote:
> On Wed, Nov 11, 2026 at 06:45:01PM +0100, Krzysztof Kozlowski wrote:
>> MDSS DSI and DSI PHY are useless, when nothing is attached (no panel
>> description in DTS), thus should be disabled in DTS. Linux MSM DRM
>> drivers will also fail the probe.
>
> I don't think they will fail the probe. Nothing will be registered, no
> bridge will be attached to the DSI host, which means that the component
> device will not be constructed / bound.
>
Indeed, I'll rephrase.
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
2026-11-11 18:13 ` Dmitry Baryshkov
@ 2026-11-11 18:48 ` sashiko-bot
2026-11-11 19:05 ` Krzysztof Kozlowski
1 sibling, 1 reply; 11+ messages in thread
From: sashiko-bot @ 2026-11-11 18:48 UTC (permalink / raw)
To: Krzysztof Kozlowski; +Cc: devicetree, dri-devel, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential
issue to consider:
- [High] arm64: dts: qcom: msm8916: mdss_dsi0 left disabled on apq8016
boards
--
commit 1c53100e6d0a805c4396ae622f04768b412718b0
Author: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
arm64: dts: qcom: msm8916: Disable disconnected DSI
This commit disables mdss_dsi0 and mdss_dsi0_phy by default in msm8916.dtsi
and enables them in board DTS files that have a panel or bridge attached.
> diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
> index ba6ccf0db16ab..6c94489f5f707 100644
> --- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
> +++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dts
> @@ -262,6 +262,10 @@ &mdss_dsi0_out {
> remote-endpoint = <&adv7533_in>;
> };
>
> +&mdss_dsi0_phy {
> + status = "okay";
> +};
> +
> &mpss {
> status = "okay";
>
> diff --git a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
> index ce75046ffdac4..370ad8b01a1a0 100644
> --- a/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
> +++ b/arch/arm64/boot/dts/qcom/apq8016-schneider-hmibsc.dts
> @@ -218,6 +218,10 @@ &mdss_dsi0_out {
> remote-endpoint = <&adv7533_in>;
> };
>
> +&mdss_dsi0_phy {
> + status = "okay";
> +};
> +
> &pm8916_codec {
> qcom,mbhc-vthreshold-low = <75 150 237 450 500>;
> qcom,mbhc-vthreshold-high = <75 150 237 450 500>;
[Severity: High]
Should apq8016-sbc.dts and apq8016-schneider-hmibsc.dts also enable
&mdss_dsi0?
Both boards connect DSI0 to the ADV7533 bridge via &mdss_dsi0_out and do
not have an existing &mdss_dsi0 block. With mdss_dsi0 disabled in
msm8916.dtsi, the DSI controller and ADV7533 bridge fail to probe on both
boards. Furthermore, because apq8016-schneider-hmibsc.dts leaves &gpu
disabled, msm_drv_probe() finds zero sub-components and passes a NULL
match pointer to component_master_add_with_match(), causing a NULL pointer
dereference at boot.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261111-display-msm-of-graph-v2-0-fdf8fd97f49d@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI
2026-11-11 18:48 ` sashiko-bot
@ 2026-11-11 19:05 ` Krzysztof Kozlowski
0 siblings, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2026-11-11 19:05 UTC (permalink / raw)
To: sashiko-reviews; +Cc: devicetree, dri-devel, robh, conor+dt
On 11/11/2026 19:48, sashiko-bot@kernel.org wrote:
> Thank you for your contribution! Sashiko AI review found 1 potential
> issue to consider:
> - [High] arm64: dts: qcom: msm8916: mdss_dsi0 left disabled on apq8016
> boards
I swear these were enabled... ehhh...
Best regards,
Krzysztof
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2026-11-11 19:05 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-11 17:44 [PATCH v2 0/3] arm: qcom: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 1/3] arm64: dts: qcom: msm8916: Disable disconnected DSI Krzysztof Kozlowski
2026-11-11 18:13 ` Dmitry Baryshkov
2026-11-11 18:48 ` sashiko-bot
2026-11-11 19:05 ` Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 2/3] arm64: dts: qcom: msm8996-oneplus: " Krzysztof Kozlowski
2026-11-11 18:14 ` Dmitry Baryshkov
2026-11-11 18:16 ` Dmitry Baryshkov
2026-11-11 18:46 ` Krzysztof Kozlowski
2026-11-11 17:45 ` [PATCH v2 3/3] dt-bindings: display/msm: Require DSI graph endpoint Krzysztof Kozlowski
2026-11-11 18:16 ` Dmitry Baryshkov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox