On 06/12/2025 03:09, Dmitry Baryshkov wrote:
On Wed, Dec 03, 2025 at 01:40:54AM -0800, Paul Sajna wrote:
Also include other supporting msm drm nodes, including backlight
Co-developed-by: Amir Dahan <[email protected]>
Signed-off-by: Amir Dahan <[email protected]>
Reviewed-by: Konrad Dybcio <[email protected]>
Signed-off-by: Paul Sajna <[email protected]>
---
arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi | 8 +--
arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts | 75 +++++++++++++++++++++-----
2 files changed, 66 insertions(+), 17 deletions(-)
diff --git a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
index 165523db4d49..50921af83a51 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
+++ b/arch/arm64/boot/dts/qcom/sdm845-lg-common.dtsi
@@ -450,10 +450,6 @@ &cdsp_pas {
status = "okay";
};
-&dispcc {
- status = "disabled";
-};
-
&gcc {
protected-clocks = <GCC_QSPI_CORE_CLK>,
<GCC_QSPI_CORE_CLK_SRC>,
@@ -517,6 +513,10 @@ led@5 {
};
};
+&pmi8998_wled {
+ status = "okay";
+};
+
&sdhc_2 {
cd-gpios = <&tlmm 126 GPIO_ACTIVE_LOW>;
diff --git a/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts b/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
index 55bfddab3afd..506e6fe8e798 100644
--- a/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
+++ b/arch/arm64/boot/dts/qcom/sdm845-lg-judyln.dts
@@ -13,19 +13,6 @@ / {
model = "LG G7 ThinQ";
compatible = "lg,judyln", "qcom,sdm845";
- chosen {
- framebuffer@9d400000 {
- compatible = "simple-framebuffer";
- reg = <0x0 0x9d400000 0x0 (1440 * 3120 * 4)>;
- width = <1440>;
- height = <3120>;
- stride = <(1440 * 4)>;
- format = "a8r8g8b8";
- lab-supply = <&lab>;
- ibb-supply = <&ibb>;
- };
- };
I think, you can leave simple-fb in place. MSM driver should be able to
replace it once it is loaded.
Any chance, do you know if the issue OnePlus had is then resolved?
===
/**
* HACK:
* Fake panel node for simple-framebuffer to calculate DPI from. Only
* needs width & height specified. This allows us to break device link
* from simplefb to mdss (implicitly via panel->mdp->mdss) to fix drm
* device probe ordering. Without this, simpledrm would probe second
* after msm-drm, and confuse userspace with 2 GPUs in /dev/dri.
* Alternative workaround is to boot with kernel parameter
* `fw_devlink=permissive`, which is worse, because it can hide other
* issues with device dependencies.
*/
panel = <&fb_panel>;
fb_panel: fb-panel {
width-mm = <68>;
height-mm = <145>;
};
===
Ref:
https://gitlab.com/sdm845/sdm845-next/-/commit/6a0a09c4dddc1b973209f5ffea086eb7a3fc24b9
Add Sam into CC.
David
-
/* Additional ThinQ key */
gpio-keys {
pinctrl-0 = <&vol_up_pin_a &thinq_key_default>;
@@ -67,6 +54,47 @@ &gpu_zap_shader {
firmware-name = "qcom/sdm845/judyln/a630_zap.mbn";
};
+&mdss {
+ status = "okay";
+};
+
+&mdss_dsi0 {
+ vdda-supply = <&vdda_mipi_dsi0_1p2>;
+
+ status = "okay";
+
+ display_panel: panel@0 {
+ reg = <0>;
+ compatible = "lg,sw49410-lh609qh1", "lg,sw49410";
+
+ backlight = <&pmi8998_wled>;
+ reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>;
+ width-mm = <65>;
+ height-mm = <140>;
+
+ pinctrl-0 = <&sde_dsi_active &sde_te_active_sleep>;
+ pinctrl-1 = <&sde_dsi_sleep &sde_te_active_sleep>;
+ pinctrl-names = "default", "sleep";
+
+ port {
+ panel_in: endpoint {
+ remote-endpoint = <&mdss_dsi0_out>;
+ };
+ };
+ };
+};
+
+&mdss_dsi0_phy {
+ vdds-supply = <&vdda_mipi_dsi0_pll>;
+
+ status = "okay";
+};
+
+&mdss_dsi0_out {
+ remote-endpoint = <&panel_in>;
+ data-lanes = <0 1 2 3>;
+};
+
&mss_pil {
firmware-name = "qcom/sdm845/judyln/mba.mbn",
"qcom/sdm845/judyln/modem.mbn";
};
@@ -85,4 +113,25 @@ thinq_key_default: thinq-key-default-state {
drive-strength = <2>;
bias-pull-up;
};
+
+ sde_dsi_active: sde-dsi-active-state {
+ pins = "gpio6";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ sde_dsi_sleep: sde-dsi-sleep-state {
+ pins = "gpio6";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+
+ sde_te_active_sleep: sde-te-active-sleep-state {
+ pins = "gpio10";
+ function = "mdp_vsync";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
};
--
2.52.0
--
David Heidelberg