arm64: dts: qcom: sa8155p-adp: Add base dts file
authorBhupesh Sharma <bhupesh.sharma@linaro.org>
Thu, 17 Jun 2021 05:45:48 +0000 (11:15 +0530)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Fri, 18 Jun 2021 17:37:26 +0000 (12:37 -0500)
Add base DTS file for SA8155p Automotive Development Platform.
It enables boot to console, adds tlmm reserved range and ufs flash.
It also includes pmic file.

SA8155p-adp board is based on sa8155p Qualcomm Snapdragon SoC.
SA8155p platform is similar to the SM8150, so use this as base
for now.

Cc: Vinod Koul <vkoul@kernel.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org>
Link: https://lore.kernel.org/r/20210617054548.353293-6-bhupesh.sharma@linaro.org
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
arch/arm64/boot/dts/qcom/Makefile
arch/arm64/boot/dts/qcom/sa8155p-adp.dts [new file with mode: 0644]

index 9ea7f50..4f05970 100644 (file)
@@ -35,6 +35,7 @@ dtb-$(CONFIG_ARCH_QCOM)       += msm8998-oneplus-dumpling.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += qcs404-evb-1000.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += qcs404-evb-4000.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += qrb5165-rb5.dtb
+dtb-$(CONFIG_ARCH_QCOM)        += sa8155p-adp.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += sc7180-idp.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += sc7180-trogdor-coachz-r1.dtb
 dtb-$(CONFIG_ARCH_QCOM)        += sc7180-trogdor-coachz-r1-lte.dtb
diff --git a/arch/arm64/boot/dts/qcom/sa8155p-adp.dts b/arch/arm64/boot/dts/qcom/sa8155p-adp.dts
new file mode 100644 (file)
index 0000000..0da7a3b
--- /dev/null
@@ -0,0 +1,360 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) 2021, Linaro Limited
+ */
+
+/dts-v1/;
+
+#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
+#include <dt-bindings/gpio/gpio.h>
+#include "sm8150.dtsi"
+#include "pmm8155au_1.dtsi"
+#include "pmm8155au_2.dtsi"
+
+/ {
+       model = "Qualcomm Technologies, Inc. SA8155P ADP";
+       compatible = "qcom,sa8155p-adp", "qcom,sa8155p";
+
+       aliases {
+               serial0 = &uart2;
+       };
+
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
+
+       vreg_3p3: vreg_3p3_regulator {
+               compatible = "regulator-fixed";
+               regulator-name = "vreg_3p3";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+       };
+
+       /*
+        * S4A is always on and not controllable through RPMh.
+        * So model it as a fixed regulator.
+        */
+       vreg_s4a_1p8: smps4 {
+               compatible = "regulator-fixed";
+               regulator-name = "vreg_s4a_1p8";
+
+               regulator-min-microvolt = <1800000>;
+               regulator-max-microvolt = <1800000>;
+
+               regulator-always-on;
+               regulator-boot-on;
+               regulator-allow-set-load;
+
+               vin-supply = <&vreg_3p3>;
+       };
+};
+
+&apps_rsc {
+       pmm8155au-1-rpmh-regulators {
+               compatible = "qcom,pmm8155au-rpmh-regulators";
+               qcom,pmic-id = "a";
+
+               vdd-s1-supply = <&vreg_3p3>;
+               vdd-s2-supply = <&vreg_3p3>;
+               vdd-s3-supply = <&vreg_3p3>;
+               vdd-s4-supply = <&vreg_3p3>;
+               vdd-s5-supply = <&vreg_3p3>;
+               vdd-s6-supply = <&vreg_3p3>;
+               vdd-s7-supply = <&vreg_3p3>;
+               vdd-s8-supply = <&vreg_3p3>;
+               vdd-s9-supply = <&vreg_3p3>;
+               vdd-s10-supply = <&vreg_3p3>;
+
+               vdd-l1-l8-l11-supply = <&vreg_s6a_0p92>;
+               vdd-l2-l10-supply = <&vreg_3p3>;
+               vdd-l3-l4-l5-l18-supply = <&vreg_s6a_0p92>;
+               vdd-l6-l9-supply = <&vreg_s6a_0p92>;
+               vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
+               vdd-l13-l16-l17-supply = <&vreg_3p3>;
+
+               vreg_s5a_2p04: smps5 {
+                       regulator-name = "vreg_s5a_2p04";
+                       regulator-min-microvolt = <1904000>;
+                       regulator-max-microvolt = <2000000>;
+               };
+
+               vreg_s6a_0p92: smps6 {
+                       regulator-name = "vreg_s6a_0p92";
+                       regulator-min-microvolt = <920000>;
+                       regulator-max-microvolt = <1128000>;
+               };
+
+               vreg_l1a_0p752: ldo1 {
+                       regulator-name = "vreg_l1a_0p752";
+                       regulator-min-microvolt = <752000>;
+                       regulator-max-microvolt = <752000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vdda_usb_hs_3p1:
+               vreg_l2a_3p072: ldo2 {
+                       regulator-name = "vreg_l2a_3p072";
+                       regulator-min-microvolt = <3072000>;
+                       regulator-max-microvolt = <3072000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l3a_0p8: ldo3 {
+                       regulator-name = "vreg_l3a_0p8";
+                       regulator-min-microvolt = <800000>;
+                       regulator-max-microvolt = <800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vdd_usb_hs_core:
+               vdda_usb_ss_dp_core_1:
+               vreg_l5a_0p88: ldo5 {
+                       regulator-name = "vreg_l5a_0p88";
+                       regulator-min-microvolt = <880000>;
+                       regulator-max-microvolt = <880000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+                       regulator-allow-set-load;
+               };
+
+               vreg_l7a_1p8: ldo7 {
+                       regulator-name = "vreg_l7a_1p8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l10a_2p96: ldo10 {
+                       regulator-name = "vreg_l10a_2p96";
+                       regulator-min-microvolt = <2504000>;
+                       regulator-max-microvolt = <2960000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+                       regulator-allow-set-load;
+               };
+
+               vreg_l11a_0p8: ldo11 {
+                       regulator-name = "vreg_l11a_0p8";
+                       regulator-min-microvolt = <800000>;
+                       regulator-max-microvolt = <800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vdda_usb_hs_1p8:
+               vreg_l12a_1p8: ldo12 {
+                       regulator-name = "vreg_l12a_1p8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l13a_2p7: ldo13 {
+                       regulator-name = "vreg_l13a_2p7";
+                       regulator-min-microvolt = <2704000>;
+                       regulator-max-microvolt = <2704000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l15a_1p7: ldo15 {
+                       regulator-name = "vreg_l15a_1p7";
+                       regulator-min-microvolt = <1704000>;
+                       regulator-max-microvolt = <1704000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l16a_2p7: ldo16 {
+                       regulator-name = "vreg_l16a_2p7";
+                       regulator-min-microvolt = <2704000>;
+                       regulator-max-microvolt = <2960000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l17a_2p96: ldo17 {
+                       regulator-name = "vreg_l17a_2p96";
+                       regulator-min-microvolt = <2504000>;
+                       regulator-max-microvolt = <2960000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+       };
+
+       pmm8155au-2-rpmh-regulators {
+               compatible = "qcom,pmm8155au-rpmh-regulators";
+               qcom,pmic-id = "c";
+
+               vdd-s1-supply = <&vreg_3p3>;
+               vdd-s2-supply = <&vreg_3p3>;
+               vdd-s3-supply = <&vreg_3p3>;
+               vdd-s4-supply = <&vreg_3p3>;
+               vdd-s5-supply = <&vreg_3p3>;
+               vdd-s6-supply = <&vreg_3p3>;
+               vdd-s7-supply = <&vreg_3p3>;
+               vdd-s8-supply = <&vreg_3p3>;
+               vdd-s9-supply = <&vreg_3p3>;
+               vdd-s10-supply = <&vreg_3p3>;
+
+               vdd-l1-l8-l11-supply = <&vreg_s4c_1p352>;
+               vdd-l2-l10-supply = <&vreg_3p3>;
+               vdd-l3-l4-l5-l18-supply = <&vreg_s4c_1p352>;
+               vdd-l6-l9-supply = <&vreg_s6c_1p128>;
+               vdd-l7-l12-l14-l15-supply = <&vreg_s5c_2p04>;
+               vdd-l13-l16-l17-supply = <&vreg_3p3>;
+
+               vreg_s4c_1p352: smps4 {
+                       regulator-name = "vreg_s4c_1p352";
+                       regulator-min-microvolt = <1352000>;
+                       regulator-max-microvolt = <1352000>;
+               };
+
+               vreg_s5c_2p04: smps5 {
+                       regulator-name = "vreg_s5c_2p04";
+                       regulator-min-microvolt = <1904000>;
+                       regulator-max-microvolt = <2000000>;
+               };
+
+               vreg_s6c_1p128: smps6 {
+                       regulator-name = "vreg_s6c_1p128";
+                       regulator-min-microvolt = <1128000>;
+                       regulator-max-microvolt = <1128000>;
+               };
+
+               vreg_l1c_1p304: ldo1 {
+                       regulator-name = "vreg_l1c_1p304";
+                       regulator-min-microvolt = <1304000>;
+                       regulator-max-microvolt = <1304000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l2c_1p808: ldo2 {
+                       regulator-name = "vreg_l2c_1p808";
+                       regulator-min-microvolt = <1704000>;
+                       regulator-max-microvolt = <2928000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l5c_1p2: ldo5 {
+                       regulator-name = "vreg_l5c_1p2";
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+                       regulator-allow-set-load;
+               };
+
+               vreg_l7c_1p8: ldo7 {
+                       regulator-name = "vreg_l7c_1p8";
+                       regulator-min-microvolt = <1800000>;
+                       regulator-max-microvolt = <1800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l8c_1p2: ldo8 {
+                       regulator-name = "vreg_l8c_1p2";
+                       regulator-min-microvolt = <1200000>;
+                       regulator-max-microvolt = <1200000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+                       regulator-allow-set-load;
+               };
+
+               vreg_l10c_3p3: ldo10 {
+                       regulator-name = "vreg_l10c_3p3";
+                       regulator-min-microvolt = <3000000>;
+                       regulator-max-microvolt = <3312000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l11c_0p8: ldo11 {
+                       regulator-name = "vreg_l11c_0p8";
+                       regulator-min-microvolt = <800000>;
+                       regulator-max-microvolt = <800000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l12c_1p808: ldo12 {
+                       regulator-name = "vreg_l12c_1p808";
+                       regulator-min-microvolt = <1704000>;
+                       regulator-max-microvolt = <2928000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l13c_2p96: ldo13 {
+                       regulator-name = "vreg_l13c_2p96";
+                       regulator-min-microvolt = <2504000>;
+                       regulator-max-microvolt = <2960000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l15c_1p9: ldo15 {
+                       regulator-name = "vreg_l15c_1p9";
+                       regulator-min-microvolt = <1704000>;
+                       regulator-max-microvolt = <2928000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l16c_3p008: ldo16 {
+                       regulator-name = "vreg_l16c_3p008";
+                       regulator-min-microvolt = <3008000>;
+                       regulator-max-microvolt = <3008000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+
+               vreg_l18c_0p88: ldo18 {
+                       regulator-name = "vreg_l18c_0p88";
+                       regulator-min-microvolt = <880000>;
+                       regulator-max-microvolt = <880000>;
+                       regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
+               };
+       };
+};
+
+&qupv3_id_1 {
+       status = "okay";
+};
+
+&tlmm {
+       gpio-reserved-ranges = <0 4>;
+};
+
+&uart2 {
+       status = "okay";
+};
+
+&ufs_mem_hc {
+       status = "okay";
+
+       reset-gpios = <&tlmm 175 GPIO_ACTIVE_LOW>;
+
+       vcc-supply = <&vreg_l10a_2p96>;
+       vcc-max-microamp = <750000>;
+       vccq-supply = <&vreg_l5c_1p2>;
+       vccq-max-microamp = <700000>;
+       vccq2-supply = <&vreg_s4a_1p8>;
+       vccq2-max-microamp = <750000>;
+};
+
+&ufs_mem_phy {
+       status = "okay";
+
+       vdda-phy-supply = <&vreg_l8c_1p2>;
+       vdda-max-microamp = <87100>;
+       vdda-pll-supply = <&vreg_l5a_0p88>;
+       vdda-pll-max-microamp = <18300>;
+};
+
+
+&usb_1_hsphy {
+       status = "okay";
+       vdda-pll-supply = <&vdd_usb_hs_core>;
+       vdda33-supply = <&vdda_usb_hs_3p1>;
+       vdda18-supply = <&vdda_usb_hs_1p8>;
+};
+
+&usb_1_qmpphy {
+       status = "okay";
+       vdda-phy-supply = <&vreg_l8c_1p2>;
+       vdda-pll-supply = <&vdda_usb_ss_dp_core_1>;
+};
+
+&usb_1 {
+       status = "okay";
+};
+
+&usb_1_dwc3 {
+       dr_mode = "peripheral";
+};