summaryrefslogtreecommitdiff
path: root/qcom
diff options
context:
space:
mode:
authorQC Publisher <qcpublisher@qti.qualcomm.com>2021-11-15 17:38:42 -0800
committerAndrew Evans <andrewevans@google.com>2022-02-15 14:56:20 -0800
commit64ceabbe9f67bb1111bd838e3fe3e2cec069fad4 (patch)
tree54059832688e7490f2fcbfdc58f41d0c4fee03ab /qcom
parentae3d046330003c3bea902480d8f0b523970a9b9a (diff)
downloaddevicetree-64ceabbe9f67bb1111bd838e3fe3e2cec069fad4.tar.gz
Commit label r00100.1 - ES3 0.0.100.1
TRACKING-ID:abf84bf7-a84d-4dce-b5ff-27ddc33fe0cb
Diffstat (limited to 'qcom')
-rwxr-xr-xqcom/Makefile12
-rwxr-xr-xqcom/direwolf-audio.dtsi14
-rwxr-xr-xqcom/direwolf-gdsc.dtsi18
-rwxr-xr-xqcom/direwolf-ivi-v2.dtsi8
-rwxr-xr-xqcom/direwolf-vm-audio.dtsi14
-rwxr-xr-xqcom/direwolf-vm-lv.dtsi9
-rwxr-xr-xqcom/direwolf-vm-ufs.dtsi190
-rwxr-xr-xqcom/direwolf-vm.dtsi20
-rwxr-xr-xqcom/holi-audio.dtsi8
-rwxr-xr-xqcom/holi-pmic-overlay.dtsi12
-rwxr-xr-xqcom/lahaina-audio.dtsi13
-rwxr-xr-xqcom/lemans.dtsi336
-rwxr-xr-xqcom/monaco-1gb.dts9
-rwxr-xr-xqcom/monaco-1gb.dtsi11
-rwxr-xr-xqcom/monaco-atp-v1-overlay.dts1
-rwxr-xr-xqcom/monaco-camera-v1.1.dtsi8
-rwxr-xr-xqcom/monaco-idp-v1-common.dtsi3
-rwxr-xr-xqcom/monaco-idp-v1-overlay.dts1
-rwxr-xr-xqcom/monaco-idp-v1.1-overlay.dts1
-rwxr-xr-xqcom/monaco-idp-v1.1.dtsi7
-rwxr-xr-xqcom/monaco-idp-v1.dtsi38
-rwxr-xr-xqcom/monaco-idp-v2-overlay.dts1
-rwxr-xr-xqcom/monaco-idp-v2.1-overlay.dts1
-rwxr-xr-xqcom/monaco-idp-v3-overlay.dts2
-rwxr-xr-xqcom/monaco-idp-v3.1-overlay.dts1
-rwxr-xr-xqcom/monaco-pmic.dtsi4
-rwxr-xr-xqcom/monaco-slate-audio-overlay.dtsi2
-rwxr-xr-xqcom/monaco-standalone-atp-v1.dts2
-rwxr-xr-xqcom/monaco-standalone-idp-v1.dts2
-rwxr-xr-xqcom/monaco-standalone-idp-v1.dtsi16
-rwxr-xr-xqcom/monaco-standalone-idp-v2.dts2
-rwxr-xr-xqcom/monaco-standalone-idp-v3.dts2
-rwxr-xr-xqcom/monaco-standalone-wdp-v1.dts2
-rwxr-xr-xqcom/monaco-standalone.dts9
-rwxr-xr-xqcom/monaco-standalone.dtsi15
-rwxr-xr-xqcom/monaco-wdp-v1-overlay.dts1
-rwxr-xr-xqcom/monaco-wdp-v1.1-overlay.dts1
-rwxr-xr-xqcom/monaco-wdp-v1.1.dtsi4
-rwxr-xr-xqcom/monaco-wdp-v1.dtsi10
-rwxr-xr-xqcom/monaco.dtsi45
-rwxr-xr-xqcom/monacop-1gb.dts9
-rwxr-xr-xqcom/monacop-standalone-atp-v1.dts2
-rwxr-xr-xqcom/monacop-standalone-idp-v1.dts2
-rwxr-xr-xqcom/monacop-standalone-idp-v2.dts2
-rwxr-xr-xqcom/monacop-standalone-idp-v3.dts2
-rwxr-xr-xqcom/monacop-standalone-wdp-v1.dts2
-rwxr-xr-xqcom/monacop-standalone.dts9
-rwxr-xr-xqcom/monacop-standalone.dtsi (renamed from qcom/monacop-1gb.dtsi)2
-rwxr-xr-xqcom/monacop.dtsi24
-rwxr-xr-xqcom/msm-audio-lpass.dtsi66
-rwxr-xr-xqcom/pm5100.dtsi4
-rwxr-xr-xqcom/pm6150l.dtsi12
-rwxr-xr-xqcom/pm7250b.dtsi6
-rwxr-xr-xqcom/qrb2210-rb1-audio.dtsi8
-rwxr-xr-xqcom/qrb2210-rb1-msm-audio-lpass.dtsi66
-rwxr-xr-xqcom/qrb2210-rb1.dtsi3
-rwxr-xr-xqcom/qrb4210-rb2-audio.dtsi8
-rwxr-xr-xqcom/qrb4210-rb2-msm-audio-lpass.dtsi66
-rwxr-xr-xqcom/quin-vm-common.dtsi6
-rwxr-xr-xqcom/sa410m-pmic.dtsi164
-rwxr-xr-xqcom/sa410m-qupv3.dtsi212
-rwxr-xr-xqcom/sa410m-usb.dtsi159
-rwxr-xr-xqcom/sa410m.dts19
-rwxr-xr-xqcom/sa410m.dtsi293
-rwxr-xr-xqcom/sa6155-audio.dtsi14
-rwxr-xr-xqcom/sa8155-audio.dtsi14
-rwxr-xr-xqcom/sa8155-vm-audio.dtsi14
-rwxr-xr-xqcom/sa8195-vm.dtsi4
-rwxr-xr-xqcom/scuba-audio.dtsi8
-rwxr-xr-xqcom/sdmshrike.dtsi1
-rwxr-xr-xqcom/sdxlemur-pcie.dtsi6
-rwxr-xr-xqcom/sdxlemur-v2.dtsi58
-rwxr-xr-xqcom/sdxlemur.dtsi5
-rwxr-xr-xqcom/shima-atp.dtsi4
-rwxr-xr-xqcom/shima-audio.dtsi13
-rwxr-xr-xqcom/shima-idp.dtsi4
-rwxr-xr-xqcom/shima-qrd.dtsi4
-rwxr-xr-xqcom/slate.dtsi2
-rwxr-xr-xqcom/sm8150-qupv3.dtsi81
-rwxr-xr-xqcom/yupik-audio-overlay.dtsi9
-rwxr-xr-xqcom/yupik-audio.dtsi13
81 files changed, 1940 insertions, 315 deletions
diff --git a/qcom/Makefile b/qcom/Makefile
index 6305b269..abf0748f 100755
--- a/qcom/Makefile
+++ b/qcom/Makefile
@@ -282,11 +282,11 @@ dtbo-$(CONFIG_ARCH_MONACO) += \
monaco-wdp-v1.1-overlay.dtbo
monaco-rumi-overlay.dtbo-base := monaco.dtb
-monaco-standalone-idp-v1-overlay.dtbo-base := monaco-1gb.dtb monacop-1gb.dtb
-monaco-standalone-idp-v2-overlay.dtbo-base := monaco-1gb.dtb monacop-1gb.dtb
-monaco-standalone-idp-v3-overlay.dtbo-base := monaco-1gb.dtb monacop-1gb.dtb
-monacop-standalone-idp-v1-overlay.dtbo-base := monaco-1gb.dtb
-monaco-standalone-atp-v1-overlay.dtbo-base := monaco-1gb.dtb monacop-1gb.dtb
+monaco-standalone-idp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb
+monaco-standalone-idp-v2-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb
+monaco-standalone-idp-v3-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb
+monacop-standalone-idp-v1-overlay.dtbo-base := monaco-standalone.dtb
+monaco-standalone-atp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb
monaco-idp-v1-overlay.dtbo-base := monaco.dtb monacop.dtb
monaco-idp-v2-overlay.dtbo-base := monaco.dtb monacop.dtb
monaco-idp-v3-overlay.dtbo-base := monaco.dtb monacop.dtb
@@ -294,7 +294,7 @@ monaco-idp-v1.1-overlay.dtbo-base := monaco.dtb monacop.dtb
monaco-idp-v2.1-overlay.dtbo-base := monaco.dtb
monaco-idp-v3.1-overlay.dtbo-base := monaco.dtb
monaco-atp-v1-overlay.dtbo-base := monaco.dtb monacop.dtb
-monaco-standalone-wdp-v1-overlay.dtbo-base := monaco-1gb.dtb monacop-1gb.dtb
+monaco-standalone-wdp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb
monaco-wdp-v1-overlay.dtbo-base := monaco.dtb monacop.dtb
monaco-wdp-v1.1-overlay.dtbo-base := monaco.dtb monacop.dtb
diff --git a/qcom/direwolf-audio.dtsi b/qcom/direwolf-audio.dtsi
index 93d92ff5..e1e59c1a 100755
--- a/qcom/direwolf-audio.dtsi
+++ b/qcom/direwolf-audio.dtsi
@@ -1125,9 +1125,12 @@
"msm-pcm-dsp-noirq", "msm-pcm-loopback.1",
"msm-pcm-dtmf";
asoc-cpu = <&dai_hdmi>, <&dai_dp>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&afe_pcm_rx>, <&afe_pcm_tx>,
@@ -1203,7 +1206,10 @@
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-dp.0",
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
- "msm-dai-q6-mi2s.4", "msm-dai-q6-auxpcm.1",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
diff --git a/qcom/direwolf-gdsc.dtsi b/qcom/direwolf-gdsc.dtsi
index ed4b03e8..5081c048 100755
--- a/qcom/direwolf-gdsc.dtsi
+++ b/qcom/direwolf-gdsc.dtsi
@@ -23,6 +23,12 @@
status = "disabled";
};
+ gcc_pcie_0_gdsc: qcom,gdsc@1a9004 {
+ compatible = "regulator-fixed";
+ regulator-name = "gcc_pcie_0_gdsc";
+ status = "disabled";
+ };
+
gcc_pcie_0_tunnel_gdsc: qcom,gdsc@1a4004 {
compatible = "qcom,gdsc";
reg = <0x1a4004 0x4>;
@@ -35,6 +41,12 @@
status = "disabled";
};
+ gcc_pcie_1_gdsc: qcom,gdsc@177004 {
+ compatible = "regulator-fixed";
+ regulator-name = "gcc_pcie_1_gdsc";
+ status = "disabled";
+ };
+
gcc_pcie_1_tunnel_gdsc: qcom,gdsc@18d004 {
compatible = "qcom,gdsc";
reg = <0x18d004 0x4>;
@@ -123,6 +135,12 @@
status = "disabled";
};
+ gcc_usb20_prim_gdsc: qcom,gdsc@11c004 {
+ compatible = "regulator-fixed";
+ regulator-name = "gcc_usb20_prim_gdsc";
+ status = "disabled";
+ };
+
gcc_usb30_mp_gdsc: qcom,gdsc@1ab004 {
compatible = "qcom,gdsc";
reg = <0x1ab004 0x4>;
diff --git a/qcom/direwolf-ivi-v2.dtsi b/qcom/direwolf-ivi-v2.dtsi
index c1cfdc42..6a2881ba 100755
--- a/qcom/direwolf-ivi-v2.dtsi
+++ b/qcom/direwolf-ivi-v2.dtsi
@@ -7,3 +7,11 @@
compatible = "qcom,direwolf-ivi", "qcom,direwolf";
qcom,msm-id = <460 0x20000>;
};
+
+&gpucc {
+ compatible = "qcom,direwolf-gpucc-v2", "syscon";
+};
+
+&videocc {
+ compatible = "qcom,direwolf-videocc-v2", "syscon";
+};
diff --git a/qcom/direwolf-vm-audio.dtsi b/qcom/direwolf-vm-audio.dtsi
index 82610cc3..56bc00b7 100755
--- a/qcom/direwolf-vm-audio.dtsi
+++ b/qcom/direwolf-vm-audio.dtsi
@@ -1092,9 +1092,12 @@
"msm-pcm-dsp-noirq", "msm-pcm-loopback.1",
"msm-pcm-dtmf";
asoc-cpu = <&dai_hdmi>, <&dai_dp>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&afe_pcm_rx>, <&afe_pcm_tx>,
@@ -1170,7 +1173,10 @@
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-dp.0",
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
- "msm-dai-q6-mi2s.4", "msm-dai-q6-auxpcm.1",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
diff --git a/qcom/direwolf-vm-lv.dtsi b/qcom/direwolf-vm-lv.dtsi
index 5330dc99..185d9311 100755
--- a/qcom/direwolf-vm-lv.dtsi
+++ b/qcom/direwolf-vm-lv.dtsi
@@ -67,3 +67,12 @@
&usb2_phy5 {
status = "okay";
};
+
+&ufs2phy_mem {
+ status = "okay";
+};
+
+&ufshc2_mem {
+ status = "okay";
+};
+
diff --git a/qcom/direwolf-vm-ufs.dtsi b/qcom/direwolf-vm-ufs.dtsi
new file mode 100755
index 00000000..bdc633a2
--- /dev/null
+++ b/qcom/direwolf-vm-ufs.dtsi
@@ -0,0 +1,190 @@
+&regulator {
+ L8G0: pm8540_g0_l8: regulator-pm8540_g0-l8 {
+ regulator-name = "ldog8";
+ regulator-min-microvolt = <825000>;
+ regulator-max-microvolt = <925000>;
+ };
+
+ L3G0: pm8540_g0_l3: regulator-pm8540_g0-l3 {
+ regulator-name = "ldog3";
+ regulator-min-microvolt = <1130000>;
+ regulator-max-microvolt = <1260000>;
+ };
+
+ gcc_ufs_card_gdsc: gcc_ufs_card_gdsc {
+ regulator-name = "gcc_ufs_card_gdsc";
+ };
+
+ L10C0: pm8540_c0_l10: regulator-pm8540_c0-l10 {
+ regulator-name = "ldoc10";
+ regulator-min-microvolt = <2400000>;
+ regulator-max-microvolt = <2960000>;
+ };
+
+ L3C0: pm8540_c0_l3: regulator-pm8540_c0-l3 {
+ regulator-name = "ldoc3";
+ regulator-min-microvolt = <1080000>;
+ regulator-max-microvolt = <1304000>;
+ };
+};
+
+&soc {
+ aliases {
+ ufshc2 = &ufshc2_mem; /* Embedded 2nd UFS slot */
+ };
+
+ ufs2phy_mem: ufsphy_mem@1da7000 {
+ compatible = "qcom,ufs-phy-qmp-v4-lahaina";
+
+ reg = <0x1da7000 0xe10>;
+ reg-names = "phy_mem";
+ #phy-cells = <0>;
+
+ lanes-per-direction = <2>;
+
+ vdda-phy-supply = <&L8G0>;
+ vdda-pll-supply = <&L3G0>;
+ vdda-phy-max-microamp = <85700>;
+ vdda-pll-max-microamp = <18300>;
+
+ clock-names = "ref_clk_src",
+ "ref_clk",
+ "ref_aux_clk",
+ "ref_clk_parent";
+ clocks = <&dummycc RPMH_CXO_CLK>,
+ <&gcc GCC_UFS_1_CARD_CLKREF_CLK>,
+ <&gcc GCC_UFS_CARD_PHY_AUX_CLK>,
+ <&gcc GCC_UFS_REF_CLKREF_CLK>;
+ resets = <&ufshc2_mem 0>;
+ status = "disabled";
+ };
+
+ ufshc2_mem: ufshc@1da4000 {
+ compatible = "qcom,ufshc";
+ reg = <0x1da4000 0x3000>,
+ <0x1da8000 0x8000>;
+ reg-names = "ufs_mem", "ufs_ice";
+ interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>;
+ phys = <&ufs2phy_mem>;
+ phy-names = "ufsphy";
+ #reset-cells = <1>;
+
+ lanes-per-direction = <2>;
+ dev-ref-clk-freq = <0>; /* 19.2 MHz */
+
+ vdd-hba-supply = <&gcc_ufs_card_gdsc>;
+ vdd-hba-fixed-regulator;
+
+ vcc-supply = <&L10C0>;
+ vcc-voltage-level = <2504000 2504000>;
+ vcc-max-microamp = <800000>;
+
+ vccq-supply = <&L3C0>;
+ vccq-max-microamp = <750000>;
+
+ qcom,vddp-ref-clk-supply = <&L3C0>;
+ qcom,vddp-ref-clk-max-microamp = <100>;
+ clock-names =
+ "core_clk",
+ "bus_aggr_clk",
+ "iface_clk",
+ "core_clk_unipro",
+ "core_clk_ice",
+ "ref_clk",
+ "tx_lane0_sync_clk",
+ "rx_lane0_sync_clk",
+ "rx_lane1_sync_clk";
+ clocks =
+ <&gcc GCC_UFS_CARD_AXI_CLK>,
+ <&gcc GCC_AGGRE_UFS_CARD_AXI_CLK>,
+ <&gcc GCC_UFS_CARD_AHB_CLK>,
+ <&gcc GCC_UFS_CARD_UNIPRO_CORE_CLK>,
+ <&gcc GCC_UFS_CARD_ICE_CORE_CLK>,
+ <&dummycc RPMH_CXO_CLK>,
+ <&gcc GCC_UFS_CARD_TX_SYMBOL_0_CLK>,
+ <&gcc GCC_UFS_CARD_RX_SYMBOL_0_CLK>,
+ <&gcc GCC_UFS_CARD_RX_SYMBOL_1_CLK>;
+ freq-table-hz =
+ <75000000 300000000>,
+ <0 0>,
+ <0 0>,
+ <75000000 300000000>,
+ <75000000 300000000>,
+ <0 0>,
+ <0 0>,
+ <0 0>,
+ <0 0>;
+
+ qcom,ufs-bus-bw,name = "ufshc_mem";
+ qcom,ufs-bus-bw,num-cases = <26>;
+ qcom,ufs-bus-bw,num-paths = <2>;
+ qcom,ufs-bus-bw,vectors-KBps =
+ /*
+ * During HS G3 UFS runs at nominal voltage corner, vote
+ * higher bandwidth to push other buses in the data path
+ * to run at nominal to achieve max throughput.
+ * 4GBps pushes BIMC to run at nominal.
+ * 200MBps pushes CNOC to run at nominal.
+ * Vote for half of this bandwidth for HS G3 1-lane.
+ * For max bandwidth, vote high enough to push the buses
+ * to run in turbo voltage corner.
+ */
+ <0 0>, <0 0>, /* No vote */
+ <922 0>, <1000 0>, /* PWM G1 */
+ <1844 0>, <1000 0>, /* PWM G2 */
+ <3688 0>, <1000 0>, /* PWM G3 */
+ <7376 0>, <1000 0>, /* PWM G4 */
+ <1844 0>, <1000 0>, /* PWM G1 L2 */
+ <3688 0>, <1000 0>, /* PWM G2 L2 */
+ <7376 0>, <1000 0>, /* PWM G3 L2 */
+ <14752 0>, <1000 0>, /* PWM G4 L2 */
+ <127796 0>, <1000 0>, /* HS G1 RA */
+ <255591 0>, <1000 0>, /* HS G2 RA */
+ <1492582 0>, <102400 0>, /* HS G3 RA */
+ <2915200 0>, <204800 0>, /* HS G4 RA */
+ <255591 0>, <1000 0>, /* HS G1 RA L2 */
+ <511181 0>, <1000 0>, /* HS G2 RA L2 */
+ <1492582 0>, <204800 0>, /* HS G3 RA L2 */
+ <2915200 0>, <409600 0>, /* HS G4 RA L2 */
+ <149422 0>, <1000 0>, /* HS G1 RB */
+ <298189 0>, <1000 0>, /* HS G2 RB */
+ <1492582 0>, <102400 0>, /* HS G3 RB */
+ <2915200 0>, <204800 0>, /* HS G4 RB */
+ <298189 0>, <1000 0>, /* HS G1 RB L2 */
+ <596378 0>, <1000 0>, /* HS G2 RB L2 */
+ /* As UFS working in HS G3 RB L2 mode, aggregated
+ * bandwidth (AB) should take care of providing
+ * optimum throughput requested. However, as tested,
+ * in order to scale up CNOC clock, instantaneous
+ * bindwidth (IB) needs to be given a proper value too.
+ */
+ <1492582 0>, <204800 409600>, /* HS G3 RB L2 KBPs */
+ <2915200 0>, <409600 409600>, /* HS G4 RB L2 */
+ <7643136 0>, <307200 0>; /* Max. bandwidth */
+
+ qcom,bus-vector-names = "MIN",
+ "PWM_G1_L1", "PWM_G2_L1", "PWM_G3_L1", "PWM_G4_L1",
+ "PWM_G1_L2", "PWM_G2_L2", "PWM_G3_L2", "PWM_G4_L2",
+ "HS_RA_G1_L1", "HS_RA_G2_L1", "HS_RA_G3_L1", "HS_RA_G4_L1",
+ "HS_RA_G1_L2", "HS_RA_G2_L2", "HS_RA_G3_L2", "HS_RA_G4_L2",
+ "HS_RB_G1_L1", "HS_RB_G2_L1", "HS_RB_G3_L1", "HS_RB_G4_L1",
+ "HS_RB_G1_L2", "HS_RB_G2_L2", "HS_RB_G3_L2", "HS_RB_G4_L2",
+ "MAX";
+
+ reset-gpios = <&tlmm 229 GPIO_ACTIVE_LOW>;
+
+ resets = <&gcc GCC_UFS_CARD_BCR>;
+ reset-names = "rst";
+
+ iommus = <&apps_smmu 0x4a0 0x0>;
+ qcom,iommu-dma = "bypass";
+ dma-coherent;
+
+ qcom,disable-lpm;
+ rpm-level = <0>;
+ spm-level = <0>;
+
+ secondary-storage;
+ status = "disabled";
+ };
+};
diff --git a/qcom/direwolf-vm.dtsi b/qcom/direwolf-vm.dtsi
index cabf6936..5551e507 100755
--- a/qcom/direwolf-vm.dtsi
+++ b/qcom/direwolf-vm.dtsi
@@ -14,17 +14,6 @@
pci-domain3 = &pcie3; /* PCIe3 domain */
pci-domain4 = &pcie4; /* PCIe4 domain */
};
-
- firmware:firmware {
- android {
- /delete-property/ boot_devices;
- fstab {
- vendor {
- fsmgr_flags = "wait";
- };
- };
- };
- };
};
&soc {
@@ -190,10 +179,6 @@
clock-names = "km_clk_src";
};
- cpu_pmu: cpu-pmu {
- compatible = "arm,armv8-pmuv3";
- };
-
qtee_shmbridge {
compatible = "qcom,tee-shared-memory-bridge";
/*Boolean property to disable shmbridge*/
@@ -496,6 +481,7 @@
#include "direwolf-vm-usb.dtsi"
#include "direwolf-vm-pcie.dtsi"
#include "direwolf-cnss.dtsi"
+#include "direwolf-vm-ufs.dtsi"
&qupv3_0 {
/delete-property/ qcom,msm-bus,num-paths;
@@ -511,3 +497,7 @@
/delete-property/ qcom,msm-bus,num-paths;
/delete-property/ qcom,msm-bus,vectors-bus-ids;
};
+
+&cpu_pmu {
+ interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_LOW>;
+};
diff --git a/qcom/holi-audio.dtsi b/qcom/holi-audio.dtsi
index 4014574b..a0c2b967 100755
--- a/qcom/holi-audio.dtsi
+++ b/qcom/holi-audio.dtsi
@@ -153,8 +153,10 @@
"msm-pcm-afe", "msm-lsm-client",
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
- asoc-cpu = <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
+ asoc-cpu = <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
<&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>,
@@ -181,6 +183,8 @@
<&rx_cdc_dma_7_rx>,<&afe_loopback_tx>;
asoc-cpu-names = "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4",
diff --git a/qcom/holi-pmic-overlay.dtsi b/qcom/holi-pmic-overlay.dtsi
index 4909413f..3be69a50 100755
--- a/qcom/holi-pmic-overlay.dtsi
+++ b/qcom/holi-pmic-overlay.dtsi
@@ -1,6 +1,7 @@
#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/iio/qti_power_supply_iio.h>
+#include <dt-bindings/clock/qcom,rpmcc.h>
#include "pm6350.dtsi"
#include "pm7250b.dtsi"
@@ -192,6 +193,17 @@
qcom,hw-settle-time = <200>;
};
};
+
+ pm6150l_clkdiv: clock-controller@5b00 {
+ compatible = "qcom,spmi-clkdiv";
+ reg = <0x5b00>;
+ #clock-cells = <1>;
+ qcom,num-clkdivs = <1>;
+ clock-output-names = "pm6150l_div_clk1";
+ clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
+ clock-names = "xo";
+ status = "disabled";
+ };
};
};
diff --git a/qcom/lahaina-audio.dtsi b/qcom/lahaina-audio.dtsi
index c891c458..86444648 100755
--- a/qcom/lahaina-audio.dtsi
+++ b/qcom/lahaina-audio.dtsi
@@ -112,9 +112,13 @@
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
asoc-cpu = <&dai_dp>, <&dai_dp1>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_mi2s5>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_mi2s5_rx>, <&dai_mi2s5_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&dai_sen_auxpcm>,
@@ -149,6 +153,9 @@
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
"msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-mi2s.10", "msm-dai-q6-mi2s.11",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
diff --git a/qcom/lemans.dtsi b/qcom/lemans.dtsi
index 09f3e780..ac72c22b 100755
--- a/qcom/lemans.dtsi
+++ b/qcom/lemans.dtsi
@@ -1,3 +1,9 @@
+#include <dt-bindings/clock/qcom,rpmh.h>
+#include <dt-bindings/clock/qcom,camcc-lemans.h>
+#include <dt-bindings/clock/qcom,dispcc-lemans.h>
+#include <dt-bindings/clock/qcom,gcc-lemans.h>
+#include <dt-bindings/clock/qcom,gpucc-lemans.h>
+#include <dt-bindings/clock/qcom,videocc-lemans.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
/ {
@@ -286,4 +292,334 @@
status = "disabled";
};
};
+
+ clocks {
+ xo_board: xo_board {
+ compatible = "fixed-clock";
+ clock-frequency = <19200000>;
+ clock-output-names = "xo_board";
+ #clock-cells = <0>;
+ };
+
+ bi_tcxo: bi_tcxo {
+ compatible = "fixed-factor-clock";
+ clock-mult = <1>;
+ clock-div = <1>;
+ clocks = <&xo_board>;
+ clock-output-names = "bi_tcxo";
+ #clock-cells = <0>;
+ };
+
+ bi_tcxo_ao: bi_tcxo_ao {
+ compatible = "fixed-factor-clock";
+ clock-mult = <1>;
+ clock-div = <1>;
+ clocks = <&xo_board>;
+ clock-output-names = "bi_tcxo_ao";
+ #clock-cells = <0>;
+ };
+
+ sleep_clk: sleep_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <32000>;
+ clock-output-names = "sleep_clk";
+ #clock-cells = <0>;
+ };
+
+ pcie_0_pipe_clk: pcie_0_pipe_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "pcie_0_pipe_clk";
+ #clock-cells = <0>;
+ };
+
+ pcie_1_pipe_clk: pcie_1_pipe_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "pcie_1_pipe_clk";
+ #clock-cells = <0>;
+ };
+
+ pcie_phy_aux_clk: pcie_phy_aux_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "pcie_phy_aux_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_card_rx_symbol_0_clk: ufs_card_rx_symbol_0_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_card_rx_symbol_0_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_card_rx_symbol_1_clk: ufs_card_rx_symbol_1_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_card_rx_symbol_1_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_card_tx_symbol_0_clk: ufs_card_tx_symbol_0_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_card_tx_symbol_0_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_phy_rx_symbol_0_clk: ufs_phy_rx_symbol_0_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_phy_rx_symbol_0_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_phy_rx_symbol_1_clk: ufs_phy_rx_symbol_1_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_phy_rx_symbol_1_clk";
+ #clock-cells = <0>;
+ };
+
+ ufs_phy_tx_symbol_0_clk: ufs_phy_tx_symbol_0_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "ufs_phy_tx_symbol_0_clk";
+ #clock-cells = <0>;
+ };
+
+ usb3_phy_wrapper_gcc_usb30_prim_pipe_clk: usb3_phy_wrapper_gcc_usb30_prim_pipe_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "usb3_phy_wrapper_gcc_usb30_prim_pipe_clk";
+ #clock-cells = <0>;
+ };
+
+ usb3_phy_wrapper_gcc_usb30_sec_pipe_clk: usb3_phy_wrapper_gcc_usb30_sec_pipe_clk {
+ compatible = "fixed-clock";
+ clock-frequency = <1000>;
+ clock-output-names = "usb3_phy_wrapper_gcc_usb30_sec_pipe_clk";
+ #clock-cells = <0>;
+ };
+ };
+
+ rpmhcc: qcom,rpmhcc {
+ compatible = "qcom,dummycc";
+ clock-output-names = "rpmhcc_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ camcc: clock-controller@ade0000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "camcc_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ dispcc0: clock-controller@af00000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "dispcc0_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ dispcc1: clock-controller@22100000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "dispcc1_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ gcc: clock-controller@100000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "gcc_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ gpucc: clock-controller@3d90000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "gpucc_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+
+ videocc: clock-controller@abf0000 {
+ compatible = "qcom,dummycc";
+ clock-output-names = "videocc_clocks";
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+ };
+};
+
+#include "direwolf-gdsc.dtsi"
+
+&cam_cc_titan_top_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xadf31bc 0x4>;
+ status = "ok";
+};
+
+&disp0_cc_mdss_core_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xaf09000 0x4>;
+ status = "ok";
+};
+
+&disp0_cc_mdss_core_int2_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xaf0d000 0x4>;
+ status = "ok";
+};
+
+&disp1_cc_mdss_core_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x22109000 0x4>;
+ status = "ok";
+};
+
+&disp1_cc_mdss_core_int2_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x2210d000 0x4>;
+ status = "ok";
+};
+
+&gcc_emac0_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x1b6004 0x4>;
+ status = "ok";
+};
+
+&gcc_emac1_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x1b4004 0x4>;
+ status = "ok";
+};
+
+&gcc_pcie_0_gdsc {
+ status = "ok";
+};
+
+&gcc_pcie_1_gdsc {
+ status = "ok";
+};
+
+&gcc_ufs_card_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x181004 0x4>;
+ status = "ok";
+};
+
+&gcc_ufs_phy_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x183004 0x4>;
+ status = "ok";
+};
+
+&gcc_usb20_prim_gdsc {
+ status = "ok";
+};
+
+&gcc_usb30_prim_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x11b004 0x4>;
+ status = "ok";
+};
+
+&gcc_usb30_sec_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x12f004 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_mmnoc_mmu_tbu_hf0_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d050 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_mmnoc_mmu_tbu_hf1_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d058 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_mmnoc_mmu_tbu_sf0_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d054 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_mmnoc_mmu_tbu_sf1_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d06c 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_turing_mmu_tbu0_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x17d05c 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_turing_mmu_tbu1_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d060 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_turing_mmu_tbu2_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d090 0x4>;
+ status = "ok";
+};
+
+&hlos1_vote_turing_mmu_tbu3_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x18d0a4 0x4>;
+ status = "ok";
+};
+
+&gpu_cc_cx_gdsc_hw_ctrl {
+ compatible = "syscon";
+ reg = <0x3d9953c 0x4>;
+ status = "ok";
+};
+
+&gpu_cc_cx_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x3d99108 0x4>;
+ status = "ok";
+};
+
+&gpu_cc_gx_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0x3d9905c 0x4>;
+ status = "ok";
+};
+
+&video_cc_mvs0_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xabf809c 0x4>;
+ status = "ok";
+};
+
+&video_cc_mvs0c_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xabf804c 0x4>;
+ status = "ok";
+};
+
+&video_cc_mvs1_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xabf80c0 0x4>;
+ status = "ok";
+};
+
+&video_cc_mvs1c_gdsc {
+ compatible = "regulator-fixed";
+ reg = <0xabf8074 0x4>;
+ status = "ok";
};
diff --git a/qcom/monaco-1gb.dts b/qcom/monaco-1gb.dts
deleted file mode 100755
index 96af2949..00000000
--- a/qcom/monaco-1gb.dts
+++ /dev/null
@@ -1,9 +0,0 @@
-/dts-v1/;
-
-#include "monaco-1gb.dtsi"
-
-/ {
- model = "Qualcomm Technologies, Inc. Monaco 1 GB SoC ";
- compatible = "qcom,monaco";
- qcom,board-id = <0 0x300>;
-};
diff --git a/qcom/monaco-1gb.dtsi b/qcom/monaco-1gb.dtsi
deleted file mode 100755
index 7c26c724..00000000
--- a/qcom/monaco-1gb.dtsi
+++ /dev/null
@@ -1,11 +0,0 @@
-#include "monaco.dtsi"
-
-/ {
- reserved-memory {
- /delete-node/deepsleep_region@45700000;
- };
-};
-
-&removed_region {
- reg = <0x0 0x61000000 0x0 0x0B00000>;
-};
diff --git a/qcom/monaco-atp-v1-overlay.dts b/qcom/monaco-atp-v1-overlay.dts
index acea30f5..5329fc12 100755
--- a/qcom/monaco-atp-v1-overlay.dts
+++ b/qcom/monaco-atp-v1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-atp-v1.dtsi"
+#include "monaco-slate-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco ATP V1.0";
diff --git a/qcom/monaco-camera-v1.1.dtsi b/qcom/monaco-camera-v1.1.dtsi
new file mode 100755
index 00000000..08f68058
--- /dev/null
+++ b/qcom/monaco-camera-v1.1.dtsi
@@ -0,0 +1,8 @@
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/clock/qcom,gcc-monaco.h>
+#include <dt-bindings/interconnect/qcom,monaco.h>
+#include <dt-bindings/regulator/qcom,rpm-smd-regulator.h>
+#include "camera/monaco-camera.dtsi"
+#include "camera/monaco-camera-sensor-idp.dtsi"
+
+
diff --git a/qcom/monaco-idp-v1-common.dtsi b/qcom/monaco-idp-v1-common.dtsi
index f643efea..2d5226a7 100755
--- a/qcom/monaco-idp-v1-common.dtsi
+++ b/qcom/monaco-idp-v1-common.dtsi
@@ -2,9 +2,8 @@
#include "monaco-haptics-fifo-data.dtsi"
&dsi_rm69090_amoled_cmd {
- qcom,panel-supply-entries = <&dsi_panel_pwr_supply_no_labibb>;
+ qcom,panel-supply-entries = <&dsi_panel_pwr_supply_nolab_amoled>;
qcom,platform-reset-gpio = <&pm5100_gpios 2 0>;
- qcom,platform-reset-gpio-always-on;
qcom,platform-en-gpio = <&pm5100_gpios 1 0>;
};
diff --git a/qcom/monaco-idp-v1-overlay.dts b/qcom/monaco-idp-v1-overlay.dts
index 2d46bdbd..d75494c7 100755
--- a/qcom/monaco-idp-v1-overlay.dts
+++ b/qcom/monaco-idp-v1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-idp-v1.dtsi"
+#include "monaco-slate-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco IDP V1.0";
diff --git a/qcom/monaco-idp-v1.1-overlay.dts b/qcom/monaco-idp-v1.1-overlay.dts
index 42a50cb6..ad26d489 100755
--- a/qcom/monaco-idp-v1.1-overlay.dts
+++ b/qcom/monaco-idp-v1.1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-idp-v1.1.dtsi"
+#include "monaco-slate-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco Aon IDP V1.1";
diff --git a/qcom/monaco-idp-v1.1.dtsi b/qcom/monaco-idp-v1.1.dtsi
index 9c1f29e7..2ae9cb82 100755
--- a/qcom/monaco-idp-v1.1.dtsi
+++ b/qcom/monaco-idp-v1.1.dtsi
@@ -1,9 +1,4 @@
-#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/clock/qcom,gcc-monaco.h>
-#include <dt-bindings/interconnect/qcom,monaco.h>
-#include <dt-bindings/regulator/qcom,rpm-smd-regulator.h>
-#include "camera/monaco-camera.dtsi"
-#include "camera/monaco-camera-sensor-idp.dtsi"
+#include "monaco-camera-v1.1.dtsi"
#include "monaco-idp-v1.dtsi"
diff --git a/qcom/monaco-idp-v1.dtsi b/qcom/monaco-idp-v1.dtsi
index 6aa7602c..bff6b46b 100755
--- a/qcom/monaco-idp-v1.dtsi
+++ b/qcom/monaco-idp-v1.dtsi
@@ -1,8 +1,8 @@
#include "monaco-idp-v1-common.dtsi"
#include "slate.dtsi"
-#include "monaco-slate-audio-overlay.dtsi"
#include <dt-bindings/iio/qcom,spmi-adc5-gen3-pm5100.h>
#include <dt-bindings/iio/qti_power_supply_iio.h>
+#include <dt-bindings/clock/qcom,rpmcc.h>
&sdhc_1 {
status = "ok";
@@ -32,6 +32,10 @@
};
};
+&icnss {
+ qcom,is_slate_rfa = <1>;
+};
+
&qupv3_se5_4uart {
status = "ok";
};
@@ -66,3 +70,35 @@
};
};
};
+
+&pm5100_gpios {
+ nfc_clk {
+ nfc_clk_default: nfc_clk_default {
+ pins = "gpio4";
+ function = "normal";
+ input-enable;
+ power-source = <1>;
+ };
+ };
+};
+
+&qupv3_se0_i2c {
+ status = "ok";
+ nq@28 {
+ compatible = "qcom,sn-nci";
+ reg = <0x28>;
+ qcom,sn-irq = <&tlmm 7 0x00>;
+ qcom,sn-ven = <&tlmm 6 0x00>;
+ qcom,sn-firm = <&tlmm 8 0x00>;
+ qcom,sn-clkreq = <&pm5100_gpios 4 0x00>;
+ interrupt-parent = <&tlmm>;
+ qcom,clk-src = "LNBBCLK3";
+ interrupts = <7 0>;
+ interrupt-names = "nfc_irq";
+ pinctrl-names = "nfc_active", "nfc_suspend";
+ pinctrl-0 = <&nfc_int_active &nfc_enable_active &nfc_clk_default>;
+ pinctrl-1 = <&nfc_int_suspend &nfc_enable_suspend>;
+ clocks = <&rpmcc RPM_SMD_LN_BB_CLK3_PIN>;
+ clock-names = "ref_clk";
+ };
+};
diff --git a/qcom/monaco-idp-v2-overlay.dts b/qcom/monaco-idp-v2-overlay.dts
index 24f7976e..644f3a5e 100755
--- a/qcom/monaco-idp-v2-overlay.dts
+++ b/qcom/monaco-idp-v2-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-idp-v2.dtsi"
+#include "monaco-slate-amic-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco IDP V2.0";
diff --git a/qcom/monaco-idp-v2.1-overlay.dts b/qcom/monaco-idp-v2.1-overlay.dts
index bfa936d1..12613af3 100755
--- a/qcom/monaco-idp-v2.1-overlay.dts
+++ b/qcom/monaco-idp-v2.1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-idp-v2.1.dtsi"
+#include "monaco-slate-amic-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco Aon IDP V2.1";
diff --git a/qcom/monaco-idp-v3-overlay.dts b/qcom/monaco-idp-v3-overlay.dts
index 8dd05c6e..47e79913 100755
--- a/qcom/monaco-idp-v3-overlay.dts
+++ b/qcom/monaco-idp-v3-overlay.dts
@@ -2,7 +2,7 @@
/plugin/;
#include "monaco-idp-v3.dtsi"
-
+#include "monaco-slate-wsa-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco IDP V3.0";
qcom,board-id = <0x030022 0x0>;
diff --git a/qcom/monaco-idp-v3.1-overlay.dts b/qcom/monaco-idp-v3.1-overlay.dts
index 95617ef8..dd132c90 100755
--- a/qcom/monaco-idp-v3.1-overlay.dts
+++ b/qcom/monaco-idp-v3.1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-idp-v3.1.dtsi"
+#include "monaco-slate-wsa-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco Aon IDP V3.1";
diff --git a/qcom/monaco-pmic.dtsi b/qcom/monaco-pmic.dtsi
index fcedc97a..24c37805 100755
--- a/qcom/monaco-pmic.dtsi
+++ b/qcom/monaco-pmic.dtsi
@@ -17,7 +17,7 @@
sde_dsi_active: sde_dsi_active {
pinconf {
pins = "gpio1", "gpio2";
- function = "PMIC_GPIO_FUNC_NORMAL";
+ function = "normal";
qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
bias-disable;
output-high;
@@ -27,7 +27,7 @@
sde_dsi_suspend: sde_dsi_suspend {
pinconf {
pins = "gpio1", "gpio2";
- function = "PMIC_GPIO_FUNC_NORMAL";
+ function = "normal";
qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
bias-pull-down;
output-low;
diff --git a/qcom/monaco-slate-audio-overlay.dtsi b/qcom/monaco-slate-audio-overlay.dtsi
index 36bbdf3d..080e4d76 100755
--- a/qcom/monaco-slate-audio-overlay.dtsi
+++ b/qcom/monaco-slate-audio-overlay.dtsi
@@ -13,5 +13,5 @@
asoc-codec-names = "cc_codec";
qcom,quat-mi2s-gpios = <&cc_quat_mi2s_gpios>;
qcom,pri-mi2s-gpios = <&cc_pri_mi2s_gpios>;
- qcom,msm_audio_ssr_devs = <&audio_gpr>, <&lpi_tlmm>;
+ qcom,msm_audio_ssr_devs = <&audio_gpr>, <&lpi_tlmm>, <&audio_cc_ipc_platform>, <&cc_codec>;
};
diff --git a/qcom/monaco-standalone-atp-v1.dts b/qcom/monaco-standalone-atp-v1.dts
index 86a39057..458ad616 100755
--- a/qcom/monaco-standalone-atp-v1.dts
+++ b/qcom/monaco-standalone-atp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
#include "monaco-standalone-atp-v1.dtsi"
/ {
diff --git a/qcom/monaco-standalone-idp-v1.dts b/qcom/monaco-standalone-idp-v1.dts
index 82389ca5..d5e81502 100755
--- a/qcom/monaco-standalone-idp-v1.dts
+++ b/qcom/monaco-standalone-idp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
#include "monaco-standalone-idp-v1.dtsi"
/ {
diff --git a/qcom/monaco-standalone-idp-v1.dtsi b/qcom/monaco-standalone-idp-v1.dtsi
index 6cd284d9..0f55fa6f 100755
--- a/qcom/monaco-standalone-idp-v1.dtsi
+++ b/qcom/monaco-standalone-idp-v1.dtsi
@@ -62,13 +62,21 @@
qcom,battery-data = <&monaco_batterydata>;
#io-channel-cells = <1>;
io-channels = <&pm5100_adc PM5100_ADC5_GEN3_BATT_THM_100K_PU>,
- <&pm5100_adc PM5100_ADC5_GEN3_BAT_ID_100K_PU>;
+ <&pm5100_adc PM5100_ADC5_GEN3_BAT_ID_100K_PU>,
+ <&pm5100_charger PSY_IIO_CHARGE_DONE>,
+ <&pm5100_charger PSY_IIO_RECHARGE_SOC>,
+ <&pm5100_charger PSY_IIO_FORCE_RECHARGE>,
+ <&pm5100_charger PSY_IIO_SYS_SOC>;
io-channel-names = "batt-temp",
- "batt-id";
+ "batt-id",
+ "charge_done",
+ "recharge_soc",
+ "force_recharge",
+ "sys_soc";
qcom,vbat-cutoff-mv = <3100>;
- qcom,ibat-cutoff-ma = <150>;
+ qcom,ibat-cutoff-ma = <10>;
qcom,vph-min-mv = <2500>;
- qcom,iterm-ma = <100>;
+ qcom,iterm-ma = <20>;
};
&pm5100_charger {
diff --git a/qcom/monaco-standalone-idp-v2.dts b/qcom/monaco-standalone-idp-v2.dts
index 29115945..0a036163 100755
--- a/qcom/monaco-standalone-idp-v2.dts
+++ b/qcom/monaco-standalone-idp-v2.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
#include "monaco-standalone-idp-v2.dtsi"
/ {
diff --git a/qcom/monaco-standalone-idp-v3.dts b/qcom/monaco-standalone-idp-v3.dts
index 4eeccc2b..67f6c84c 100755
--- a/qcom/monaco-standalone-idp-v3.dts
+++ b/qcom/monaco-standalone-idp-v3.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
#include "monaco-standalone-idp-v3.dtsi"
/ {
diff --git a/qcom/monaco-standalone-wdp-v1.dts b/qcom/monaco-standalone-wdp-v1.dts
index d9e1c068..38fcfed0 100755
--- a/qcom/monaco-standalone-wdp-v1.dts
+++ b/qcom/monaco-standalone-wdp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
#include "monaco-standalone-wdp-v1.dtsi"
/ {
diff --git a/qcom/monaco-standalone.dts b/qcom/monaco-standalone.dts
new file mode 100755
index 00000000..e1a96ed9
--- /dev/null
+++ b/qcom/monaco-standalone.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "monaco-standalone.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Monaco SoC ";
+ compatible = "qcom,monaco";
+ qcom,board-id = <0 0x1>;
+};
diff --git a/qcom/monaco-standalone.dtsi b/qcom/monaco-standalone.dtsi
new file mode 100755
index 00000000..79a11e94
--- /dev/null
+++ b/qcom/monaco-standalone.dtsi
@@ -0,0 +1,15 @@
+#include "monaco.dtsi"
+
+/ {
+ reserved-memory {
+ /delete-node/oda_region@45700000;
+ };
+};
+
+&removed_region {
+ reg = <0x0 0x60e00000 0x0 0x01100000>;
+};
+
+&xbl_aop_mem {
+ reg = <0x0 0x45e00000 0x0 0x110000>;
+};
diff --git a/qcom/monaco-wdp-v1-overlay.dts b/qcom/monaco-wdp-v1-overlay.dts
index f146b0b7..a8ccb59a 100755
--- a/qcom/monaco-wdp-v1-overlay.dts
+++ b/qcom/monaco-wdp-v1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-wdp-v1.dtsi"
+#include "monaco-slate-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco WDP V1.0";
diff --git a/qcom/monaco-wdp-v1.1-overlay.dts b/qcom/monaco-wdp-v1.1-overlay.dts
index b8036d66..c7586341 100755
--- a/qcom/monaco-wdp-v1.1-overlay.dts
+++ b/qcom/monaco-wdp-v1.1-overlay.dts
@@ -2,6 +2,7 @@
/plugin/;
#include "monaco-wdp-v1.1.dtsi"
+#include "monaco-slate-audio-overlay.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco WDP V1.1";
diff --git a/qcom/monaco-wdp-v1.1.dtsi b/qcom/monaco-wdp-v1.1.dtsi
index c41375f6..fd2d3400 100755
--- a/qcom/monaco-wdp-v1.1.dtsi
+++ b/qcom/monaco-wdp-v1.1.dtsi
@@ -1,2 +1,2 @@
-#include "monaco-idp-v1.1.dtsi"
-#include "monaco-wdp.dtsi"
+#include "monaco-camera-v1.1.dtsi"
+#include "monaco-wdp-v1.dtsi"
diff --git a/qcom/monaco-wdp-v1.dtsi b/qcom/monaco-wdp-v1.dtsi
index 3473a563..f02b4f40 100755
--- a/qcom/monaco-wdp-v1.dtsi
+++ b/qcom/monaco-wdp-v1.dtsi
@@ -1,2 +1,12 @@
#include "monaco-idp-v1.dtsi"
#include "monaco-wdp.dtsi"
+
+&dsi_rm6d030_amoled_cmd {
+ qcom,panel-supply-entries = <&dsi_panel_pwr_supply_nolab_amoled>;
+ qcom,platform-reset-gpio = <&pm5100_gpios 2 0>;
+ qcom,platform-en-gpio = <&pm5100_gpios 1 0>;
+};
+
+&sde_dsi {
+ qcom,dsi-default-panel = <&dsi_rm6d030_amoled_cmd>;
+};
diff --git a/qcom/monaco.dtsi b/qcom/monaco.dtsi
index 166939dd..88188d53 100755
--- a/qcom/monaco.dtsi
+++ b/qcom/monaco.dtsi
@@ -167,9 +167,14 @@
#size-cells = <2>;
ranges;
- deepsleep_region: deepsleep_region@45700000 {
+ oda_region: oda_region@45700000 {
no-map;
- reg = <0x0 0x45700000 0x0 0x400000>;
+ reg = <0x0 0x45700000 0x0 0x300000>;
+ };
+
+ deepsleep_region: deepsleep_region@45A00000 {
+ no-map;
+ reg = <0x0 0x45A00000 0x0 0x100000>;
};
hyp_region: hyp_region@45B00000 {
@@ -179,7 +184,7 @@
xbl_aop_mem: xbl_aop_mem@45e00000 {
no-map;
- reg = <0x0 0x45e00000 0x0 0x110000>;
+ reg = <0x0 0x45e00000 0x0 0x11A000>;
};
sec_apps_mem: sec_apps_region@45fff000 {
@@ -852,13 +857,15 @@
<&adsp_smp2p_in 0 0>,
<&adsp_smp2p_in 2 0>,
<&adsp_smp2p_in 1 0>,
- <&adsp_smp2p_in 3 0>;
+ <&adsp_smp2p_in 3 0>,
+ <&adsp_smp2p_in 9 0>;
interrupt-names = "qcom,wdog",
"qcom,err-fatal",
"qcom,proxy-unvote",
"qcom,err-ready",
- "qcom,stop-ack";
+ "qcom,stop-ack",
+ "qcom,dsentry-ack";
/* Outputs to lpass */
qcom,smem-states = <&adsp_smp2p_out 0>;
@@ -895,14 +902,16 @@
<&modem_smp2p_in 2 0>,
<&modem_smp2p_in 1 0>,
<&modem_smp2p_in 3 0>,
- <&modem_smp2p_in 7 0>;
+ <&modem_smp2p_in 7 0>,
+ <&modem_smp2p_in 9 0>;
interrupt-names = "qcom,wdog",
"qcom,err-fatal",
"qcom,proxy-unvote",
"qcom,err-ready",
"qcom,stop-ack",
- "qcom,shutdown-ack";
+ "qcom,shutdown-ack",
+ "qcom,dsentry-ack";
/* Outputs to mss */
qcom,smem-states = <&modem_smp2p_out 0>;
@@ -933,12 +942,12 @@
qcom,iommu-dma-addr-pool = <0xa0000000 0x10000000>;
qcom,iommu-geometry = <0xa0000000 0x10010000>;
vdd-cx-mx-supply = <&L8A>;
- qcom,vdd-cx-mx-config = <640000 640000>;
+ qcom,vdd-cx-mx-config = <640000 640000 1>;
vdd-1.8-xo-supply = <&L14A>;
vdd-1.3-rfa-supply = <&L13A>;
- qcom,vdd-1.3-rfa-config = <1304000 1304000>;
+ qcom,vdd-1.3-rfa-config = <1304000 1304000 1>;
vdd-3.3-ch0-supply = <&L26A>;
- qcom,vdd-3.3-ch0-config = <3304000 3304000>;
+ qcom,vdd-3.3-ch0-config = <3304000 3304000 1>;
qcom,smp2p_map_wlan_1_in {
interrupts-extended = <&smp2p_wlan_1_in 0 0>,
<&smp2p_wlan_1_in 1 0>;
@@ -1061,16 +1070,16 @@
ddr_bw_opp_table: ddr-bw-opp-table {
compatible = "operating-points-v2";
BW_OPP_ENTRY( 200, 4); /* 762 MB/s */ /* Low SVS */
- /* BW_OPP_ENTRY( 300, 4); */ /* 1144 MB/s */ /* Low SVS */
- /* BW_OPP_ENTRY( 451, 4); */ /* 1720 MB/s */ /* Low SVS */
+ BW_OPP_ENTRY( 300, 4); /* 1144 MB/s */ /* Low SVS */
+ BW_OPP_ENTRY( 451, 4); /* 1720 MB/s */ /* Low SVS */
BW_OPP_ENTRY( 547, 4); /* 2086 MB/s */ /* Low SVS */
BW_OPP_ENTRY( 681, 4); /* 2597 MB/s */ /* Low SVS */
BW_OPP_ENTRY( 768, 4); /* 2929 MB/s */ /* SVS */
BW_OPP_ENTRY( 1017, 4); /* 3879 MB/s */ /* SVS */
BW_OPP_ENTRY( 1353, 4); /* 5161 MB/s */ /* SVS */
- /* BW_OPP_ENTRY( 1555, 4); */ /* 5931 MB/s */ /* Nominal */
+ BW_OPP_ENTRY( 1555, 4); /* 5931 MB/s */ /* Nominal */
BW_OPP_ENTRY( 1804, 4); /* 6881 MB/s */ /* Nominal */
- /* BW_OPP_ENTRY( 2092, 4); */ /* 7980 MB/s */ /* Turbo */
+ BW_OPP_ENTRY( 2092, 4); /* 7980 MB/s */ /* Turbo */
};
cpu_cpu_ddr_bw: qcom,cpu-cpu-ddr-bw {
@@ -1900,6 +1909,7 @@ qcom,msm-adsprpc-mem {
qcom,devfreq,freq-table = <50000000 200000000>;
qcom,scaling-lower-bus-speed-mode = "DDR52";
+ qcom,restore-after-cx-collapse;
mmc-ddr-1_8v;
mmc-hs200-1_8v;
@@ -2187,7 +2197,7 @@ qcom,msm-adsprpc-mem {
parade,core {
parade,name = "pt_core";
- parade,irq_gpio = <&tlmm 13 0x00>;
+ parade,irq_gpio = <&tlmm 13 0x2008>;
parade,rst_gpio = <&tlmm 12 0x00>;
parade,hid_desc_register = <1>;
/*
@@ -2201,11 +2211,14 @@ qcom,msm-adsprpc-mem {
*/
parade,flags = <6>;
/* PT_CORE_EWG_NONE */
- parade,easy_wakeup_gesture = <0>;
+ parade,easy_wakeup_gesture = <1>;
/* 0:AUTO 1:PIP1_ONLY 2:PIP2_CAPABLE*/
parade,config_dut_generation = <1>;
/* 0:False 1:True*/
parade,watchdog_force_stop = <0>;
+ panel = <&dsi_rm69090_amoled_cmd
+ &dsi_rm69090_amoled_vid
+ &dsi_rm6d030_amoled_cmd>;
/*
* PT_PANEL_ID_DISABLE = 0x00
* PT_PANEL_ID_BY_BL = 0x01
diff --git a/qcom/monacop-1gb.dts b/qcom/monacop-1gb.dts
deleted file mode 100755
index 75c194e1..00000000
--- a/qcom/monacop-1gb.dts
+++ /dev/null
@@ -1,9 +0,0 @@
-/dts-v1/;
-
-#include "monacop-1gb.dtsi"
-
-/ {
- model = "Qualcomm Technologies, Inc. MonacoP 1GB SoC";
- compatible = "qcom,monacop";
- qcom,board-id = <0 0x300>;
-};
diff --git a/qcom/monacop-standalone-atp-v1.dts b/qcom/monacop-standalone-atp-v1.dts
index f9487ae0..7e04dd90 100755
--- a/qcom/monacop-standalone-atp-v1.dts
+++ b/qcom/monacop-standalone-atp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monacop-1gb.dtsi"
+#include "monacop-standalone.dtsi"
#include "monaco-standalone-atp-v1.dtsi"
/ {
diff --git a/qcom/monacop-standalone-idp-v1.dts b/qcom/monacop-standalone-idp-v1.dts
index 299beb67..8fbb8631 100755
--- a/qcom/monacop-standalone-idp-v1.dts
+++ b/qcom/monacop-standalone-idp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monacop-1gb.dtsi"
+#include "monacop-standalone.dtsi"
#include "monaco-standalone-idp-v1.dtsi"
/ {
diff --git a/qcom/monacop-standalone-idp-v2.dts b/qcom/monacop-standalone-idp-v2.dts
index 3d225a4a..241b8963 100755
--- a/qcom/monacop-standalone-idp-v2.dts
+++ b/qcom/monacop-standalone-idp-v2.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monacop-1gb.dtsi"
+#include "monacop-standalone.dtsi"
#include "monaco-standalone-idp-v2.dtsi"
/ {
diff --git a/qcom/monacop-standalone-idp-v3.dts b/qcom/monacop-standalone-idp-v3.dts
index 87825579..8dd1428f 100755
--- a/qcom/monacop-standalone-idp-v3.dts
+++ b/qcom/monacop-standalone-idp-v3.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monacop-1gb.dtsi"
+#include "monacop-standalone.dtsi"
#include "monaco-standalone-idp-v3.dtsi"
/ {
diff --git a/qcom/monacop-standalone-wdp-v1.dts b/qcom/monacop-standalone-wdp-v1.dts
index dd3bdd64..feef1ab2 100755
--- a/qcom/monacop-standalone-wdp-v1.dts
+++ b/qcom/monacop-standalone-wdp-v1.dts
@@ -1,6 +1,6 @@
/dts-v1/;
-#include "monacop-1gb.dtsi"
+#include "monacop-standalone.dtsi"
#include "monaco-standalone-wdp-v1.dtsi"
/ {
diff --git a/qcom/monacop-standalone.dts b/qcom/monacop-standalone.dts
new file mode 100755
index 00000000..954206fb
--- /dev/null
+++ b/qcom/monacop-standalone.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "monacop-standalone.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. MonacoP SoC";
+ compatible = "qcom,monacop";
+ qcom,board-id = <0 1>;
+};
diff --git a/qcom/monacop-1gb.dtsi b/qcom/monacop-standalone.dtsi
index eb34fbc7..b2b69b8d 100755
--- a/qcom/monacop-1gb.dtsi
+++ b/qcom/monacop-standalone.dtsi
@@ -1,4 +1,4 @@
-#include "monaco-1gb.dtsi"
+#include "monaco-standalone.dtsi"
/ {
model = "Qualcomm Technologies, Inc. MonacoP";
diff --git a/qcom/monacop.dtsi b/qcom/monacop.dtsi
index cb40c32a..3bdf63d1 100755
--- a/qcom/monacop.dtsi
+++ b/qcom/monacop.dtsi
@@ -15,27 +15,3 @@
&ipa_hw {
status = "disabled";
};
-
-&pil_modem_mem {
- reg = <0x0 0x4ab00000 0x0 0x3600000>;
-};
-
-&pil_video_mem {
- reg = <0x0 0x4E100000 0x0 0x500000>;
-};
-
-&pil_adsp_mem {
- reg = <0x0 0x4E600000 0x0 0x1900000>;
-};
-
-&pil_ipa_fw_mem {
- reg = <0x0 0x4FF00000 0x0 0x10000>;
-};
-
-&pil_ipa_gsi_mem {
- reg = <0x0 0x4FF10000 0x0 0x5000>;
-};
-
-&pil_gpu_mem {
- reg = <0x0 0x4FF15000 0x0 0x2000>;
-};
diff --git a/qcom/msm-audio-lpass.dtsi b/qcom/msm-audio-lpass.dtsi
index 2b4eb0ef..a8e23ba3 100755
--- a/qcom/msm-audio-lpass.dtsi
+++ b/qcom/msm-audio-lpass.dtsi
@@ -91,46 +91,76 @@
msm_dai_mi2s: qcom,msm-dai-mi2s {
compatible = "qcom,msm-dai-mi2s";
- dai_mi2s0: qcom,msm-dai-q6-mi2s-prim {
+ dai_mi2s0_rx: qcom,msm-dai-q6-mi2s-prim-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <0>;
- qcom,msm-mi2s-rx-lines = <3>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <3>;
};
- dai_mi2s1: qcom,msm-dai-q6-mi2s-sec {
+ dai_mi2s0_tx: qcom,msm-dai-q6-mi2s-prim-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <1>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s2: qcom,msm-dai-q6-mi2s-tert {
+ dai_mi2s1_rx: qcom,msm-dai-q6-mi2s-sec-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <2>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <1>;
};
- dai_mi2s3: qcom,msm-dai-q6-mi2s-quat {
+ dai_mi2s1_tx: qcom,msm-dai-q6-mi2s-sec-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <3>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s4: qcom,msm-dai-q6-mi2s-quin {
+ dai_mi2s2_rx: qcom,msm-dai-q6-mi2s-tert-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <4>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s5: qcom,msm-dai-q6-mi2s-senary {
+ dai_mi2s2_tx: qcom,msm-dai-q6-mi2s-tert-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <5>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <3>;
+ };
+
+ dai_mi2s3_rx: qcom,msm-dai-q6-mi2s-quat-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <6>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s3_tx: qcom,msm-dai-q6-mi2s-quat-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <7>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s4_rx: qcom,msm-dai-q6-mi2s-quin-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <8>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s4_tx: qcom,msm-dai-q6-mi2s-quin-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <9>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s5_rx: qcom,msm-dai-q6-mi2s-senary-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <10>;
+ qcom,msm-mi2s-lines = <0>;
+ };
+
+ dai_mi2s5_tx: qcom,msm-dai-q6-mi2s-senary-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <11>;
+ qcom,msm-mi2s-lines = <3>;
};
};
diff --git a/qcom/pm5100.dtsi b/qcom/pm5100.dtsi
index 3043ea33..893337c7 100755
--- a/qcom/pm5100.dtsi
+++ b/qcom/pm5100.dtsi
@@ -61,11 +61,13 @@
qcom,dcdc@2700 {
reg = <0x2700>;
interrupts =
+ <0x0 0x27 0x1 IRQ_TYPE_EDGE_BOTH>,
<0x0 0x27 0x4 IRQ_TYPE_EDGE_RISING>,
<0x0 0x27 0x6 IRQ_TYPE_EDGE_RISING>,
<0x0 0x27 0x7 IRQ_TYPE_EDGE_BOTH>;
- interrupt-names = "skip-mode",
+ interrupt-names = "boost-mode-active",
+ "skip-mode",
"input-current-limiting",
"switcher-power-ok";
};
diff --git a/qcom/pm6150l.dtsi b/qcom/pm6150l.dtsi
index 428097af..eae1be6f 100755
--- a/qcom/pm6150l.dtsi
+++ b/qcom/pm6150l.dtsi
@@ -1,4 +1,3 @@
-#include <dt-bindings/clock/qcom,rpmcc.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/iio/qcom,spmi-vadc.h>
#include <dt-bindings/spmi/spmi.h>
@@ -93,17 +92,6 @@
#thermal-sensor-cells = <1>;
};
- pm6150l_clkdiv: clock-controller@5b00 {
- compatible = "qcom,spmi-clkdiv";
- reg = <0x5b00>;
- #clock-cells = <1>;
- qcom,num-clkdivs = <1>;
- clock-output-names = "pm6150l_div_clk1";
- clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
- clock-names = "xo";
- status = "disabled";
- };
-
pm6150l_gpios: pinctrl@c000 {
compatible = "qcom,pm6150l-gpio";
reg = <0xc000>;
diff --git a/qcom/pm7250b.dtsi b/qcom/pm7250b.dtsi
index e423f53f..93bf13c3 100755
--- a/qcom/pm7250b.dtsi
+++ b/qcom/pm7250b.dtsi
@@ -360,9 +360,9 @@
pm7250b_bcl: bcl@1d00 {
compatible = "qcom,bcl-v5";
reg = <0x1d00>;
- interrupts = <0x2 0x1d 0x0 IRQ_TYPE_NONE>,
- <0x2 0x1d 0x1 IRQ_TYPE_NONE>,
- <0x2 0x1d 0x2 IRQ_TYPE_NONE>;
+ interrupts = <0x2 0x1d 0x0 IRQ_TYPE_EDGE_RISING>,
+ <0x2 0x1d 0x1 IRQ_TYPE_EDGE_RISING>,
+ <0x2 0x1d 0x2 IRQ_TYPE_EDGE_RISING>;
interrupt-names = "bcl-lvl0",
"bcl-lvl1",
"bcl-lvl2";
diff --git a/qcom/qrb2210-rb1-audio.dtsi b/qcom/qrb2210-rb1-audio.dtsi
index ac264b7e..df51a6aa 100755
--- a/qcom/qrb2210-rb1-audio.dtsi
+++ b/qcom/qrb2210-rb1-audio.dtsi
@@ -116,8 +116,10 @@
"msm-pcm-afe", "msm-lsm-client",
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
- asoc-cpu = <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
+ asoc-cpu = <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
<&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>,
@@ -143,6 +145,8 @@
<&afe_loopback_tx>;
asoc-cpu-names = "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-dev.224",
diff --git a/qcom/qrb2210-rb1-msm-audio-lpass.dtsi b/qcom/qrb2210-rb1-msm-audio-lpass.dtsi
index 360e984a..88d39d56 100755
--- a/qcom/qrb2210-rb1-msm-audio-lpass.dtsi
+++ b/qcom/qrb2210-rb1-msm-audio-lpass.dtsi
@@ -91,46 +91,76 @@
msm_dai_mi2s: qcom,msm-dai-mi2s {
compatible = "qcom,msm-dai-mi2s";
- dai_mi2s0: qcom,msm-dai-q6-mi2s-prim {
+ dai_mi2s0_rx: qcom,msm-dai-q6-mi2s-prim-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <0>;
- qcom,msm-mi2s-rx-lines = <3>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <3>;
};
- dai_mi2s1: qcom,msm-dai-q6-mi2s-sec {
+ dai_mi2s0_tx: qcom,msm-dai-q6-mi2s-prim-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <1>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s2: qcom,msm-dai-q6-mi2s-tert {
+ dai_mi2s1_rx: qcom,msm-dai-q6-mi2s-sec-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <2>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <1>;
};
- dai_mi2s3: qcom,msm-dai-q6-mi2s-quat {
+ dai_mi2s1_tx: qcom,msm-dai-q6-mi2s-sec-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <3>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s4: qcom,msm-dai-q6-mi2s-quin {
+ dai_mi2s2_rx: qcom,msm-dai-q6-mi2s-tert-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <4>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s5: qcom,msm-dai-q6-mi2s-senary {
+ dai_mi2s2_tx: qcom,msm-dai-q6-mi2s-tert-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <5>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <3>;
+ };
+
+ dai_mi2s3_rx: qcom,msm-dai-q6-mi2s-quat-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <6>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s3_tx: qcom,msm-dai-q6-mi2s-quat-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <7>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s4_rx: qcom,msm-dai-q6-mi2s-quin-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <8>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s4_tx: qcom,msm-dai-q6-mi2s-quin-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <9>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s5_rx: qcom,msm-dai-q6-mi2s-senary-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <10>;
+ qcom,msm-mi2s-lines = <0>;
+ };
+
+ dai_mi2s5_tx: qcom,msm-dai-q6-mi2s-senary-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <11>;
+ qcom,msm-mi2s-lines = <3>;
};
};
diff --git a/qcom/qrb2210-rb1.dtsi b/qcom/qrb2210-rb1.dtsi
index 96782138..167854b2 100755
--- a/qcom/qrb2210-rb1.dtsi
+++ b/qcom/qrb2210-rb1.dtsi
@@ -1661,3 +1661,6 @@
&qupv3_se3_4uart {
status = "ok";
};
+
+#include "camera/qrb2210-rb1-camera.dtsi"
+#include "camera/qrb2210-rb1-camera-sensor-idp.dtsi"
diff --git a/qcom/qrb4210-rb2-audio.dtsi b/qcom/qrb4210-rb2-audio.dtsi
index 371150c8..d2cf3960 100755
--- a/qcom/qrb4210-rb2-audio.dtsi
+++ b/qcom/qrb4210-rb2-audio.dtsi
@@ -116,8 +116,10 @@
"msm-pcm-afe", "msm-lsm-client",
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
- asoc-cpu = <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
+ asoc-cpu = <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
<&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>,
@@ -143,6 +145,8 @@
<&afe_loopback_tx>;
asoc-cpu-names = "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-dev.224",
diff --git a/qcom/qrb4210-rb2-msm-audio-lpass.dtsi b/qcom/qrb4210-rb2-msm-audio-lpass.dtsi
index 360e984a..88d39d56 100755
--- a/qcom/qrb4210-rb2-msm-audio-lpass.dtsi
+++ b/qcom/qrb4210-rb2-msm-audio-lpass.dtsi
@@ -91,46 +91,76 @@
msm_dai_mi2s: qcom,msm-dai-mi2s {
compatible = "qcom,msm-dai-mi2s";
- dai_mi2s0: qcom,msm-dai-q6-mi2s-prim {
+ dai_mi2s0_rx: qcom,msm-dai-q6-mi2s-prim-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <0>;
- qcom,msm-mi2s-rx-lines = <3>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <3>;
};
- dai_mi2s1: qcom,msm-dai-q6-mi2s-sec {
+ dai_mi2s0_tx: qcom,msm-dai-q6-mi2s-prim-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <1>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <0>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s2: qcom,msm-dai-q6-mi2s-tert {
+ dai_mi2s1_rx: qcom,msm-dai-q6-mi2s-sec-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <2>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <1>;
};
- dai_mi2s3: qcom,msm-dai-q6-mi2s-quat {
+ dai_mi2s1_tx: qcom,msm-dai-q6-mi2s-sec-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <3>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s4: qcom,msm-dai-q6-mi2s-quin {
+ dai_mi2s2_rx: qcom,msm-dai-q6-mi2s-tert-rx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <4>;
- qcom,msm-mi2s-rx-lines = <1>;
- qcom,msm-mi2s-tx-lines = <2>;
+ qcom,msm-mi2s-lines = <0>;
};
- dai_mi2s5: qcom,msm-dai-q6-mi2s-senary {
+ dai_mi2s2_tx: qcom,msm-dai-q6-mi2s-tert-tx {
compatible = "qcom,msm-dai-q6-mi2s";
qcom,msm-dai-q6-mi2s-dev-id = <5>;
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <3>;
+ qcom,msm-mi2s-lines = <3>;
+ };
+
+ dai_mi2s3_rx: qcom,msm-dai-q6-mi2s-quat-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <6>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s3_tx: qcom,msm-dai-q6-mi2s-quat-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <7>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s4_rx: qcom,msm-dai-q6-mi2s-quin-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <8>;
+ qcom,msm-mi2s-lines = <1>;
+ };
+
+ dai_mi2s4_tx: qcom,msm-dai-q6-mi2s-quin-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <9>;
+ qcom,msm-mi2s-lines = <2>;
+ };
+
+ dai_mi2s5_rx: qcom,msm-dai-q6-mi2s-senary-rx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <10>;
+ qcom,msm-mi2s-lines = <0>;
+ };
+
+ dai_mi2s5_tx: qcom,msm-dai-q6-mi2s-senary-tx {
+ compatible = "qcom,msm-dai-q6-mi2s";
+ qcom,msm-dai-q6-mi2s-dev-id = <11>;
+ qcom,msm-mi2s-lines = <3>;
};
};
diff --git a/qcom/quin-vm-common.dtsi b/qcom/quin-vm-common.dtsi
index 6ad519ce..6d7b9570 100755
--- a/qcom/quin-vm-common.dtsi
+++ b/qcom/quin-vm-common.dtsi
@@ -328,5 +328,11 @@
qcom,dump-id = <0xe8>;
};
};
+
+ cpu_pmu: cpu-pmu {
+ compatible = "arm,armv8-pmuv3";
+ qcom,irq-is-percpu;
+ interrupts = <GIC_PPI 5 IRQ_TYPE_LEVEL_HIGH>;
+ };
};
diff --git a/qcom/sa410m-pmic.dtsi b/qcom/sa410m-pmic.dtsi
new file mode 100755
index 00000000..cc2e8bc4
--- /dev/null
+++ b/qcom/sa410m-pmic.dtsi
@@ -0,0 +1,164 @@
+#include "pm2250.dtsi"
+
+&pm2250_gpios {
+ skin_therm {
+ skin_therm_default: skin_therm_default {
+ pins = "gpio5";
+ bias-high-impedance;
+ };
+ };
+
+ conn_therm {
+ conn_therm_default: conn_therm_default {
+ pins = "gpio6";
+ bias-high-impedance;
+ };
+ };
+};
+
+&pm2250_vadc {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&conn_therm_default &skin_therm_default>;
+
+ xo_therm {
+ reg = <ADC5_XO_THERM_100K_PU>;
+ label = "xo_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ pa_therm {
+ reg = <ADC5_AMUX_THM1_100K_PU>;
+ label = "pa_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ quiet_therm {
+ reg = <ADC5_AMUX_THM2_100K_PU>;
+ label = "quiet_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ msm_therm {
+ reg = <ADC5_AMUX_THM3_100K_PU>;
+ label = "msm_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ skin_therm {
+ reg = <ADC5_GPIO3_100K_PU>;
+ label = "skin_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ conn_therm {
+ reg = <ADC5_GPIO4_100K_PU>;
+ label = "conn_therm";
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ qcom,pre-scaling = <1 1>;
+ };
+
+ /delete-node/ vbat_sns;
+ /delete-node/ usb_in_v_div_16;
+ /delete-node/ chg_temp;
+ /delete-node/ bat_therm;
+ /delete-node/ bat_therm_30k;
+ /delete-node/ bat_therm_400k;
+ /delete-node/ i_parallel;
+ /delete-node/ bat_id;
+ /delete-node/ die_temp_s3;
+};
+
+&spmi_bus {
+ qcom,pm2250@0 {
+ pm2250_adc_tm_iio: adc_tm@3400 {
+ compatible = "qcom,adc-tm5-iio";
+ reg = <0x3400>;
+ #thermal-sensor-cells = <1>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ io-channels = <&pm2250_vadc ADC5_XO_THERM_100K_PU>,
+ <&pm2250_vadc ADC5_AMUX_THM1_100K_PU>,
+ <&pm2250_vadc ADC5_AMUX_THM2_100K_PU>,
+ <&pm2250_vadc ADC5_AMUX_THM3_100K_PU>,
+ <&pm2250_vadc ADC5_GPIO3_100K_PU>,
+ <&pm2250_vadc ADC5_GPIO4_100K_PU>;
+
+ xo_therm {
+ reg = <ADC5_XO_THERM_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+
+ pa_therm {
+ reg = <ADC5_AMUX_THM1_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+
+ quiet_therm {
+ reg = <ADC5_AMUX_THM2_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+
+ msm_therm {
+ reg = <ADC5_AMUX_THM3_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+
+ skin_therm {
+ reg = <ADC5_GPIO3_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+
+ conn_therm {
+ reg = <ADC5_GPIO4_100K_PU>;
+ qcom,ratiometric;
+ qcom,hw-settle-time = <200>;
+ };
+ };
+
+ /delete-node/ pm2250_qg;
+ /delete-node/ pm2250_charger;
+ };
+
+ qcom,pm2250@1 {
+ /delete-node/ pm2250_vib;
+ /delete-node/ pm2250_pwm1;
+ /delete-node/ pm2250_pwm2;
+ /delete-node/ pm2250_pwm3;
+ };
+};
+
+&thermal_zones {
+ pm2250_tz {
+ trips {
+ trip0 {
+ temperature = <105000>;
+ };
+
+ trip1 {
+ temperature = <125000>;
+ };
+
+ trip2 {
+ temperature = <155000>;
+ };
+ };
+ };
+};
diff --git a/qcom/sa410m-qupv3.dtsi b/qcom/sa410m-qupv3.dtsi
new file mode 100755
index 00000000..39004985
--- /dev/null
+++ b/qcom/sa410m-qupv3.dtsi
@@ -0,0 +1,212 @@
+#include <dt-bindings/interconnect/qcom,scuba.h>
+
+&soc {
+ /* QUPv3 SE Instances
+ * Qup0 0: SE 0
+ * Qup0 1: SE 1
+ * Qup0 2: SE 2
+ * Qup0 3: SE 3
+ * Qup0 4: SE 4
+ * Qup0 5: SE 5
+ */
+
+ /* QUPv3_0 wrapper instance */
+ qupv3_0: qcom,qupv3_0_geni_se@4ac0000 {
+ compatible = "qcom,qupv3-geni-se";
+ reg = <0x4ac0000 0x2000>;
+ qcom,msm-bus,num-paths = <2>;
+ qcom,msm-bus,vectors-bus-ids =
+ <MASTER_QUP_CORE_0 SLAVE_QUP_CORE_0>,
+ <MASTER_QUP_0 SLAVE_EBI_CH0>;
+ qcom,vote-for-bw;
+ iommus = <&apps_smmu 0xe3 0x0>;
+ qcom,iommu-dma-addr-pool = <0x40000000 0xc0000000>;
+ qcom,iommu-dma = "fastmap";
+ status = "ok";
+ };
+
+ /* Debug UART Instance */
+ qupv3_se4_2uart: qcom,qup_uart@4a90000 {
+ compatible = "qcom,msm-geni-console";
+ reg = <0x4a90000 0x4000>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se4_2uart_active>;
+ pinctrl-1 = <&qupv3_se4_2uart_sleep>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se0_i2c: i2c@4a80000 {
+ reg = <0x4a80000 0x4000>;
+ compatible = "qcom,i2c-geni";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se0_i2c_active>;
+ pinctrl-1 = <&qupv3_se0_i2c_sleep>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se0_spi: spi@4a80000 {
+ compatible = "qcom,spi-geni";
+ reg = <0x4a80000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se0_spi_active>;
+ pinctrl-1 = <&qupv3_se0_spi_sleep>;
+ spi-max-frequency = <50000000>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se1_i2c: i2c@4a84000 {
+ compatible = "qcom,i2c-geni";
+ reg = <0x4a84000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se1_i2c_active>;
+ pinctrl-1 = <&qupv3_se1_i2c_sleep>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se1_spi: spi@4a84000 {
+ compatible = "qcom,spi-geni";
+ reg = <0x4a84000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se1_spi_active>;
+ pinctrl-1 = <&qupv3_se1_spi_sleep>;
+ spi-max-frequency = <50000000>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se2_i2c: i2c@4a88000 {
+ compatible = "qcom,i2c-geni";
+ reg = <0x4a88000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se2_i2c_active>;
+ pinctrl-1 = <&qupv3_se2_i2c_sleep>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se2_spi: spi@4a88000 {
+ compatible = "qcom,spi-geni";
+ reg = <0x4a88000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se2_spi_active>;
+ pinctrl-1 = <&qupv3_se2_spi_sleep>;
+ spi-max-frequency = <50000000>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ /* HS UART Instance */
+ qupv3_se3_4uart: qcom,qup_uart@4a8c000 {
+ compatible = "qcom,msm-geni-serial-hs";
+ reg = <0x4a8c000 0x4000>;
+ reg-names = "se_phys";
+ interrupts-extended = <&intc GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
+ <&tlmm 11 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "active", "sleep";
+ pinctrl-0 = <&qupv3_se3_default_ctsrtsrx>,
+ <&qupv3_se3_default_tx>;
+ pinctrl-1 = <&qupv3_se3_ctsrx>, <&qupv3_se3_rts>,
+ <&qupv3_se3_tx>;
+ pinctrl-2 = <&qupv3_se3_ctsrx>, <&qupv3_se3_rts>,
+ <&qupv3_se3_tx>;
+ qcom,wakeup-byte = <0xFD>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se5_i2c: i2c@4a94000 {
+ compatible = "qcom,i2c-geni";
+ reg = <0x4a94000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se5_i2c_active>;
+ pinctrl-1 = <&qupv3_se5_i2c_sleep>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+ qupv3_se5_spi: spi@4a94000 {
+ compatible = "qcom,spi-geni";
+ reg = <0x4a94000 0x4000>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se5_spi_active>;
+ pinctrl-1 = <&qupv3_se5_spi_sleep>;
+ spi-max-frequency = <50000000>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
+};
diff --git a/qcom/sa410m-usb.dtsi b/qcom/sa410m-usb.dtsi
new file mode 100755
index 00000000..4ab9290e
--- /dev/null
+++ b/qcom/sa410m-usb.dtsi
@@ -0,0 +1,159 @@
+#include <dt-bindings/clock/qcom,gcc-scuba.h>
+#include <dt-bindings/phy/qcom,usb3-11nm-qmp-combo.h>
+
+&soc {
+ /* Primary USB port related controller */
+ usb0: ssusb@4e00000 {
+ compatible = "qcom,dwc-usb3-msm";
+ reg = <0x4e00000 0x100000>;
+ reg-names = "core_base";
+
+ iommus = <&apps_smmu 0x0120 0x0>;
+ qcom,iommu-dma = "atomic";
+ qcom,iommu-dma-addr-pool = <0x50000000 0x60000000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges;
+ dma-ranges;
+
+ interrupts-extended = <&intc GIC_SPI 302 IRQ_TYPE_LEVEL_HIGH>,
+ <&wakegic 12 IRQ_TYPE_LEVEL_HIGH>,
+ <&wakegic 90 IRQ_TYPE_EDGE_RISING>;
+ interrupt-names = "pwr_event_irq", "ss_phy_irq", "hs_phy_irq";
+
+ clocks = <&gcc GCC_USB30_PRIM_MASTER_CLK>,
+ <&gcc GCC_SYS_NOC_USB3_PRIM_AXI_CLK>,
+ <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
+ <&gcc GCC_USB3_PRIM_CLKREF_CLK>,
+ <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
+ <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>;
+ clock-names = "core_clk", "iface_clk", "bus_aggr_clk",
+ "xo", "sleep_clk", "utmi_clk";
+
+ resets = <&gcc GCC_USB30_PRIM_BCR>;
+ reset-names = "core_reset";
+
+ USB3_GDSC-supply = <&gcc_usb30_prim_gdsc>;
+
+ qcom,core-clk-rate = <200000000>;
+ qcom,core-clk-rate-hs = <66666667>;
+ qcom,num-gsi-evt-buffs = <0x3>;
+ qcom,gsi-reg-offset =
+ <0x0fc /* GSI_GENERAL_CFG */
+ 0x110 /* GSI_DBL_ADDR_L */
+ 0x120 /* GSI_DBL_ADDR_H */
+ 0x130 /* GSI_RING_BASE_ADDR_L */
+ 0x144 /* GSI_RING_BASE_ADDR_H */
+ 0x1a4>; /* GSI_IF_STS */
+ qcom,dwc-usb3-msm-tx-fifo-size = <21288>;
+
+ interconnect-names = "usb-ddr", "usb-ipa", "ddr-usb";
+ interconnects = <&system_noc MASTER_USB3 &bimc SLAVE_EBI_CH0>,
+ <&system_noc MASTER_USB3 &config_noc SLAVE_IPA_CFG>,
+ <&bimc MASTER_AMPSS_M0 &config_noc SLAVE_USB3>;
+
+ qcom,interconnect-values-nom = /* NOMINAL Votes */
+ <1000000 1550000>,
+ <0 2400>,
+ <0 40000>;
+ qcom,interconnect-values-svs = /* SVS Votes */
+ <240000 700000>,
+ <0 2400>,
+ <0 40000>;
+
+ dwc3@4e00000 {
+ compatible = "snps,dwc3";
+ reg = <0x4e00000 0xcd00>;
+ interrupt-parent = <&intc>;
+ interrupts = <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>;
+ usb-phy = <&qusb_phy0>, <&usb_nop_phy>;
+ linux,sysdev_is_parent;
+ tx-fifo-resize;
+ snps,is-utmi-l1-suspend;
+ snps,disable-clk-gating;
+ snps,dis_u2_susphy_quirk;
+ snps,bus-suspend-enable;
+ snps,usb2-gadget-lpm-disable;
+ snps,dis_enblslpm_quirk;
+ snps,has-lpm-erratum;
+ snps,hird-threshold = /bits/ 8 <0x0>;
+ maximum-speed = "high-speed";
+ dr_mode = "peripheral";
+ };
+
+ qcom,usbbam@0x04f04000 {
+ compatible = "qcom,usb-bam-msm";
+ reg = <0x04f04000 0x17000>;
+ interrupt-parent = <&intc>;
+ interrupts = <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>;
+
+ qcom,usb-bam-fifo-baseaddr = <0xc121000>;
+ qcom,usb-bam-num-pipes = <4>;
+ qcom,disable-clk-gating;
+ qcom,usb-bam-override-threshold = <0x4001>;
+ qcom,usb-bam-max-mbps-highspeed = <400>;
+ qcom,usb-bam-max-mbps-superspeed = <3600>;
+ qcom,reset-bam-on-connect;
+
+ qcom,pipe0 {
+ label = "ssusb-qdss-in-0";
+ qcom,usb-bam-mem-type = <2>;
+ qcom,dir = <1>;
+ qcom,pipe-num = <0>;
+ qcom,peer-bam = <0>;
+ qcom,peer-bam-physical-address = <0x08064000>;
+ qcom,src-bam-pipe-index = <0>;
+ qcom,dst-bam-pipe-index = <0>;
+ qcom,data-fifo-offset = <0x0>;
+ qcom,data-fifo-size = <0x1800>;
+ qcom,descriptor-fifo-offset = <0x1800>;
+ qcom,descriptor-fifo-size = <0x800>;
+ };
+ };
+ };
+
+ /* Primary USB port related High Speed PHY */
+ qusb_phy0: qusb@1613000 {
+ compatible = "qcom,qusb2phy";
+ reg = <0x01613000 0x180>,
+ <0x003cb250 0x4>,
+ <0x01b40258 0x4>,
+ <0x01612000 0x4>;
+ reg-names = "qusb_phy_base",
+ "tcsr_clamp_dig_n_1p8",
+ "tune2_efuse_addr",
+ "eud_enable_reg";
+
+ vdd-supply = <&pm2250_l12>;
+ vdda18-supply = <&pm2250_l13>;
+ vdda33-supply = <&pm2250_l21>;
+ qcom,vdd-voltage-level = <0 925000 970000>;
+ qcom,tune2-efuse-bit-pos = <25>;
+ qcom,tune2-efuse-num-bits = <4>;
+ qcom,qusb-phy-init-seq = <0xf8 0x80
+ 0xb3 0x84
+ 0x83 0x88
+ 0xc0 0x8c
+ 0x30 0x08
+ 0x79 0x0c
+ 0x21 0x10
+ 0x14 0x9c
+ 0x80 0x04
+ 0x9f 0x1c
+ 0x00 0x18>;
+ phy_type = "utmi";
+ qcom,phy-clk-scheme = "cmos";
+ qcom,major-rev = <1>;
+
+ clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>,
+ <&gcc GCC_AHB2PHY_USB_CLK>;
+ clock-names = "ref_clk_src", "cfg_ahb_clk";
+
+ resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
+ reset-names = "phy_reset";
+ };
+
+ usb_nop_phy: usb_nop_phy {
+ compatible = "usb-nop-xceiv";
+ };
+};
diff --git a/qcom/sa410m.dts b/qcom/sa410m.dts
index d8abae26..b988a0c8 100755
--- a/qcom/sa410m.dts
+++ b/qcom/sa410m.dts
@@ -9,3 +9,22 @@
qcom,msm-id = <441 0x10000>, <471 0x10000>;
qcom,board-id = <34 0>;
};
+
+
+&sdhc_1 {
+ vdd-supply = <&L20A>;
+ qcom,vdd-voltage-level = <2856000 2856000>;
+ qcom,vdd-current-level = <0 570000>;
+
+ vdd-io-supply = <&L14A>;
+ qcom,vdd-io-always-on;
+ qcom,vdd-io-lpm-sup;
+ qcom,vdd-io-voltage-level = <1800000 1800000>;
+ qcom,vdd-io-current-level = <0 325000>;
+
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&sdc1_on>;
+ pinctrl-1 = <&sdc1_off>;
+
+ status = "ok";
+};
diff --git a/qcom/sa410m.dtsi b/qcom/sa410m.dtsi
index f8212a93..d30a4d7a 100755
--- a/qcom/sa410m.dtsi
+++ b/qcom/sa410m.dtsi
@@ -6,6 +6,7 @@
#include <dt-bindings/clock/qcom,rpmcc.h>
#include <dt-bindings/interconnect/qcom,icc.h>
#include <dt-bindings/interconnect/qcom,scuba.h>
+#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
/ {
#address-cells = <2>;
@@ -24,7 +25,10 @@
granule = <512>;
};
- aliases {};
+ aliases {
+ serial0 = &qupv3_se4_2uart;
+ sdhc0 = &sdhc_1; /*SDC1 eMMC slot*/
+ };
firmware: firmware {};
@@ -389,6 +393,11 @@
#address-cells = <1>;
#size-cells = <1>;
+ download_mode@0 {
+ compatible = "qcom,msm-imem-download_mode";
+ reg = <0x0 0x8>;
+ };
+
mem_dump_table@10 {
compatible = "qcom,msm-imem-mem_dump_table";
reg = <0x10 0x8>;
@@ -423,6 +432,16 @@
compatible = "qcom,msm-imem-diag-dload";
reg = <0xc8 0xc8>;
};
+
+ emergency_download_mode@fe0 {
+ compatible = "qcom,msm-imem-emergency_download_mode";
+ reg = <0xfe0 0xc>;
+ };
+
+ ss_mdump@b88 {
+ compatible = "qcom,msm-imem-minidump";
+ reg = <0xb88 0x1c>;
+ };
};
dload_mode {
@@ -468,6 +487,22 @@
0x0f1a80b8 0x0f1b80b8>;
};
+ qfprom: qfprom@1b40000 {
+ compatible = "qcom,qfprom";
+ reg = <0x1b40000 0x7000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ read-only;
+ ranges;
+ status = "okay";
+
+ adsp_variant: adsp_variant@6011 {
+ reg = <0x6011 0x1>;
+ bits = <3 1>;
+ };
+
+ };
+
eud: qcom,msm-eud@1610000 {
compatible = "qcom,msm-eud";
interrupt-names = "eud_irq";
@@ -480,8 +515,8 @@
qcom,secure-eud-en;
qcom,eud-tcsr-check-enable;
qcom,eud-clock-vote-req;
- //clocks = <&gcc GCC_AHB2PHY_USB_CLK>;
- //clock-names = "eud_ahb2phy_clk";
+ clocks = <&gcc GCC_AHB2PHY_USB_CLK>;
+ clock-names = "eud_ahb2phy_clk";
status = "disabled";
};
@@ -697,6 +732,27 @@
status = "ok";
};
+ spmi_bus: qcom,spmi@1c40000 {
+ compatible = "qcom,spmi-pmic-arb";
+ reg = <0x1c40000 0x1100>,
+ <0x1e00000 0x2000000>,
+ <0x3e00000 0x100000>,
+ <0x3f00000 0xa0000>,
+ <0x1c0a000 0x26000>;
+ reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
+ interrupt-names = "periph_irq";
+ interrupts-extended = <&wakegic 86 IRQ_TYPE_LEVEL_HIGH>;
+ qcom,ee = <0>;
+ qcom,channel = <0>;
+ #address-cells = <2>;
+ #size-cells = <0>;
+ interrupt-controller;
+ #interrupt-cells = <4>;
+ cell-index = <0>;
+ };
+
+ thermal_zones: thermal-zones { };
+
clk_virt: interconnect@0 {
compatible = "qcom,scuba-clk_virt";
qcom,keepalive;
@@ -707,7 +763,7 @@
};
system_noc: interconnect0@1880000 {
- reg = <0x1880000 0x60200>;
+ reg = <0x01880000 0x5e080>;
compatible = "qcom,scuba-sys_noc";
qcom,keepalive;
#interconnect-cells = <1>;
@@ -761,21 +817,21 @@
pil_scm_pas {
compatible = "qcom,pil-tz-scm-pas";
- //interconnects = <&clk_virt MASTER_CRYPTO_CORE0 &bimc SLAVE_EBI_CH0>;
+ interconnects = <&system_noc MASTER_CRYPTO_CORE0 &bimc SLAVE_EBI_CH0>;
};
qcom,lpass@ab00000 {
compatible = "qcom,pil-tz-generic";
reg = <0xab00000 0x00100>;
- //clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
- //clock-names = "xo";
- //qcom,proxy-clock-names = "xo";
+ clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
+ clock-names = "xo";
+ qcom,proxy-clock-names = "xo";
- //vdd_lpi_cx-supply = <&VDD_LPI_CX_LEVEL>;
- //qcom,vdd_lpi_cx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 0>;
- //vdd_lpi_mx-supply = <&VDD_LPI_MX_LEVEL>;
- //qcom,vdd_lpi_mx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 0>;
+ vdd_lpi_cx-supply = <&VDD_LPI_CX_LEVEL>;
+ qcom,vdd_lpi_cx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 0>;
+ vdd_lpi_mx-supply = <&VDD_LPI_MX_LEVEL>;
+ qcom,vdd_lpi_mx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 0>;
qcom,proxy-reg-names = "vdd_lpi_cx", "vdd_lpi_mx";
qcom,firmware-name = "adsp";
@@ -790,11 +846,11 @@
qcom,minidump-as-elf32;
/* Inputs from lpass */
- //interrupts-extended = <&intc 0 282 IRQ_TYPE_LEVEL_HIGH>,
- // <&adsp_smp2p_in 0 0>,
- // <&adsp_smp2p_in 2 0>,
- // <&adsp_smp2p_in 1 0>,
- // <&adsp_smp2p_in 3 0>;
+ interrupts-extended = <&intc 0 282 IRQ_TYPE_LEVEL_HIGH>,
+ <&adsp_smp2p_in 0 0>,
+ <&adsp_smp2p_in 2 0>,
+ <&adsp_smp2p_in 1 0>,
+ <&adsp_smp2p_in 3 0>;
interrupt-names = "qcom,wdog",
"qcom,err-fatal",
@@ -803,7 +859,7 @@
"qcom,stop-ack";
/* Outputs to lpass */
- //qcom,smem-states = <&adsp_smp2p_out 0>;
+ qcom,smem-states = <&adsp_smp2p_out 0>;
qcom,smem-state-names = "qcom,force-stop";
status = "ok";
};
@@ -812,12 +868,12 @@
compatible = "qcom,pil-tz-generic";
reg = <0x6080000 0x100>;
- //clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
- //clock-names = "xo";
- //qcom,proxy-clock-names = "xo";
+ clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>;
+ clock-names = "xo";
+ qcom,proxy-clock-names = "xo";
- //vdd_cx-supply = <&VDD_CX_LEVEL>;
- //qcom,vdd_cx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 100000>;
+ vdd_cx-supply = <&VDD_CX_LEVEL>;
+ qcom,vdd_cx-uV-uA = <RPMH_REGULATOR_LEVEL_TURBO 100000>;
qcom,proxy-reg-names = "vdd_cx";
qcom,firmware-name = "modem";
@@ -833,12 +889,12 @@
qcom,sequential-fw-load;
/* Inputs from mss */
- //interrupts-extended = <&intc 0 307 1>,
- // <&modem_smp2p_in 0 0>,
- // <&modem_smp2p_in 2 0>,
- // <&modem_smp2p_in 1 0>,
- // <&modem_smp2p_in 3 0>,
- // <&modem_smp2p_in 7 0>;
+ interrupts-extended = <&intc 0 307 1>,
+ <&modem_smp2p_in 0 0>,
+ <&modem_smp2p_in 2 0>,
+ <&modem_smp2p_in 1 0>,
+ <&modem_smp2p_in 3 0>,
+ <&modem_smp2p_in 7 0>;
interrupt-names = "qcom,wdog",
"qcom,err-fatal",
@@ -848,7 +904,7 @@
"qcom,shutdown-ack";
/* Outputs to mss */
- //qcom,smem-states = <&modem_smp2p_out 0>;
+ qcom,smem-states = <&modem_smp2p_out 0>;
qcom,smem-state-names = "qcom,force-stop";
status = "ok";
};
@@ -870,7 +926,7 @@
smem: qcom,smem {
compatible = "qcom,smem";
- //memory-region = <&smem_mem>;
+ memory-region = <&smem_region>;
hwlocks = <&tcsr_mutex 3>;
};
@@ -886,6 +942,61 @@
reg = <0x45f0000 0x7000>;
};
+ qcom,msm-adsprpc-mem {
+ compatible = "qcom,msm-adsprpc-mem-region";
+ memory-region = <&adsp_mem>;
+ restrict-access;
+ };
+
+ qcom,msm_fastrpc {
+ compatible = "qcom,msm-fastrpc-compute";
+ qcom,rpc-latency-us = <611>;
+ qcom,adsp-remoteheap-vmid = <22 37>;
+ qcom,fastrpc-adsp-audio-pdr;
+ qcom,fastrpc-adsp-sensors-pdr;
+
+ qcom,msm_fastrpc_compute_cb1 {
+ compatible = "qcom,msm-fastrpc-compute-cb";
+ label = "adsprpc-smd";
+ iommus = <&apps_smmu 0x01C3 0x0>;
+ qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
+ qcom,iommu-faults = "stall-disable";
+ };
+
+ qcom,msm_fastrpc_compute_cb2 {
+ compatible = "qcom,msm-fastrpc-compute-cb";
+ label = "adsprpc-smd";
+ iommus = <&apps_smmu 0x01C4 0x0>;
+ qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
+ qcom,iommu-faults = "stall-disable";
+ };
+
+ qcom,msm_fastrpc_compute_cb3 {
+ compatible = "qcom,msm-fastrpc-compute-cb";
+ label = "adsprpc-smd";
+ iommus = <&apps_smmu 0x01C5 0x0>;
+ qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
+ qcom,iommu-faults = "stall-disable";
+ };
+
+ qcom,msm_fastrpc_compute_cb4 {
+ compatible = "qcom,msm-fastrpc-compute-cb";
+ label = "adsprpc-smd";
+ iommus = <&apps_smmu 0x01C6 0x0>;
+ qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
+ qcom,iommu-faults = "stall-disable";
+ };
+
+ qcom,msm_fastrpc_compute_cb5 {
+ compatible = "qcom,msm-fastrpc-compute-cb";
+ label = "adsprpc-smd";
+ iommus = <&apps_smmu 0x01C7 0x0>;
+ qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
+ qcom,iommu-faults = "stall-disable";
+ };
+
+ };
+
rpm-glink {
compatible = "qcom,glink-rpm";
interrupts = <GIC_SPI 194 IRQ_TYPE_EDGE_RISING>;
@@ -1104,14 +1215,134 @@
};
};
+ sdhc_1: sdhci@4744000 {
+ compatible = "qcom,sdhci-msm-v5";
+ reg = <0x04744000 0x1000>, <0x04745000 0x1000>;
+ reg-names = "hc_mem", "cqhci_mem";
+
+ iommus = <&apps_smmu 0xC0 0x0>;
+ qcom,iommu-dma = "bypass";
+
+ interrupts = <GIC_SPI 348 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 352 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "hc_irq", "pwr_irq";
+
+ clocks = <&gcc GCC_SDCC1_APPS_CLK>,
+ <&gcc GCC_SDCC1_AHB_CLK>,
+ <&gcc GCC_SDCC1_ICE_CORE_CLK>;
+ clock-names = "core", "iface", "ice_core";
+
+ qcom,ice-clk-rates = <300000000 100000000>;
+
+ interconnects = <&system_noc MASTER_SDCC_1 &bimc SLAVE_EBI_CH0>,
+ <&bimc MASTER_AMPSS_M0 &config_noc SLAVE_SDCC_1>;
+ interconnect-names = "sdhc-ddr","cpu-sdhc";
+ qcom,msm-bus,name = "sdhc1";
+ qcom,msm-bus,num-cases = <8>;
+ qcom,msm-bus,num-paths = <2>;
+ qcom,msm-bus,vectors-KBps =
+ /* No vote */
+ <0 0>, <0 0>,
+ /* 400 KB/s*/
+ <1046 1600>,<1600 1600>,
+ /* 25 MB/s */
+ <25600 250000>,<50000 133320>,
+ /* 50 MB/s */
+ <51200 250000>,<65000 133320>,
+ /* 100 MB/s */
+ <102400 250000>,<65000 133320>,
+ /* 200 MB/s */
+ <204800 800000>,<200000 300000>,
+ /* 400 MB/s */
+ <204800 800000>,<200000 300000>,
+ /* Max. bandwidth */
+ <1338562 4096000>,<1338562 4096000>;
+ qcom,bus-bw-vectors-bps = <0 400000 25000000 50000000
+ 100750000 200000000 400000000 4294967295>;
+
+ /* DLL HSR settings. Refer go/hsr - <Target> DLL settings */
+ qcom,dll-hsr-list = <0x000f642c 0x0 0x0 0x00010800 0x80040868>;
+
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ mmc-hs400-1_8v;
+ mmc-hs400-enhanced-strobe;
+
+ bus-width = <8>;
+ non-removable;
+ supports-cqe;
+
+ qcom,devfreq,freq-table = <50000000 200000000>;
+ qcom,scaling-lower-bus-speed-mode = "DDR52";
+
+ resets = <&gcc GCC_SDCC1_BCR>;
+ reset-names = "core_reset";
+
+ status = "disabled";
+
+ qos0 {
+ mask = <0x0f>;
+ vote = <43>;
+ };
+
+ };
+
+ qcom,rmtfs_sharedmem@0 {
+ compatible = "qcom,sharedmem-uio";
+ reg = <0x0 0x280000>;
+ reg-names = "rmtfs";
+ qcom,client-id = <0x00000001>;
+ qcom,vm-nav-path;
+ };
+
+ qcom,memshare {
+ compatible = "qcom,memshare";
+
+ qcom,client_1 {
+ compatible = "qcom,memshare-peripheral";
+ qcom,peripheral-size = <0x0>;
+ qcom,client-id = <0>;
+ qcom,allocate-boot-time;
+ label = "modem";
+ };
+
+ qcom,client_2 {
+ compatible = "qcom,memshare-peripheral";
+ qcom,peripheral-size = <0x0>;
+ qcom,client-id = <2>;
+ label = "modem";
+ };
+
+ qcom,client_3 {
+ compatible = "qcom,memshare-peripheral";
+ qcom,peripheral-size = <0x500000>;
+ memory-region = <&memshare_mem>;
+ qcom,client-id = <1>;
+ qcom,allocate-on-request;
+ label = "modem";
+ };
+ };
+
+
+ qcom-secure-buffer {
+ compatible = "qcom,secure-buffer";
+ };
+
};
+#include "sa410m-pmic.dtsi"
#include "sa410m-pinctrl.dtsi"
#include "pm2250-rpm-regulator.dtsi"
#include "scuba-regulator.dtsi"
#include "scuba-ion.dtsi"
#include "msm-arm-smmu-scuba.dtsi"
#include "sa410m-gdsc.dtsi"
+#include "sa410m-qupv3.dtsi"
+#include "sa410m-usb.dtsi"
+
+&qupv3_se4_2uart {
+ status = "ok";
+};
&gcc_camss_top_gdsc {
status = "ok";
diff --git a/qcom/sa6155-audio.dtsi b/qcom/sa6155-audio.dtsi
index 8e1aa63d..491907da 100755
--- a/qcom/sa6155-audio.dtsi
+++ b/qcom/sa6155-audio.dtsi
@@ -517,9 +517,12 @@ qcom,msm-dai-q6 {
"msm-pcm-dsp-noirq", "msm-pcm-loopback.1",
"msm-pcm-dtmf";
asoc-cpu = <&dai_hdmi>, <&dai_dp>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&afe_pcm_rx>, <&afe_pcm_tx>,
@@ -555,7 +558,10 @@ qcom,msm-dai-q6 {
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-dp.0",
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
- "msm-dai-q6-mi2s.4", "msm-dai-q6-auxpcm.1",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
diff --git a/qcom/sa8155-audio.dtsi b/qcom/sa8155-audio.dtsi
index e93ab895..5b47b3c3 100755
--- a/qcom/sa8155-audio.dtsi
+++ b/qcom/sa8155-audio.dtsi
@@ -513,9 +513,12 @@ qcom,msm-dai-q6 {
"msm-pcm-dsp-noirq", "msm-pcm-loopback.1",
"msm-pcm-dtmf";
asoc-cpu = <&dai_hdmi>, <&dai_dp>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&afe_pcm_rx>, <&afe_pcm_tx>,
@@ -551,7 +554,10 @@ qcom,msm-dai-q6 {
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-dp.0",
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
- "msm-dai-q6-mi2s.4", "msm-dai-q6-auxpcm.1",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
diff --git a/qcom/sa8155-vm-audio.dtsi b/qcom/sa8155-vm-audio.dtsi
index 0db1f18b..34bc5d4f 100755
--- a/qcom/sa8155-vm-audio.dtsi
+++ b/qcom/sa8155-vm-audio.dtsi
@@ -469,9 +469,12 @@
"msm-pcm-dsp-noirq", "msm-pcm-loopback.1",
"msm-pcm-dtmf";
asoc-cpu = <&dai_hdmi>, <&dai_dp>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&afe_pcm_rx>, <&afe_pcm_tx>,
@@ -507,7 +510,10 @@
asoc-cpu-names = "msm-dai-q6-hdmi.8", "msm-dai-q6-dp.0",
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
- "msm-dai-q6-mi2s.4", "msm-dai-q6-auxpcm.1",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
"msm-dai-q6-dev.224", "msm-dai-q6-dev.225",
diff --git a/qcom/sa8195-vm.dtsi b/qcom/sa8195-vm.dtsi
index 33b78767..ecba5e19 100755
--- a/qcom/sa8195-vm.dtsi
+++ b/qcom/sa8195-vm.dtsi
@@ -738,10 +738,6 @@
clocks = <&gcc GCC_PRNG_AHB_CLK>;
clock-names = "km_clk_src";
};
-
- cpu_pmu: cpu-pmu {
- compatible = "arm,armv8-pmuv3";
- };
};
&regulator {
diff --git a/qcom/scuba-audio.dtsi b/qcom/scuba-audio.dtsi
index bd1b4870..3413dfea 100755
--- a/qcom/scuba-audio.dtsi
+++ b/qcom/scuba-audio.dtsi
@@ -100,8 +100,10 @@
"msm-pcm-afe", "msm-lsm-client",
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
- asoc-cpu = <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
+ asoc-cpu = <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
<&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>,
@@ -128,6 +130,8 @@
<&afe_loopback_tx>;
asoc-cpu-names = "msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
+ "msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-dev.224",
diff --git a/qcom/sdmshrike.dtsi b/qcom/sdmshrike.dtsi
index 470a6f07..13873b79 100755
--- a/qcom/sdmshrike.dtsi
+++ b/qcom/sdmshrike.dtsi
@@ -1385,7 +1385,6 @@
};
compute_noc: interconnect@9800000 {
- reg = <0x9800000 0x40000>;
compatible = "qcom,scshrike-compute_noc";
#interconnect-cells = <1>;
qcom,bcm-voter-names = "hlos";
diff --git a/qcom/sdxlemur-pcie.dtsi b/qcom/sdxlemur-pcie.dtsi
index af761c45..aa3a027e 100755
--- a/qcom/sdxlemur-pcie.dtsi
+++ b/qcom/sdxlemur-pcie.dtsi
@@ -117,7 +117,7 @@
qcom,num-parf-testbus-sel = <0xb9>;
qcom,config-recovery;
- qcom,pcie-phy-ver = <1102>;
+ qcom,pcie-phy-ver = <1108>;
qcom,phy-status-offset = <0x1214>;
qcom,phy-status-bit = <7>;
qcom,phy-power-down-offset = <0x1240>;
@@ -160,7 +160,7 @@
0x1168 0x0a 0x0
0x116c 0x04 0x0
0x119c 0x88 0x0
- 0x1174 0x20 0x0
+ 0x1174 0x60 0x0
0x117c 0x06 0x0
0x11a0 0x14 0x0
0x11a8 0x0f 0x0
@@ -267,6 +267,8 @@
0x1584 0x28 0x0
0x1370 0x2e 0x0
0x155c 0x2e 0x0
+ 0x140c 0x1d 0x0
+ 0x1388 0xaa 0x0
0x1200 0x00 0x0
0x1244 0x03 0x0>;
diff --git a/qcom/sdxlemur-v2.dtsi b/qcom/sdxlemur-v2.dtsi
index 43abbcc5..3193b02c 100755
--- a/qcom/sdxlemur-v2.dtsi
+++ b/qcom/sdxlemur-v2.dtsi
@@ -7,144 +7,126 @@
};
&i2c_1 {
- iommus = <&apps_smmu 0x148 0x0>,
- <&apps_smmu 0x149 0x0>;
+ iommus = <&apps_smmu 0x148 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_2 {
- iommus = <&apps_smmu 0x14a 0x0>,
- <&apps_smmu 0x14b 0x0>;
+ iommus = <&apps_smmu 0x14a 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_3 {
- iommus = <&apps_smmu 0x14c 0x0>,
- <&apps_smmu 0x14d 0x0>;
+ iommus = <&apps_smmu 0x14c 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_4 {
- iommus = <&apps_smmu 0x14e 0x0>,
- <&apps_smmu 0x14f 0x0>;
+ iommus = <&apps_smmu 0x14e 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_5 {
- iommus = <&apps_smmu 0x148 0x0>,
- <&apps_smmu 0x149 0x0>;
+ iommus = <&apps_smmu 0x148 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_6 {
- iommus = <&apps_smmu 0x14a 0x0>,
- <&apps_smmu 0x14b 0x0>;
+ iommus = <&apps_smmu 0x14a 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&i2c_7 {
- iommus = <&apps_smmu 0x14e 0x0>,
- <&apps_smmu 0x14f 0x0>;
+ iommus = <&apps_smmu 0x14e 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&spi_1 {
- iommus = <&apps_smmu 0x148 0x0>,
- <&apps_smmu 0x149 0x0>;
+ iommus = <&apps_smmu 0x148 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&spi_2 {
- iommus = <&apps_smmu 0x14a 0x0>,
- <&apps_smmu 0x14b 0x0>;
+ iommus = <&apps_smmu 0x14a 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&spi_3 {
- iommus = <&apps_smmu 0x14c 0x0>,
- <&apps_smmu 0x14d 0x0>;
+ iommus = <&apps_smmu 0x14c 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&spi_4 {
- iommus = <&apps_smmu 0x14e 0x0>,
- <&apps_smmu 0x14f 0x0>;
+ iommus = <&apps_smmu 0x14e 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart1a_hs {
- iommus = <&apps_smmu 0x140 0x0>,
- <&apps_smmu 0x141 0x0>;
+ iommus = <&apps_smmu 0x140 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart1b_hs {
- iommus = <&apps_smmu 0x140 0x0>,
- <&apps_smmu 0x141 0x0>;
+ iommus = <&apps_smmu 0x140 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart2a_hs {
- iommus = <&apps_smmu 0x142 0x0>,
- <&apps_smmu 0x143 0x0>;
+ iommus = <&apps_smmu 0x142 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart2b_hs {
- iommus = <&apps_smmu 0x142 0x0>,
- <&apps_smmu 0x143 0x0>;
+ iommus = <&apps_smmu 0x142 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart3_hs {
- iommus = <&apps_smmu 0x144 0x0>,
- <&apps_smmu 0x145 0x0>;
+ iommus = <&apps_smmu 0x144 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart4a_hs {
- iommus = <&apps_smmu 0x146 0x0>,
- <&apps_smmu 0x147 0x0>;
+ iommus = <&apps_smmu 0x146 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
};
&blsp1_uart4b_hs {
- iommus = <&apps_smmu 0x146 0x0>,
- <&apps_smmu 0x147 0x0>;
+ iommus = <&apps_smmu 0x146 0x1>;
qcom,iommu-dma-addr-pool = <0x40000000 0x10000000>;
qcom,iommu-geometry = <0x40000000 0x10000000>;
qcom,iommu-dma = "fastmap";
@@ -163,7 +145,7 @@
< 345600 >,
< 576000 >,
< 1094400 >,
- < 1708800 >;
+ < 1804800 >;
};
&cpu0_cpu_ddr_tbl {
@@ -171,5 +153,5 @@
< 345600 MHZ_TO_MBPS( 300, 4) >,
< 576000 MHZ_TO_MBPS( 768, 4) >,
< 1440000 MHZ_TO_MBPS(1555, 4) >,
- < 1708800 MHZ_TO_MBPS(2092, 4) >;
+ < 1804800 MHZ_TO_MBPS(2092, 4) >;
};
diff --git a/qcom/sdxlemur.dtsi b/qcom/sdxlemur.dtsi
index 96cb90e6..090b94f1 100755
--- a/qcom/sdxlemur.dtsi
+++ b/qcom/sdxlemur.dtsi
@@ -972,7 +972,7 @@
qcom,pcie-vendor-id = /bits/ 16 <0x17cb>;
qcom,pcie-device-id = /bits/ 16 <0x0308>;
qcom,pcie-link-speed = <4>;
- qcom,pcie-phy-ver = <6>;
+ qcom,pcie-phy-ver = <8>;
qcom,pcie-active-config;
qcom,pcie-aggregated-irq;
qcom,pcie-mhi-a7-irq;
@@ -1012,7 +1012,7 @@
0x1168 0x0a 0x0
0x116c 0x04 0x0
0x119c 0x88 0x0
- 0x1174 0x20 0x0
+ 0x1174 0x60 0x0
0x11a0 0x14 0x0
0x11a8 0x0f 0x0
0x0220 0x16 0x0
@@ -1117,6 +1117,7 @@
0x1370 0x2e 0x0
0x155c 0x2e 0x0
0x1484 0x08 0x0
+ 0x1388 0xaa 0x0
0x1200 0x00 0x0
0x1244 0x03 0x0>;
diff --git a/qcom/shima-atp.dtsi b/qcom/shima-atp.dtsi
index 3fc75973..f94b6882 100755
--- a/qcom/shima-atp.dtsi
+++ b/qcom/shima-atp.dtsi
@@ -199,8 +199,8 @@
};
};
-&dai_mi2s2 {
- qcom,msm-mi2s-tx-lines = <1>;
+&dai_mi2s2_tx {
+ qcom,msm-mi2s-lines = <1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&tert_mi2s_sck_active &tert_mi2s_ws_active
&tert_mi2s_sd0_active>;
diff --git a/qcom/shima-audio.dtsi b/qcom/shima-audio.dtsi
index 10ee18cc..5fd0a1fa 100755
--- a/qcom/shima-audio.dtsi
+++ b/qcom/shima-audio.dtsi
@@ -180,9 +180,13 @@
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
asoc-cpu = <&dai_dp>, <&dai_dp1>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_mi2s5>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_mi2s5_rx>, <&dai_mi2s5_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&dai_sen_auxpcm>,
@@ -217,6 +221,9 @@
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
"msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-mi2s.10", "msm-dai-q6-mi2s.11",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",
diff --git a/qcom/shima-idp.dtsi b/qcom/shima-idp.dtsi
index 728936ec..0b0623b7 100755
--- a/qcom/shima-idp.dtsi
+++ b/qcom/shima-idp.dtsi
@@ -223,8 +223,8 @@
};
};
-&dai_mi2s2 {
- qcom,msm-mi2s-tx-lines = <1>;
+&dai_mi2s2_tx {
+ qcom,msm-mi2s-lines = <1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&tert_mi2s_sck_active &tert_mi2s_ws_active
&tert_mi2s_sd0_active>;
diff --git a/qcom/shima-qrd.dtsi b/qcom/shima-qrd.dtsi
index 926f4c27..1621cfee 100755
--- a/qcom/shima-qrd.dtsi
+++ b/qcom/shima-qrd.dtsi
@@ -467,8 +467,8 @@
<&bolero>;
};
-&dai_mi2s2 {
- qcom,msm-mi2s-tx-lines = <1>;
+&dai_mi2s2_tx {
+ qcom,msm-mi2s-lines = <1>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&tert_mi2s_sck_active &tert_mi2s_ws_active
&tert_mi2s_sd0_active>;
diff --git a/qcom/slate.dtsi b/qcom/slate.dtsi
index d621f8ff..d7f3bc06 100755
--- a/qcom/slate.dtsi
+++ b/qcom/slate.dtsi
@@ -27,7 +27,7 @@
compatible = "qcom,slate-daemon";
};
- qcom,audio-cc-ipc-platform {
+ audio_cc_ipc_platform: qcom,audio-cc-ipc-platform {
compatible = "qcom,audio-cc-ipc-platform";
cc_codec: qcom,cc-codec {
compatible = "qcom,cc-codec";
diff --git a/qcom/sm8150-qupv3.dtsi b/qcom/sm8150-qupv3.dtsi
index c902b9b7..320066a1 100755
--- a/qcom/sm8150-qupv3.dtsi
+++ b/qcom/sm8150-qupv3.dtsi
@@ -38,6 +38,84 @@
status = "ok";
};
+ gpi_dma0: qcom,gpi-dma@0x800000 {
+ compatible = "qcom,gpi-dma";
+ #dma-cells = <5>;
+ reg = <0x800000 0x60000>;
+ reg-names = "gpi-top";
+ interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>;
+ qcom,max-num-gpii = <13>;
+ qcom,gpii-mask = <0xfa>;
+ qcom,ev-factor = <2>;
+ iommus = <&apps_smmu 0x00d6 0x0>;
+ qcom,iommu-dma-addr-pool = <0x100000 0x100000>;
+ status = "disabled";
+ };
+
+ gpi_dma1: qcom,gpi-dma@0xa00000 {
+ compatible = "qcom,gpi-dma";
+ #dma-cells = <5>;
+ reg = <0xa00000 0x60000>;
+ reg-names = "gpi-top";
+ interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>;
+ qcom,max-num-gpii = <13>;
+ qcom,gpii-mask = <0xfa>;
+ qcom,ev-factor = <2>;
+ iommus = <&apps_smmu 0x0616 0x0>;
+ qcom,iommu-dma-addr-pool = <0x100000 0x100000>;
+ status = "ok";
+ };
+
+ gpi_dma2: qcom,gpi-dma@0xc00000 {
+ compatible = "qcom,gpi-dma";
+ #dma-cells = <5>;
+ reg = <0xc00000 0x60000>;
+ reg-names = "gpi-top";
+ interrupts = <GIC_SPI 588 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 589 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 590 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 591 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 592 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 593 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 594 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 595 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 596 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 597 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 598 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 599 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 600 IRQ_TYPE_LEVEL_HIGH>;
+ qcom,max-num-gpii = <13>;
+ qcom,gpii-mask = <0xfa>;
+ qcom,ev-factor = <2>;
+ iommus = <&apps_smmu 0x07b6 0x0>;
+ qcom,iommu-dma-addr-pool = <0x100000 0x100000>;
+ status = "disabled";
+ };
+
/* I2C */
qupv3_se0_i2c: i2c@880000 {
compatible = "qcom,i2c-geni";
@@ -349,6 +427,9 @@
clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>,
<&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
<&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
+ dmas = <&gpi_dma1 0 1 2 64 0>,
+ <&gpi_dma1 1 1 2 64 0>;
+ dma-names = "tx", "rx";
pinctrl-names = "default","active", "sleep";
pinctrl-0 = <&qupv3_se4_2uart_default>;
pinctrl-1 = <&qupv3_se4_2uart_active>;
diff --git a/qcom/yupik-audio-overlay.dtsi b/qcom/yupik-audio-overlay.dtsi
index c3de58d5..8a69b60a 100755
--- a/qcom/yupik-audio-overlay.dtsi
+++ b/qcom/yupik-audio-overlay.dtsi
@@ -488,9 +488,12 @@
};
};
-&dai_mi2s1 {
- qcom,msm-mi2s-rx-lines = <0>;
- qcom,msm-mi2s-tx-lines = <1>;
+&dai_mi2s1_rx {
+ qcom,msm-mi2s-lines = <0>;
+};
+
+&dai_mi2s1_tx {
+ qcom,msm-mi2s-lines = <1>;
};
&adsp_loader {
diff --git a/qcom/yupik-audio.dtsi b/qcom/yupik-audio.dtsi
index 6800853a..865416bd 100755
--- a/qcom/yupik-audio.dtsi
+++ b/qcom/yupik-audio.dtsi
@@ -180,9 +180,13 @@
"msm-pcm-routing", "msm-compr-dsp",
"msm-pcm-dsp-noirq";
asoc-cpu = <&dai_dp>, <&dai_dp1>,
- <&dai_mi2s0>, <&dai_mi2s1>,
- <&dai_mi2s2>, <&dai_mi2s3>,
- <&dai_mi2s4>, <&dai_mi2s5>, <&dai_pri_auxpcm>,
+ <&dai_mi2s0_rx>, <&dai_mi2s0_tx>,
+ <&dai_mi2s1_rx>, <&dai_mi2s1_tx>,
+ <&dai_mi2s2_rx>, <&dai_mi2s2_tx>,
+ <&dai_mi2s3_rx>, <&dai_mi2s3_tx>,
+ <&dai_mi2s4_rx>, <&dai_mi2s4_tx>,
+ <&dai_mi2s5_rx>, <&dai_mi2s5_tx>,
+ <&dai_pri_auxpcm>,
<&dai_sec_auxpcm>, <&dai_tert_auxpcm>,
<&dai_quat_auxpcm>, <&dai_quin_auxpcm>,
<&dai_sen_auxpcm>,
@@ -217,6 +221,9 @@
"msm-dai-q6-mi2s.0", "msm-dai-q6-mi2s.1",
"msm-dai-q6-mi2s.2", "msm-dai-q6-mi2s.3",
"msm-dai-q6-mi2s.4", "msm-dai-q6-mi2s.5",
+ "msm-dai-q6-mi2s.6", "msm-dai-q6-mi2s.7",
+ "msm-dai-q6-mi2s.8", "msm-dai-q6-mi2s.9",
+ "msm-dai-q6-mi2s.10", "msm-dai-q6-mi2s.11",
"msm-dai-q6-auxpcm.1",
"msm-dai-q6-auxpcm.2", "msm-dai-q6-auxpcm.3",
"msm-dai-q6-auxpcm.4", "msm-dai-q6-auxpcm.5",