]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: dts: qcom: hamoa-iot-evk: Add backlight support for eDP panel
authorYongxing Mou <yongxing.mou@oss.qualcomm.com>
Wed, 12 Nov 2025 04:21:23 +0000 (12:21 +0800)
committerBjorn Andersson <andersson@kernel.org>
Sat, 3 Jan 2026 19:21:59 +0000 (13:21 -0600)
The backlight on the Hamoa IoT EVK is controlled through a PWM signal.
Aligned with other x1e80100-based platforms: the PWM signal is controlled
by PMK8550, and the backlight enable signal is handled by PMC8380.

Describe the backlight device and connect it to the eDP panel to allow
for brightness control.

Reviewed-by: Abel Vesa <abel.vesa@linaro.org>
Signed-off-by: Yongxing Mou <yongxing.mou@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20251112-hamoa_dvt_backlight-v3-1-f35b44af7fc4@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts

index aa0e0857e9938a7577857f9f384a6c44c5718257..898b92627f84462fd41d515d3c4d9362e686d327 100644 (file)
                serial1 = &uart14;
        };
 
+       backlight: backlight {
+               compatible = "pwm-backlight";
+               pwms = <&pmk8550_pwm 0 5000000>;
+               enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>;
+               power-supply = <&vreg_edp_bl>;
+
+               pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>;
+               pinctrl-names = "default";
+       };
+
        wcd938x: audio-codec {
                compatible = "qcom,wcd9385-codec";
 
                regulator-boot-on;
        };
 
+       vreg_edp_bl: regulator-edp-bl {
+               compatible = "regulator-fixed";
+
+               regulator-name = "VBL9";
+               regulator-min-microvolt = <3600000>;
+               regulator-max-microvolt = <3600000>;
+
+               gpio = <&pmc8380_3_gpios 10 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-0 = <&edp_bl_reg_en>;
+               pinctrl-names = "default";
+
+               regulator-boot-on;
+       };
+
        vreg_nvme: regulator-nvme {
                compatible = "regulator-fixed";
 
        aux-bus {
                panel {
                        compatible = "edp-panel";
+
+                       backlight = <&backlight>;
                        power-supply = <&vreg_edp_3p3>;
 
                        port {
        };
 };
 
+&pmc8380_3_gpios {
+       edp_bl_en: edp-bl-en-state {
+               pins = "gpio4";
+               function = "normal";
+               power-source = <1>;
+               input-disable;
+               output-enable;
+       };
+
+       edp_bl_reg_en: edp-bl-reg-en-state {
+               pins = "gpio10";
+               function = "normal";
+       };
+};
+
 &pmc8380_5_gpios {
        usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state {
                pins = "gpio8";
        };
 };
 
+&pmk8550_gpios {
+       edp_bl_pwm: edp-bl-pwm-state {
+               pins = "gpio5";
+               function = "func3";
+       };
+};
+
+&pmk8550_pwm {
+       status = "okay";
+};
+
 &smb2360_0 {
        status = "okay";
 };