]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: dts: qcom: eliza: Enable Eliza MTP board support
authorAbel Vesa <abel.vesa@oss.qualcomm.com>
Wed, 18 Mar 2026 10:19:34 +0000 (12:19 +0200)
committerBjorn Andersson <andersson@kernel.org>
Thu, 26 Mar 2026 14:40:37 +0000 (09:40 -0500)
The MTP is a one of the boards that comes with the Eliza SoC.
So add dedicated board dts for it.

The initial support enables:
- UART debug console
- Ob-board UFS storage
- Qualcomm RPMh regulators (PMIC) and VPH_PWR
- board specific clocks & reserved GPIO ranges

Co-developed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Signed-off-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20260318-eliza-base-dt-v3-3-8a50bd2201ed@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/Makefile
arch/arm64/boot/dts/qcom/eliza-mtp.dts [new file with mode: 0644]

index d141fcfaecbc0746bc5f1f21e13adccbe0f7e938..a7ea3e42511541a8256bc790f05795a98ddb0fba 100644 (file)
@@ -14,6 +14,7 @@ dtb-$(CONFIG_ARCH_QCOM)       += apq8094-sony-xperia-kitakami-karin_windy.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += apq8096-db820c.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += apq8096sg-db820c.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += apq8096-ifc6640.dtb
+dtb-$(CONFIG_ARCH_QCOM)        += eliza-mtp.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += glymur-crd.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += hamoa-iot-evk.dtb
 
diff --git a/arch/arm64/boot/dts/qcom/eliza-mtp.dts b/arch/arm64/boot/dts/qcom/eliza-mtp.dts
new file mode 100644 (file)
index 0000000..90f6298
--- /dev/null
@@ -0,0 +1,407 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
+#include "eliza.dtsi"
+
+/ {
+       model = "Qualcomm Technologies, Inc. Eliza MTP";
+       compatible = "qcom,eliza-mtp", "qcom,eliza";
+       chassis-type = "handset";
+
+       aliases {
+               serial0 = &uart14;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       clocks {
+               xo_board: xo-board {
+                       compatible = "fixed-clock";
+                       clock-frequency = <76800000>;
+                       #clock-cells = <0>;
+               };
+
+               sleep_clk: sleep-clk {
+                       compatible = "fixed-clock";
+                       clock-frequency = <32764>;
+                       #clock-cells = <0>;
+               };
+
+               bi_tcxo_div2: bi-tcxo-div2-clk {
+                       compatible = "fixed-factor-clock";
+                       #clock-cells = <0>;
+
+                       clocks = <&rpmhcc RPMH_CXO_CLK>;
+                       clock-mult = <1>;
+                       clock-div = <2>;
+               };
+
+               bi_tcxo_ao_div2: bi-tcxo-ao-div2-clk {
+                       compatible = "fixed-factor-clock";
+                       #clock-cells = <0>;
+
+                       clocks = <&rpmhcc RPMH_CXO_CLK_A>;
+                       clock-mult = <1>;
+                       clock-div = <2>;
+               };
+       };
+
+       vph_pwr: regulator-vph-pwr {
+               compatible = "regulator-fixed";
+
+               regulator-name = "vph_pwr";
+               regulator-min-microvolt = <3700000>;
+               regulator-max-microvolt = <3700000>;
+
+               regulator-always-on;
+               regulator-boot-on;
+       };
+};
+
+&apps_rsc {
+       regulators-0 {
+               compatible = "qcom,pm7550-rpmh-regulators";
+
+               vdd-l1-supply = <&vreg_s3b>;
+               vdd-l2-l3-supply = <&vreg_s3b>;
+               vdd-l4-l5-supply = <&vreg_s2b>;
+               vdd-l6-supply = <&vreg_s2b>;
+               vdd-l7-supply = <&vreg_s1b>;
+               vdd-l8-supply = <&vreg_s1b>;
+               vdd-l9-l10-supply = <&vreg_s1b>;
+               vdd-l11-supply = <&vreg_s1b>;
+               vdd-l12-l14-supply = <&vreg_bob>;
+               vdd-l13-l16-supply = <&vreg_bob>;
+               vdd-l15-l17-l18-l19-l20-l21-l22-l23-supply = <&vreg_bob>;
+               vdd-s1-supply = <&vph_pwr>;
+               vdd-s2-supply = <&vph_pwr>;
+               vdd-s3-supply = <&vph_pwr>;
+               vdd-s4-supply = <&vph_pwr>;
+               vdd-s5-supply = <&vph_pwr>;
+               vdd-s6-supply = <&vph_pwr>;
+
+               vdd-bob-supply = <&vph_pwr>;
+
+               qcom,pmic-id = "b";
+
+               vreg_s1b: smps1 {
+                       regulator-name = "vreg_s1b";
+                       regulator-min-microvolt = <1850000>;
+                       regulator-max-microvolt = <2040000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_s2b: smps2 {
+                       regulator-name = "vreg_s2b";
+                       regulator-min-microvolt = <375000>;
+                       regulator-max-microvolt = <2744000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_s3b: smps3 {
+                       regulator-name = "vreg_s3b";
+                       regulator-min-microvolt = <375000>;
+                       regulator-max-microvolt = <2744000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_s4b: smps4 {
+                       regulator-name = "vreg_s4b";
+                       regulator-min-microvolt = <2156000>;
+                       regulator-max-microvolt = <2400000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l2b: ldo2 {
+                       regulator-name = "vreg_l2b";
+                       regulator-min-microvolt = <720000>;
+                       regulator-max-microvolt = <950000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l3b: ldo3 {
+                       regulator-name = "vreg_l3b";
+                       regulator-min-microvolt = <880000>;
+                       regulator-max-microvolt = <912000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l4b: ldo4 {
+                       regulator-name = "vreg_l4b";
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l6b: ldo6 {
+                       regulator-name = "vreg_l6b";
+                       regulator-min-microvolt = <866000>;
+                       regulator-max-microvolt = <958000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l7b: ldo7 {
+                       regulator-name = "vreg_l7b";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l8b: ldo8 {
+                       regulator-name = "vreg_l8b";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l9b: ldo9 {
+                       regulator-name = "vreg_l9b";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l10b: ldo10 {
+                       regulator-name = "vreg_l10b";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l11b: ldo11 {
+                       regulator-name = "vreg_l11b";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l12b: ldo12 {
+                       regulator-name = "vreg_l12b";
+                       /* Voltage range for UFS 3.x and above */
+                       regulator-min-microvolt = <2400000>;
+                       regulator-max-microvolt = <3300000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l13b: ldo13 {
+                       regulator-name = "vreg_l13b";
+                       regulator-min-microvolt = <2700000>;
+                       regulator-max-microvolt = <3300000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l14b: ldo14 {
+                       regulator-name = "vreg_l14b";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3304000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l15b: ldo15 {
+                       regulator-name = "vreg_l15b";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3304000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l16b: ldo16 {
+                       regulator-name = "vreg_l16b";
+                       regulator-min-microvolt = <3008000>;
+                       regulator-max-microvolt = <3008000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l17b: ldo17 {
+                       regulator-name = "vreg_l17b";
+                       regulator-min-microvolt = <3104000>;
+                       regulator-max-microvolt = <3104000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l18b: ldo18 {
+                       regulator-name = "vreg_l18b";
+                       regulator-min-microvolt = <2800000>;
+                       regulator-max-microvolt = <2800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l19b: ldo19 {
+                       regulator-name = "vreg_l19b";
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3000000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l20b: ldo20 {
+                       regulator-name = "vreg_l20b";
+                       regulator-min-microvolt = <1620000>;
+                       regulator-max-microvolt = <3544000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l21b: ldo21 {
+                       regulator-name = "vreg_l21b";
+                       regulator-min-microvolt = <1620000>;
+                       regulator-max-microvolt = <3544000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l22b: ldo22 {
+                       regulator-name = "vreg_l22b";
+                       regulator-min-microvolt = <3200000>;
+                       regulator-max-microvolt = <3200000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l23b: ldo23 {
+                       regulator-name = "vreg_l23b";
+                       regulator-min-microvolt = <1650000>;
+                       regulator-max-microvolt = <3544000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_bob: bob {
+                       regulator-name = "vreg_bob";
+                       regulator-min-microvolt = <3008000>;
+                       regulator-max-microvolt = <3960000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+       };
+
+       regulators-1 {
+               compatible = "qcom,pm8550vs-rpmh-regulators";
+
+               vdd-l1-supply = <&vreg_s2b>;
+
+               qcom,pmic-id = "d";
+
+               vreg_l1d: ldo1 {
+                       regulator-name = "vreg_l1d";
+                       regulator-min-microvolt = <1140000>;
+                       regulator-max-microvolt = <1260000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+       };
+
+       regulators-2 {
+               compatible = "qcom,pm8550vs-rpmh-regulators";
+
+               vdd-l1-supply = <&vreg_s2b>;
+               vdd-l3-supply = <&vreg_s2b>;
+
+               qcom,pmic-id = "g";
+
+               vreg_l1g: ldo1 {
+                       regulator-name = "vreg_l1g";
+                       regulator-min-microvolt = <1150000>;
+                       regulator-max-microvolt = <1260000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l3g: ldo3 {
+                       regulator-name = "vreg_l3g";
+                       regulator-min-microvolt = <1150000>;
+                       regulator-max-microvolt = <1260000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+       };
+
+       regulators-3 {
+               compatible = "qcom,pmr735d-rpmh-regulators";
+
+               vdd-l1-l2-l5-supply = <&vreg_s3b>;
+               vdd-l3-l4-supply = <&vreg_s2b>;
+               vdd-l6-supply = <&vreg_s1b>;
+               vdd-l7-supply = <&vreg_s3b>;
+
+               qcom,pmic-id = "k";
+
+               vreg_l1k: ldo1 {
+                       regulator-name = "vreg_l1k";
+                       regulator-min-microvolt = <488000>;
+                       regulator-max-microvolt = <912000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l2k: ldo2 {
+                       regulator-name = "vreg_l2k";
+                       regulator-min-microvolt = <920000>;
+                       regulator-max-microvolt = <969000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l3k: ldo3 {
+                       regulator-name = "vreg_l3k";
+                       regulator-min-microvolt = <1080000>;
+                       regulator-max-microvolt = <1350000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l4k: ldo4 {
+                       regulator-name = "vreg_l4k";
+                       regulator-min-microvolt = <960000>;
+                       regulator-max-microvolt = <1980000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l5k: ldo5 {
+                       regulator-name = "vreg_l5k";
+                       regulator-min-microvolt = <866000>;
+                       regulator-max-microvolt = <931000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l6k: ldo6 {
+                       regulator-name = "vreg_l6k";
+                       regulator-min-microvolt = <1100000>;
+                       regulator-max-microvolt = <2000000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l7k: ldo7 {
+                       regulator-name = "vreg_l7k";
+                       regulator-min-microvolt = <720000>;
+                       regulator-max-microvolt = <958000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+       };
+};
+
+&tlmm {
+       gpio-reserved-ranges = <20 4>,   /* NFC SPI */
+                              <111 2>,  /* WCN UART1 */
+                              <118 1>;  /* NFC Secure I/O */
+};
+
+&uart14 {
+       compatible = "qcom,geni-debug-uart";
+
+       status = "okay";
+};
+
+&ufs_mem_hc {
+       reset-gpios = <&tlmm 185 GPIO_ACTIVE_LOW>;
+
+       vcc-supply = <&vreg_l12b>;
+       vcc-max-microamp = <1300000>;
+       vccq-supply = <&vreg_l1d>;
+       vccq-max-microamp = <1200000>;
+
+       status = "okay";
+};
+
+&ufs_mem_phy {
+       vdda-phy-supply = <&vreg_l6b>;
+       vdda-pll-supply = <&vreg_l4b>;
+
+       status = "okay";
+};