summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQC Publisher <qcpublisher@qti.qualcomm.com>2022-07-22 12:34:36 -0700
committerAndrei Ciubotariu <aciubotariu@google.com>2022-10-05 00:30:28 +0000
commitba46ea70ba5b95ea34026bf2e536e2c6ffac3509 (patch)
tree1f7c35f1fb3e37ccaf132710c88374d241a70962
parent6ff51b23d14be1560c18c9cbc756b6b58da83ee6 (diff)
downloaddevicetree-ba46ea70ba5b95ea34026bf2e536e2c6ffac3509.tar.gz
Commit label r00009.1a - Pre-ES 0.0.009.1a
TRACKING-ID:aefb37b4-bce0-424b-9769-2d0c95fa087e
-rwxr-xr-xbindings/arm/msm/msm.txt3
-rwxr-xr-xbindings/clock/qcom,debugcc.txt1
-rwxr-xr-xbindings/sound/tlv320aic3x.txt1
-rwxr-xr-xqcom/Makefile25
-rwxr-xr-xqcom/blair-atp-overlay.dts2
-rwxr-xr-xqcom/blair-cdp-overlay.dts2
-rwxr-xr-xqcom/blair-mtp-nopmi-overlay.dts2
-rwxr-xr-xqcom/blair-mtp-overlay.dts2
-rwxr-xr-xqcom/blair-mtp-usbc-overlay.dts2
-rwxr-xr-xqcom/blair-qrd-nopmi-overlay.dts2
-rwxr-xr-xqcom/blair-qrd-overlay.dts2
-rwxr-xr-xqcom/blair-rumi-overlay.dts2
-rwxr-xr-xqcom/blair.dtsi69
-rwxr-xr-xqcom/direwolf-cnss-dual.dtsi256
-rwxr-xr-xqcom/direwolf-vm-lv-mt.dtsi12
-rwxr-xr-xqcom/direwolf-vm.dtsi73
-rwxr-xr-xqcom/kona-qrd.dtsi2
-rwxr-xr-xqcom/kona-v2.1-iot-rb5.dtsi89
-rwxr-xr-xqcom/kona.dtsi31
-rwxr-xr-xqcom/lemans-adas-high-qam-star-overlay.dts12
-rwxr-xr-xqcom/lemans-adas-high-qam-star.dts10
-rwxr-xr-xqcom/lemans-adp-common.dtsi1
-rwxr-xr-xqcom/lemans-gpu.dtsi282
-rwxr-xr-xqcom/lemans-ion.dtsi18
-rwxr-xr-xqcom/lemans-ivi-qam-star-overlay.dts12
-rwxr-xr-xqcom/lemans-ivi-qam-star.dts10
-rwxr-xr-xqcom/lemans-qam-star.dtsi1
-rwxr-xr-xqcom/lemans-thermal-overlay.dtsi62
-rwxr-xr-xqcom/lemans-vm-lv-overlay.dts11
-rwxr-xr-xqcom/lemans-vm-lv.dts10
-rwxr-xr-xqcom/lemans-vm-lv.dtsi2
-rwxr-xr-xqcom/lemans-vm.dtsi34
-rwxr-xr-xqcom/lemans.dtsi71
-rwxr-xr-xqcom/monaco-standalone-1gb.dts9
-rwxr-xr-xqcom/monaco-standalone-1gb.dtsi (renamed from qcom/monaco-standalone.dtsi)0
-rwxr-xr-xqcom/monaco-standalone-atp-v1.dts4
-rwxr-xr-xqcom/monaco-standalone-idp-v1.dts4
-rwxr-xr-xqcom/monaco-standalone-idp-v2.dts4
-rwxr-xr-xqcom/monaco-standalone-idp-v3.dts4
-rwxr-xr-xqcom/monaco-standalone-wdp-v1.dts4
-rwxr-xr-xqcom/monaco-standalone.dts6
-rwxr-xr-xqcom/monaco.dtsi1
-rwxr-xr-xqcom/monacop-standalone-1gb.dts9
-rwxr-xr-xqcom/monacop-standalone-1gb.dtsi (renamed from qcom/monacop-standalone.dtsi)2
-rwxr-xr-xqcom/monacop-standalone-atp-v1.dts4
-rwxr-xr-xqcom/monacop-standalone-idp-v1.dts4
-rwxr-xr-xqcom/monacop-standalone-idp-v2.dts4
-rwxr-xr-xqcom/monacop-standalone-idp-v3.dts4
-rwxr-xr-xqcom/monacop-standalone-wdp-v1.dts4
-rwxr-xr-xqcom/monacop-standalone.dts4
-rwxr-xr-xqcom/msm-arm-smmu-lemans.dtsi158
-rwxr-xr-xqcom/pm6155.dtsi1
-rwxr-xr-xqcom/pm8150.dtsi1
-rwxr-xr-xqcom/pm8150l.dtsi2
-rwxr-xr-xqcom/pm8195.dtsi1
-rwxr-xr-xqcom/prairie-iot-idp.dtsi1
-rwxr-xr-xqcom/qcs410.dtsi77
-rwxr-xr-xqcom/qcs610.dtsi1
-rwxr-xr-xqcom/quin-vm-common.dtsi18
-rwxr-xr-xqcom/sa410m-qrd.dtsi2
-rwxr-xr-xqcom/sa410m.dtsi2
-rwxr-xr-xqcom/sa415m-pinctrl.dtsi16
-rwxr-xr-xqcom/sa415m.dtsi49
-rwxr-xr-xqcom/sa515m-audio-overlay.dtsi15
-rwxr-xr-xqcom/sa515m-ccard-cnss.dtsi266
-rwxr-xr-xqcom/sa515m-ccard-pcie-ep.dts27
-rwxr-xr-xqcom/sa515m-ccard.dtsi3
-rwxr-xr-xqcom/sa515m-pcie.dtsi22
-rwxr-xr-xqcom/sa515m-v2-ccard-pcie-ep.dts11
-rwxr-xr-xqcom/sa515m.dtsi203
-rwxr-xr-xqcom/sa6155p-vm.dtsi5
-rwxr-xr-xqcom/sa6155p.dtsi4
-rwxr-xr-xqcom/sa8155-vm.dtsi6
-rwxr-xr-xqcom/sa8155.dtsi6
-rwxr-xr-xqcom/sa8195-vm.dtsi6
-rwxr-xr-xqcom/sdx55-regulator.dtsi16
-rwxr-xr-xqcom/sdxprairie-thermal-common.dtsi650
-rwxr-xr-xqcom/sdxprairie-thermal.dtsi204
-rwxr-xr-xqcom/sm6150-thermal-overlay.dtsi202
-rwxr-xr-xqcom/sm6150.dtsi8
-rwxr-xr-xqcom/sm8150-pinctrl.dtsi27
81 files changed, 3075 insertions, 120 deletions
diff --git a/bindings/arm/msm/msm.txt b/bindings/arm/msm/msm.txt
index 38aa8617..2f33b86d 100755
--- a/bindings/arm/msm/msm.txt
+++ b/bindings/arm/msm/msm.txt
@@ -297,6 +297,7 @@ compatible = "qcom,sa2150p-ccard"
compatible = "qcom,qcs403-iot"
compatible = "qcom,sa8150-adp-star"
compatible = "qcom,adp-star"
+compatible = "qcom,qam-star"
compatible = "qcom,sdxprairie-rumi"
compatible = "qcom,sdxprairie-mtp"
compatible = "qcom,sdxprairie-cdp"
@@ -337,9 +338,11 @@ compatible = "qcom,direwolf-adas-adp-ride"
compatible = "qcom,lemans-rumi"
compatible = "qcom,lemans-ivi"
compatible = "qcom,lemans-ivi-adp-star"
+compatible = "qcom,lemans-ivi-qam-star"
compatible = "qcom,lemans-ivi-adp-air"
compatible = "qcom,lemans-adas-high"
compatible = "qcom,lemans-adas-high-adp-star"
+compatible = "qcom,lemans-adas-high-qam-star"
compatible = "qcom,lemans-adas-high-adp-air"
compatible = "qcom,quinvm"
compatible = "qcom,sa410m-idp"
diff --git a/bindings/clock/qcom,debugcc.txt b/bindings/clock/qcom,debugcc.txt
index 2fa5be09..0e89973e 100755
--- a/bindings/clock/qcom,debugcc.txt
+++ b/bindings/clock/qcom,debugcc.txt
@@ -21,6 +21,7 @@ Required properties :
"qcom,bengal-debugcc"
"qcom,lemans-debugcc"
"qcom,sdx55-debugcc"
+ "qcom,kona-debugcc"
- qcom,gcc: phandle to the GCC device node.
- qcom,videocc: phandle to the Video CC device node.
diff --git a/bindings/sound/tlv320aic3x.txt b/bindings/sound/tlv320aic3x.txt
index 9796c463..58a20dda 100755
--- a/bindings/sound/tlv320aic3x.txt
+++ b/bindings/sound/tlv320aic3x.txt
@@ -18,6 +18,7 @@ Required properties:
Optional properties:
- reset-gpios - GPIO specification for the active low RESET input.
+- reset-inverted - set the reset gpio mode as active high
- ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality
- Not supported on tlv320aic3104
- ai3x-micbias-vg - MicBias Voltage required.
diff --git a/qcom/Makefile b/qcom/Makefile
index 1ef071ea..5b328cad 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-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-standalone-idp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb monaco-standalone-1gb.dtb monacop-standalone-1gb.dtb
+monaco-standalone-idp-v2-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb monaco-standalone-1gb.dtb monacop-standalone-1gb.dtb
+monaco-standalone-idp-v3-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb monaco-standalone-1gb.dtb monacop-standalone-1gb.dtb
+monacop-standalone-idp-v1-overlay.dtbo-base := monaco-standalone-1gb.dtb monaco.dtb
+monaco-standalone-atp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb monaco-standalone-1gb.dtb monacop-standalone-1gb.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-standalone.dtb monacop-standalone.dtb
+monaco-standalone-wdp-v1-overlay.dtbo-base := monaco-standalone.dtb monacop-standalone.dtb monaco-standalone-1gb.dtb monacop-standalone-1gb.dtb
monaco-wdp-v1-overlay.dtbo-base := monaco.dtb monacop.dtb
monaco-wdp-v1.1-overlay.dtbo-base := monaco.dtb monacop.dtb
@@ -584,7 +584,8 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
direwolf-vm-la-overlay.dtbo \
direwolf-vm-la1-mt-overlay.dtbo \
direwolf-vm-lv-mt-overlay.dtbo \
- direwolf-vm-lv-overlay.dtbo
+ direwolf-vm-lv-overlay.dtbo \
+ lemans-vm-lv-overlay.dtbo
sa8155-vm-la-overlay.dtbo-base := sa8155-vm-la.dtb
sa8155-vm-lv-overlay.dtbo-base := sa8155-vm-lv.dtb
@@ -601,6 +602,7 @@ direwolf-vm-la-overlay.dtbo-base := direwolf-vm-la.dtb
direwolf-vm-la1-mt-overlay.dtbo-base := direwolf-vm-la1-mt.dtb
direwolf-vm-lv-mt-overlay.dtbo-base := direwolf-vm-lv-mt.dtb
direwolf-vm-lv-overlay.dtbo-base := direwolf-vm-lv.dtb
+lemans-vm-lv-overlay.dtbo-base := lemans-vm-lv.dtb
else
dtb-$(CONFIG_QTI_QUIN_GVM) += sa8155-vm-la.dtb \
sa8155-vm-lv.dtb \
@@ -617,7 +619,8 @@ dtb-$(CONFIG_QTI_QUIN_GVM) += sa8155-vm-la.dtb \
direwolf-vm-la.dtb \
direwolf-vm-la-mt.dtb \
direwolf-vm-la1-mt.dtb \
- direwolf-vm-lv-mt.dtb
+ direwolf-vm-lv-mt.dtb \
+ lemans-vm-lv.dtb
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
@@ -656,19 +659,25 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
dtbo-$(CONFIG_ARCH_LEMANS) += lemans-rumi-overlay.dtbo \
lemans-adas-high-adp-air-overlay.dtbo \
lemans-adas-high-adp-star-overlay.dtbo \
+ lemans-adas-high-qam-star-overlay.dtbo \
lemans-ivi-adp-air-overlay.dtbo \
+ lemans-ivi-qam-star-overlay.dtbo \
lemans-ivi-adp-star-overlay.dtbo
lemans-rumi-overlay.dtbo-base := lemans-adas-high.dtb
lemans-adas-high-adp-air-overlay.dtbo-base := lemans-adas-high.dtb
lemans-adas-high-adp-star-overlay.dtbo-base := lemans-adas-high.dtb
+lemans-adas-high-qam-star-overlay.dtbo-base := lemans-adas-high.dtb
lemans-ivi-adp-air-overlay.dtbo-base := lemans-ivi.dtb
lemans-ivi-adp-star-overlay.dtbo-base := lemans-ivi.dtb
+lemans-ivi-qam-star-overlay.dtbo-base := lemans-ivi.dtb
else
dtb-$(CONFIG_ARCH_LEMANS) += lemans-rumi.dtb \
lemans-adas-high-adp-air.dtb \
lemans-adas-high-adp-star.dtb \
+ lemans-adas-high-qam-star.dtb \
lemans-ivi-adp-air.dtb \
+ lemans-ivi-qam-star.dtb \
lemans-ivi-adp-star.dtb
endif
diff --git a/qcom/blair-atp-overlay.dts b/qcom/blair-atp-overlay.dts
index c96b78ec..855b8a3c 100755
--- a/qcom/blair-atp-overlay.dts
+++ b/qcom/blair-atp-overlay.dts
@@ -6,6 +6,6 @@
/ {
model = "Qualcomm Technologies, Inc. Blair ATP";
compatible = "qcom,blair-atp", "qcom,blair", "qcom,atp";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <33 0>;
};
diff --git a/qcom/blair-cdp-overlay.dts b/qcom/blair-cdp-overlay.dts
index e4b36a58..4b19f257 100755
--- a/qcom/blair-cdp-overlay.dts
+++ b/qcom/blair-cdp-overlay.dts
@@ -6,6 +6,6 @@
/ {
model = "Qualcomm Technologies, Inc. Blair CDP";
compatible = "qcom,blair-cdp", "qcom,blair", "qcom,cdp";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <1 0>;
};
diff --git a/qcom/blair-mtp-nopmi-overlay.dts b/qcom/blair-mtp-nopmi-overlay.dts
index 45f5b62a..0f587480 100755
--- a/qcom/blair-mtp-nopmi-overlay.dts
+++ b/qcom/blair-mtp-nopmi-overlay.dts
@@ -6,7 +6,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair MTP NOPMI";
compatible = "qcom,blair-mtp", "qcom,blair", "qcom,mtp";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <8 0>;
};
diff --git a/qcom/blair-mtp-overlay.dts b/qcom/blair-mtp-overlay.dts
index 7f146408..b611eddd 100755
--- a/qcom/blair-mtp-overlay.dts
+++ b/qcom/blair-mtp-overlay.dts
@@ -6,7 +6,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair MTP";
compatible = "qcom,blair-mtp", "qcom,blair", "qcom,mtp";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <8 0>;
};
diff --git a/qcom/blair-mtp-usbc-overlay.dts b/qcom/blair-mtp-usbc-overlay.dts
index f5161de1..18a665df 100755
--- a/qcom/blair-mtp-usbc-overlay.dts
+++ b/qcom/blair-mtp-usbc-overlay.dts
@@ -6,7 +6,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair MTP USBC audio";
compatible = "qcom,blair-mtp", "qcom,blair", "qcom,mtp";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <8 1>;
};
diff --git a/qcom/blair-qrd-nopmi-overlay.dts b/qcom/blair-qrd-nopmi-overlay.dts
index 744a11f3..ddfc3dd4 100755
--- a/qcom/blair-qrd-nopmi-overlay.dts
+++ b/qcom/blair-qrd-nopmi-overlay.dts
@@ -6,7 +6,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair QRD NOPMI";
compatible = "qcom,blair-qrd", "qcom,blair", "qcom,qrd";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <0x1000B 0>;
};
diff --git a/qcom/blair-qrd-overlay.dts b/qcom/blair-qrd-overlay.dts
index 04955e48..d0f42211 100755
--- a/qcom/blair-qrd-overlay.dts
+++ b/qcom/blair-qrd-overlay.dts
@@ -6,7 +6,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair QRD";
compatible = "qcom,blair-qrd", "qcom,blair", "qcom,qrd";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <0x1000B 0>;
};
diff --git a/qcom/blair-rumi-overlay.dts b/qcom/blair-rumi-overlay.dts
index 36113587..b1720bf4 100755
--- a/qcom/blair-rumi-overlay.dts
+++ b/qcom/blair-rumi-overlay.dts
@@ -6,6 +6,6 @@
/ {
model = "Qualcomm Technologies, Inc. Blair RUMI";
compatible = "qcom,blair-rumi", "qcom,blair", "qcom,rumi";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
qcom,board-id = <15 0>;
};
diff --git a/qcom/blair.dtsi b/qcom/blair.dtsi
index 4fe63f0d..7e6ec4e1 100755
--- a/qcom/blair.dtsi
+++ b/qcom/blair.dtsi
@@ -17,7 +17,7 @@
/ {
model = "Qualcomm Technologies, Inc. Blair ";
compatible = "qcom,blair";
- qcom,msm-id = <507 0x10000>;
+ qcom,msm-id = <507 0x10000>, <578 0x10000>;
interrupt-parent = <&intc>;
#address-cells = <2>;
@@ -3705,6 +3705,73 @@
qcom,bus-max-ddr7 = <4>;
};
};
+
+ qcom,gpu-pwrlevels-3 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ qcom,speed-bin = <148>;
+ qcom,ca-target-pwrlevel = <3>;
+ qcom,initial-pwrlevel = <4>;
+
+
+ /* NOM_L1 */
+ qcom,gpu-pwrlevel@0 {
+ reg = <0>;
+ qcom,gpu-freq = <700000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
+
+ qcom,bus-freq-ddr7 = <9>;
+ qcom,bus-min-ddr7 = <5>;
+ qcom,bus-max-ddr7 = <9>;
+
+ };
+
+ /* NOM */
+ qcom,gpu-pwrlevel@1 {
+ reg = <1>;
+ qcom,gpu-freq = <650000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_NOM>;
+
+ qcom,bus-freq-ddr7 = <6>;
+ qcom,bus-min-ddr7 = <5>;
+ qcom,bus-max-ddr7 = <8>;
+
+ };
+
+ /* SVS_L1 */
+ qcom,gpu-pwrlevel@2 {
+ reg = <2>;
+ qcom,gpu-freq = <490000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
+
+ qcom,bus-freq-ddr7 = <5>;
+ qcom,bus-min-ddr7 = <4>;
+ qcom,bus-max-ddr7 = <7>;
+
+ };
+
+ /* SVS */
+ qcom,gpu-pwrlevel@3 {
+ reg = <3>;
+ qcom,gpu-freq = <390000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_SVS>;
+
+ qcom,bus-freq-ddr7 = <4>;
+ qcom,bus-min-ddr7 = <2>;
+ qcom,bus-max-ddr7= <5>;
+ };
+
+ /* LOW SVS */
+ qcom,gpu-pwrlevel@4 {
+ reg = <4>;
+ qcom,gpu-freq = <266000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
+
+ qcom,bus-freq-ddr7 = <2>;
+ qcom,bus-min-ddr7 = <1>;
+ qcom,bus-max-ddr7 = <4>;
+ };
+ };
};
};
diff --git a/qcom/direwolf-cnss-dual.dtsi b/qcom/direwolf-cnss-dual.dtsi
index 9ca45c52..70bd8964 100755
--- a/qcom/direwolf-cnss-dual.dtsi
+++ b/qcom/direwolf-cnss-dual.dtsi
@@ -328,6 +328,134 @@
};
};
};
+
+ chip_cfg@3 {
+ reg = <0xb0000000 0x10000>;
+ reg-names = "smmu_iova_ipa";
+
+ supported-ids = <0x1103>;
+ wlan_vregs = "vdd-wlan-vl", "vdd-wlan-vm",
+ "vdd-wlan-vh";
+ qcom,vdd-wlan-vl-config = <1055000 1055000 0 0 0>;
+ qcom,vdd-wlan-vm-config = <0 0 0 0 0>;
+ qcom,vdd-wlan-vh-config = <0 0 0 0 0>;
+
+ qcom,wlan-ramdump-dynamic = <0x420000>;
+ mhi,max-channels = <30>;
+ mhi,timeout = <10000>;
+ mhi,m2-no-db-access;
+
+ mhi_channels {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ mhi_chan@0 {
+ reg = <0>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@1 {
+ reg = <1>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@4 {
+ reg = <4>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@5 {
+ reg = <5>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@20 {
+ reg = <20>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <1>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-start;
+ };
+
+ mhi_chan@21 {
+ reg = <21>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-queue;
+ mhi,auto-start;
+ };
+ };
+
+ mhi_events {
+ mhi_event@0 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <1>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <1>;
+ };
+
+ mhi_event@1 {
+ mhi,num-elements = <256>;
+ mhi,intmod = <1>;
+ mhi,msi = <2>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ };
+
+ mhi_event@2 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <0>;
+ mhi,priority = <2>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <3>;
+ };
+
+ };
+
+ mhi_devices {
+ mhi_qrtr {
+ mhi,chan = "IPCR";
+ qcom,net-id = <0>;
+ qcom,low-latency;
+ mhi,early-notify;
+ };
+ };
+ };
};
cnss_pcie2: qcom,cnss-qca-converged2 {
@@ -575,6 +703,134 @@
};
};
};
+
+ chip_cfg@3 {
+ reg = <0xb0000000 0x10000>;
+ reg-names = "smmu_iova_ipa";
+
+ supported-ids = <0x1103>;
+ wlan_vregs = "vdd-wlan-vl", "vdd-wlan-vm",
+ "vdd-wlan-vh";
+ qcom,vdd-wlan-vl-config = <1055000 1055000 0 0 0>;
+ qcom,vdd-wlan-vm-config = <0 0 0 0 0>;
+ qcom,vdd-wlan-vh-config = <0 0 0 0 0>;
+
+ qcom,wlan-ramdump-dynamic = <0x420000>;
+ mhi,max-channels = <30>;
+ mhi,timeout = <10000>;
+ mhi,m2-no-db-access;
+
+ mhi_channels {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ mhi_chan@0 {
+ reg = <0>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@1 {
+ reg = <1>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@4 {
+ reg = <4>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@5 {
+ reg = <5>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@20 {
+ reg = <20>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <1>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-start;
+ };
+
+ mhi_chan@21 {
+ reg = <21>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-queue;
+ mhi,auto-start;
+ };
+ };
+
+ mhi_events {
+ mhi_event@0 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <1>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <1>;
+ };
+
+ mhi_event@1 {
+ mhi,num-elements = <256>;
+ mhi,intmod = <1>;
+ mhi,msi = <2>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ };
+
+ mhi_event@2 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <0>;
+ mhi,priority = <2>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <3>;
+ };
+
+ };
+
+ mhi_devices {
+ mhi_qrtr {
+ mhi,chan = "IPCR";
+ qcom,net-id = <0>;
+ qcom,low-latency;
+ mhi,early-notify;
+ };
+ };
+ };
};
};
diff --git a/qcom/direwolf-vm-lv-mt.dtsi b/qcom/direwolf-vm-lv-mt.dtsi
index def95592..add1fe4e 100755
--- a/qcom/direwolf-vm-lv-mt.dtsi
+++ b/qcom/direwolf-vm-lv-mt.dtsi
@@ -26,3 +26,15 @@
&pcie2a_msi_snps {
status = "okay";
};
+
+&qupv3_0 {
+ status = "disabled";
+};
+
+&qupv3_1 {
+ status = "disabled";
+};
+
+&qupv3_2 {
+ status = "disabled";
+};
diff --git a/qcom/direwolf-vm.dtsi b/qcom/direwolf-vm.dtsi
index 071ccdc8..cee848ed 100755
--- a/qcom/direwolf-vm.dtsi
+++ b/qcom/direwolf-vm.dtsi
@@ -1,4 +1,5 @@
#include <dt-bindings/clock/qcom,gcc-direwolf.h>
+#include <dt-bindings/interconnect/qcom,direwolf.h>
#include "quin-vm-common.dtsi"
/ {
@@ -443,6 +444,78 @@
};
};
+ virtio_icc: virtio_icc@0x1cc00000 {
+ compatible = "virtio,mmio";
+ reg = <0x1cc00000 0x1000>;
+ interrupts = <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>;
+ #interconnect-cells = <1>;
+
+ xm_usb3_0 {
+ node-name = "usb3_0";
+ node-id = /bits/ 16 <MASTER_USB3_0>;
+ node-num-links = /bits/ 16 <1>;
+ node-links = /bits/ 16 <SLAVE_EBI1>;
+ };
+
+ xm_usb3_1 {
+ node-name = "usb3_1";
+ node-id = /bits/ 16 <MASTER_USB3_1>;
+ node-num-links = /bits/ 16 <1>;
+ node-links = /bits/ 16 <SLAVE_EBI1>;
+ };
+
+ xm_usb3_mp {
+ node-name = "usb3_mp";
+ node-id = /bits/ 16 <MASTER_USB3_MP>;
+ node-num-links = /bits/ 16 <1>;
+ node-links = /bits/ 16 <SLAVE_EBI1>;
+ };
+
+ qhm_pcie_2a {
+ node-name = "pcie_2a";
+ node-id = /bits/ 16 <MASTER_PCIE_2A>;
+ node-num-links = /bits/ 16 <1>;
+ node-links = /bits/ 16 <SLAVE_EBI1>;
+ };
+
+ ebi {
+ node-name = "ebi1";
+ node-id = /bits/ 16 <SLAVE_EBI1>;
+ node-num-links = /bits/ 16 <0>;
+ };
+
+ chm_apps {
+ node-name = "appss_proc";
+ node-id = /bits/ 16 <MASTER_APPSS_PROC>;
+ node-num-links = /bits/ 16 <4>;
+ node-links = /bits/ 16 <SLAVE_USB3_0 SLAVE_USB3_1 SLAVE_USB3_MP SLAVE_UFS_MEM_CFG>;
+ };
+
+ qhs_usb3_0 {
+ node-name = "usb3_0";
+ node-id = /bits/ 16 <SLAVE_USB3_0>;
+ node-num-links = /bits/ 16 <0>;
+ };
+
+ qhs_usb3_1 {
+ node-name = "usb3_1";
+ node-id = /bits/ 16 <SLAVE_USB3_1>;
+ node-num-links = /bits/ 16 <0>;
+ };
+
+ qhs_usb3_mp {
+ node-name = "usb3_mp";
+ node-id = /bits/ 16 <SLAVE_USB3_MP>;
+ node-num-links = /bits/ 16 <0>;
+ };
+
+ qhs_ufs_mem_cfg {
+ node-name = "ufs_mem_1_cfg";
+ node-id = /bits/ 16 <SLAVE_UFS_MEM_CFG>;
+ node-num-links = /bits/ 16 <0>;
+ };
+ };
+
VDD_CX_LEVEL:
S1A0_LEVEL: pm8540_a0_s1_level: regulator-pm8540_a0-s1-level {
compatible = "qcom,stub-regulator";
diff --git a/qcom/kona-qrd.dtsi b/qcom/kona-qrd.dtsi
index e595bfbb..c85ff465 100755
--- a/qcom/kona-qrd.dtsi
+++ b/qcom/kona-qrd.dtsi
@@ -3,6 +3,8 @@
#include "kona-thermal-overlay.dtsi"
#include "kona-audio-overlay.dtsi"
#include <dt-bindings/iio/qti_power_supply_iio.h>
+#include "display/kona-sde.dtsi"
+#include "display/kona-sde-display.dtsi"
&vendor {
kona_qrd_batterydata: qcom,battery-data {
diff --git a/qcom/kona-v2.1-iot-rb5.dtsi b/qcom/kona-v2.1-iot-rb5.dtsi
index 9b02566a..93b9e4bc 100755
--- a/qcom/kona-v2.1-iot-rb5.dtsi
+++ b/qcom/kona-v2.1-iot-rb5.dtsi
@@ -1,5 +1,6 @@
#include "kona-qrd.dtsi"
#include "kona-iot-rb5-audio.dtsi"
+#include "camera/kona-camera-sensor-rb5.dtsi"
&qupv3_se12_2uart {
status = "okay";
@@ -246,7 +247,7 @@
reg = <0x45>;
rst-gpios = <&tlmm 140 GPIO_ACTIVE_HIGH>;
rtc_rst-gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
- //prg-gpios = <3 4 5>;
+ prg-gpios = <3 4 5>;
int-gpios = <&tlmm 122 GPIO_ACTIVE_HIGH>,
<&tlmm 123 GPIO_ACTIVE_HIGH>,
<&tlmm 66 GPIO_ACTIVE_HIGH>;
@@ -267,7 +268,7 @@
reg = <0x45>;
rst-gpios = <&tlmm 140 GPIO_ACTIVE_HIGH>;
rtc_rst-gpios = <&tlmm 0 GPIO_ACTIVE_HIGH>;
- //prg-gpios = <0 1 2>;
+ prg-gpios = <0 1 2>;
int-gpios = <&tlmm 129 GPIO_ACTIVE_HIGH>,
<&tlmm 141 GPIO_ACTIVE_HIGH>,
<&tlmm 113 GPIO_ACTIVE_HIGH>;
@@ -285,3 +286,87 @@
status = "okay";
};
};
+
+&sde_dsi {
+ qcom,dsi-default-panel = <&dsi_ext_bridge_1080p>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ ext_dsi_out: endpoint {
+ remote-endpoint = <&lt9611_in>;
+ };
+ };
+ };
+};
+
+&mdss_mdp {
+ connectors = <&smmu_sde_unsec &sde_wb &sde_dsi &sde_dsi1 &sde_rscc>;
+};
+
+&qupv3_se5_i2c {
+ status = "ok";
+ lt9611: lt,lt9611@2b {
+ compatible = "lt,lt9611uxc";
+ reg = <0x2b>;
+ interrupt-parent = <&tlmm>;
+ interrupts = <63 0>;
+ interrupt-names = "lt_irq";
+ lt,irq-gpio = <&tlmm 63 0>;
+ lt,reset-gpio = <&pm8150l_gpios 5 0x0>;
+ instance_id = <0>;
+ lt,non-pluggable;
+
+ pinctrl-names = "default";
+ pinctrl-0 = <&lt9611_pins &lt9611_rst_pin_out_default>;
+
+ lt,preferred-mode = "1920x1080";
+
+ totalVoltage-supply = <&pm8150a_l11>;
+ lt,supply-entries {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ lt,supply-entry@0 {
+ reg = <0>;
+ lt,supply-name = "totalVoltage";
+ lt,supply-min-voltage = <3300000>;
+ lt,supply-max-voltage = <3300000>;
+ lt,supply-enable-load = <200000>;
+ lt,supply-post-on-sleep = <50>;
+ };
+ };
+
+ lt,customize-modes {
+ lt,customize-mode-id@0 {
+ lt,mode-h-active = <1920>;
+ lt,mode-h-front-porch = <88>;
+ lt,mode-h-pulse-width = <44>;
+ lt,mode-h-back-porch = <148>;
+ lt,mode-h-active-high;
+ lt,mode-v-active = <1080>;
+ lt,mode-v-front-porch = <4>;
+ lt,mode-v-pulse-width = <5>;
+ lt,mode-v-back-porch = <36>;
+ lt,mode-v-active-high;
+ lt,mode-refresh-rate = <60>;
+ lt,mode-clock-in-khz = <148500>;
+ };
+ };
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+ lt9611_in: endpoint {
+ remote-endpoint = <&ext_dsi_out>;
+ };
+ };
+ };
+ };
+};
diff --git a/qcom/kona.dtsi b/qcom/kona.dtsi
index 9a59a631..dfdabadd 100755
--- a/qcom/kona.dtsi
+++ b/qcom/kona.dtsi
@@ -4003,7 +4003,7 @@
iommus = <&apps_smmu 0x1001 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb2 {
@@ -4012,7 +4012,7 @@
iommus = <&apps_smmu 0x1002 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb3 {
@@ -4021,7 +4021,7 @@
iommus = <&apps_smmu 0x1003 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb4 {
@@ -4030,7 +4030,7 @@
iommus = <&apps_smmu 0x1004 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb5 {
@@ -4039,7 +4039,7 @@
iommus = <&apps_smmu 0x1005 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb6 {
@@ -4048,7 +4048,7 @@
iommus = <&apps_smmu 0x1006 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb7 {
@@ -4057,7 +4057,7 @@
iommus = <&apps_smmu 0x1007 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb8 {
@@ -4066,7 +4066,7 @@
iommus = <&apps_smmu 0x1008 0x0460>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb9 {
@@ -4077,7 +4077,7 @@
qcom,iommu-dma-addr-pool = <0x60000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
qcom,iommu-vmid = <0xA>; /* VMID_CP_PIXEL */
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb10 {
@@ -4086,7 +4086,7 @@
iommus = <&apps_smmu 0x1803 0x0>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb11 {
@@ -4095,7 +4095,7 @@
iommus = <&apps_smmu 0x1804 0x0>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb12 {
@@ -4104,7 +4104,7 @@
iommus = <&apps_smmu 0x1805 0x0>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb13 {
@@ -4113,7 +4113,7 @@
iommus = <&apps_smmu 0x0541 0x0>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb14 {
@@ -4122,7 +4122,7 @@
iommus = <&apps_smmu 0x0542 0x0>;
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
- dma-coherent;
+ dma-coherent-hint-cached;
};
qcom,msm_fastrpc_compute_cb15 {
@@ -4132,7 +4132,7 @@
qcom,iommu-dma-addr-pool = <0x80000000 0x78000000>;
qcom,iommu-faults = "stall-disable", "HUPCF";
shared-cb = <4>;
- dma-coherent;
+ dma-coherent-hint-cached;
};
};
@@ -5024,6 +5024,7 @@
#include "msm-rdbg.dtsi"
#include "kona-pm.dtsi"
+#include "camera/kona-camera.dtsi"
#include "kona-qupv3.dtsi"
#include "kona-audio.dtsi"
#include "kona-thermal.dtsi"
diff --git a/qcom/lemans-adas-high-qam-star-overlay.dts b/qcom/lemans-adas-high-qam-star-overlay.dts
new file mode 100755
index 00000000..a6a1b34f
--- /dev/null
+++ b/qcom/lemans-adas-high-qam-star-overlay.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+/plugin/;
+
+#include "lemans-qam-star.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Lemans ADAS HIGH QAM STAR";
+ compatible = "qcom,lemans-adas-high", "qcom,lemans", "qcom,qam-star", "qcom,lemans-adas-high-qam-star";
+ qcom,msm-id = <533 0x10000>;
+ qcom,board-id = <0x10025 0>;
+};
+
diff --git a/qcom/lemans-adas-high-qam-star.dts b/qcom/lemans-adas-high-qam-star.dts
new file mode 100755
index 00000000..5b9b612f
--- /dev/null
+++ b/qcom/lemans-adas-high-qam-star.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "lemans-adas-high.dtsi"
+#include "lemans-qam-star.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Lemans ADAS HIGH QAM STAR";
+ compatible = "qcom,lemans-adas-high", "qcom,lemans", "qcom,qam-star", "qcom,lemans-adas-high-qam-star";
+};
+
diff --git a/qcom/lemans-adp-common.dtsi b/qcom/lemans-adp-common.dtsi
index a71710fe..b38cfbc7 100755
--- a/qcom/lemans-adp-common.dtsi
+++ b/qcom/lemans-adp-common.dtsi
@@ -1,4 +1,5 @@
#include "lemans-pmic-overlay.dtsi"
+#include "lemans-thermal-overlay.dtsi"
&soc {
diff --git a/qcom/lemans-gpu.dtsi b/qcom/lemans-gpu.dtsi
new file mode 100755
index 00000000..e4ec44f8
--- /dev/null
+++ b/qcom/lemans-gpu.dtsi
@@ -0,0 +1,282 @@
+
+#define MHZ_TO_KBPS(mhz, w) ((mhz * 1000000 * w) / (1024))
+
+&soc {
+ pil_gpu: qcom,kgsl-hyp {
+ compatible = "qcom,pil-tz-generic";
+ qcom,pas-id = <13>;
+ qcom,firmware-name = "a663_zap";
+ memory-region = <&pil_gpu_mem>;
+ };
+
+ kgsl_ddr_qos: qcom,kgsl-ddr-qos {
+ compatible = "qcom,devfreq-qoslat";
+ governor = "powersave";
+ operating-points-v2 = <&qoslat_opp_table>;
+ mboxes = <&qmp_aop 0>;
+ };
+
+ msm_gpu: qcom,kgsl-3d0@3d00000 {
+ compatible = "qcom,kgsl-3d0";
+ status = "ok";
+ reg = <0x3d00000 0x40000>, <0x3d61000 0x800>,
+ <0x3de0000 0x10000>, <0x4900000 0x80000>,
+ <0x3dff000 0x1000>;
+ reg-names = "kgsl_3d0_reg_memory", "cx_dbgc", "rscc",
+ "qdss_gfx", "fusa";
+ interrupts = <0 300 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "kgsl_3d0_irq";
+
+ clocks = <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
+ <&gcc GCC_GPU_SNOC_DVM_GFX_CLK>,
+ <&gpucc GPU_CC_AHB_CLK>,
+ <&gpucc GPU_CC_CX_GMU_CLK>,
+ <&gpucc GPU_CC_HLOS1_VOTE_GPU_SMMU_CLK>,
+ <&gpucc GPU_CC_HUB_AON_CLK>,
+ <&gpucc GPU_CC_HUB_CX_INT_CLK>,
+ <&aopcc QDSS_CLK>;
+ clock-names = "gcc_gpu_memnoc_gfx",
+ "gcc_gpu_snoc_dvm_gfx",
+ "gpu_cc_ahb",
+ "gpu_cc_cx_gmu",
+ "gpu_cc_hlos1_vote_gpu_smmu",
+ "gpu_cc_hub_aon",
+ "gpu_cc_hub_cx_int",
+ "apb_pclk";
+
+ qcom,chipid = <0x06060300>;
+
+ qcom,initial-pwrlevel = <5>;
+
+ qcom,no-nap;
+
+ qcom,highest-bank-bit = <16>;
+
+ qcom,min-access-length = <32>;
+
+ qcom,ubwc-mode = <4>;
+
+ qcom,gpu-qdss-stm = <0x161c0000 0x40000>; /* base addr, size */
+
+ nvmem-cells = <&gpu_speed_bin>;
+ nvmem-cell-names = "speed_bin";
+
+ qcom,tzone-names = "gpuss-0-usr", "gpuss-1-usr";
+
+ interconnect-names = "gpu_icc_path", "l3_path";
+ interconnects = <&gem_noc MASTER_GFX3D &mc_virt SLAVE_EBI1>,
+ <&epss_l3_cpu MASTER_EPSS_L3_APPS &epss_l3_cpu SLAVE_EPSS_L3_SHARED>;
+
+ qcom,bus-table-ddr7 =
+ <MHZ_TO_KBPS(0, 4)>, /* index=0 */
+ <MHZ_TO_KBPS(200, 4)>, /* index=1 */
+ <MHZ_TO_KBPS(451, 4)>, /* index=2 */
+ <MHZ_TO_KBPS(547, 4)>, /* index=3 */
+ <MHZ_TO_KBPS(681, 4)>, /* index=4 */
+ <MHZ_TO_KBPS(768, 4)>, /* index=5 */
+ <MHZ_TO_KBPS(1017, 4)>, /* index=6 */
+ <MHZ_TO_KBPS(1353, 4)>, /* index=7 */
+ <MHZ_TO_KBPS(1555, 4)>, /* index=8 */
+ <MHZ_TO_KBPS(1708, 4)>, /* index=9 */
+ <MHZ_TO_KBPS(2092, 4)>, /* index=10 */
+ <MHZ_TO_KBPS(2133, 4)>; /* index=11 */
+
+
+ qcom,bus-table-ddr8 =
+ <MHZ_TO_KBPS(0, 4)>, /* index=0 */
+ <MHZ_TO_KBPS(200, 4)>, /* index=1 */
+ <MHZ_TO_KBPS(451, 4)>, /* index=2 */
+ <MHZ_TO_KBPS(547, 4)>, /* index=3 */
+ <MHZ_TO_KBPS(681, 4)>, /* index=4 */
+ <MHZ_TO_KBPS(768, 4)>, /* index=5 */
+ <MHZ_TO_KBPS(1017, 4)>, /* index=6 */
+ <MHZ_TO_KBPS(1555, 4)>, /* index=7 */
+ <MHZ_TO_KBPS(1708, 4)>, /* index=8 */
+ <MHZ_TO_KBPS(2092, 4)>, /* index=9 */
+ <MHZ_TO_KBPS(2736, 4)>, /* index=10 */
+ <MHZ_TO_KBPS(3196, 4)>; /* index=11 */
+
+ qcom,bus-table-cnoc =
+ <0>, /* Off */
+ <100>; /* On */
+
+ qcom,l3-pwrlevels {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ compatible = "qcom,l3-pwrlevels";
+
+ qcom,l3-pwrlevel@0 {
+ reg = <0>;
+ qcom,l3-freq = <0>;
+ };
+
+ qcom,l3-pwrlevel@1 {
+ reg = <1>;
+ qcom,l3-freq = <614400000>;
+ };
+
+ qcom,l3-pwrlevel@2 {
+ reg = <2>;
+ qcom,l3-freq = <1516800000>;
+ };
+ };
+
+ qcom,gpu-mempools {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ compatible = "qcom,gpu-mempools";
+
+ /* 4K Page Pool configuration */
+ qcom,gpu-mempool@0 {
+ reg = <0>;
+ qcom,mempool-page-size = <4096>;
+ qcom,mempool-reserved = <2048>;
+ };
+ /* 8K Page Pool configuration */
+ qcom,gpu-mempool@1 {
+ reg = <1>;
+ qcom,mempool-page-size = <8192>;
+ qcom,mempool-reserved = <1024>;
+ };
+ /* 64K Page Pool configuration */
+ qcom,gpu-mempool@2 {
+ reg = <2>;
+ qcom,mempool-page-size = <65536>;
+ qcom,mempool-reserved = <256>;
+ };
+ /* 128K Page Pool configuration */
+ qcom,gpu-mempool@3 {
+ reg = <3>;
+ qcom,mempool-page-size = <131072>;
+ qcom,mempool-reserved = <128>;
+ };
+ /* 256K Page Pool configuration */
+ qcom,gpu-mempool@4 {
+ reg = <4>;
+ qcom,mempool-page-size = <262144>;
+ qcom,mempool-reserved = <80>;
+ };
+ /* 1M Page Pool configuration */
+ qcom,gpu-mempool@5 {
+ reg = <5>;
+ qcom,mempool-page-size = <1048576>;
+ qcom,mempool-reserved = <32>;
+ };
+ };
+
+ /* Power levels */
+ qcom,gpu-pwrlevels {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ compatible = "qcom,gpu-pwrlevels";
+
+ qcom,gpu-pwrlevel@0 {
+ reg = <0>;
+ qcom,gpu-freq = <840000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
+
+ qcom,bus-freq-ddr7 = <11>;
+ qcom,bus-min-ddr7 = <11>;
+ qcom,bus-max-ddr7 = <11>;
+
+ qcom,bus-freq-ddr8 = <11>;
+ qcom,bus-min-ddr8 = <11>;
+ qcom,bus-max-ddr8 = <11>;
+ };
+
+ qcom,gpu-pwrlevel@1 {
+ reg = <1>;
+ qcom,gpu-freq = <778000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_TURBO>;
+
+ qcom,bus-freq-ddr7 = <11>;
+ qcom,bus-min-ddr7 = <11>;
+ qcom,bus-max-ddr7 = <11>;
+
+ qcom,bus-freq-ddr8 = <10>;
+ qcom,bus-min-ddr8 = <10>;
+ qcom,bus-max-ddr8 = <11>;
+ };
+
+ qcom,gpu-pwrlevel@2 {
+ reg = <2>;
+ qcom,gpu-freq = <676000000>;
+ qcom,level = <RPMH_REGULATOR_LEVEL_NOM>;
+
+ qcom,bus-freq-ddr7 = <8>;
+ qcom,bus-min-ddr7 = <7>;
+ qcom,bus-max-ddr7 = <11>;
+
+ qcom,bus-freq-ddr8 = <7>;
+ qcom,bus-min-ddr8 = <7>;
+ qcom,bus-max-ddr8 = <11>;
+ };
+
+ };
+ };
+
+ kgsl_msm_iommu: qcom,kgsl-iommu@3da0000 {
+ compatible = "qcom,kgsl-smmu-v2";
+ reg = <0x03da0000 0x20000>;
+
+ vddcx-supply = <&gpu_cc_cx_gdsc>;
+
+ gfx3d_user: gfx3d_user {
+ compatible = "qcom,smmu-kgsl-cb";
+ iommus = <&kgsl_smmu 0x0 0xc00>;
+ qcom,iommu-dma = "disabled";
+ };
+
+ gfx3d_lpac: gfx3d_lpac {
+ compatible = "qcom,smmu-kgsl-cb";
+ iommus = <&kgsl_smmu 0x1 0xc00>;
+ qcom,iommu-dma = "disabled";
+ };
+
+ gfx3d_secure: gfx3d_secure {
+ compatible = "qcom,smmu-kgsl-cb";
+ iommus = <&kgsl_smmu 0x2 0xc00>;
+ qcom,iommu-dma = "disabled";
+ };
+ };
+
+ gmu: qcom,gmu@3d69000 {
+ compatible = "qcom,gpu-gmu";
+
+ reg = <0x3d6a000 0x34000>,
+ <0xb290000 0x10000>,
+ <0xb490000 0x10000>;
+
+ reg-names = "kgsl_gmu_reg",
+ "kgsl_gmu_pdc_cfg",
+ "kgsl_gmu_pdc_seq";
+
+ interrupts = <0 304 IRQ_TYPE_LEVEL_HIGH>,
+ <0 305 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "kgsl_hfi_irq", "kgsl_gmu_irq";
+
+ regulator-names = "vddcx", "vdd", "vdd-parent";
+
+ iommus = <&kgsl_smmu 0x5 0xc00>;
+ qcom,iommu-dma = "disabled";
+
+ vddcx-supply = <&gpu_cc_cx_gdsc>;
+ vdd-supply = <&gpu_cc_gx_gdsc>;
+
+ clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
+ <&gpucc GPU_CC_CXO_CLK>,
+ <&gcc GCC_DDRSS_GPU_AXI_CLK>,
+ <&gcc GCC_GPU_MEMNOC_GFX_CLK>,
+ <&gpucc GPU_CC_AHB_CLK>,
+ <&gpucc GPU_CC_HUB_CX_INT_CLK>,
+ <&aopcc QDSS_CLK>;
+
+ clock-names = "gmu_clk", "cxo_clk", "axi_clk",
+ "memnoc_clk", "ahb_clk", "hub_clk", "apb_pclk";
+
+ mboxes = <&qmp_aop 0>;
+ mbox-names = "aop";
+ };
+};
diff --git a/qcom/lemans-ion.dtsi b/qcom/lemans-ion.dtsi
index 5e5f5899..82c72439 100755
--- a/qcom/lemans-ion.dtsi
+++ b/qcom/lemans-ion.dtsi
@@ -16,5 +16,23 @@
memory-region = <&adsp_mem>;
qcom,ion-heap-type = "DMA";
};
+
+ qcom,ion-heap@26 { /* USER CONTIG HEAP */
+ reg = <ION_USER_CONTIG_HEAP_ID>;
+ memory-region = <&user_contig_mem>;
+ qcom,ion-heap-type = "DMA";
+ };
+
+ qcom,ion-heap@27 { /* QSEECOM HEAP */
+ reg = <ION_QSECOM_HEAP_ID>;
+ memory-region = <&qseecom_mem>;
+ qcom,ion-heap-type = "DMA";
+ };
+
+ qcom,ion-heap@19 { /* QSEECOM TA HEAP */
+ reg = <ION_QSECOM_TA_HEAP_ID>;
+ memory-region = <&qseecom_ta_mem>;
+ qcom,ion-heap-type = "DMA";
+ };
};
};
diff --git a/qcom/lemans-ivi-qam-star-overlay.dts b/qcom/lemans-ivi-qam-star-overlay.dts
new file mode 100755
index 00000000..997d8f3b
--- /dev/null
+++ b/qcom/lemans-ivi-qam-star-overlay.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+/plugin/;
+
+#include "lemans-qam-star.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Lemans IVI QAM STAR";
+ compatible = "qcom,lemans-ivi", "qcom,lemans", "qcom,qam-star", "qcom,lemans-ivi-qam-star";
+ qcom,msm-id = <532 0x10000>;
+ qcom,board-id = <0x10025 0>;
+};
+
diff --git a/qcom/lemans-ivi-qam-star.dts b/qcom/lemans-ivi-qam-star.dts
new file mode 100755
index 00000000..5b519c0a
--- /dev/null
+++ b/qcom/lemans-ivi-qam-star.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "lemans-ivi.dtsi"
+#include "lemans-qam-star.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Lemans IVI QAM STAR";
+ compatible = "qcom,lemans-ivi", "qcom,lemans", "qcom,qam-star", "qcom,lemans-ivi-qam-star";
+};
+
diff --git a/qcom/lemans-qam-star.dtsi b/qcom/lemans-qam-star.dtsi
new file mode 100755
index 00000000..689bf563
--- /dev/null
+++ b/qcom/lemans-qam-star.dtsi
@@ -0,0 +1 @@
+#include "lemans-adp-common.dtsi"
diff --git a/qcom/lemans-thermal-overlay.dtsi b/qcom/lemans-thermal-overlay.dtsi
new file mode 100755
index 00000000..1d6f92b8
--- /dev/null
+++ b/qcom/lemans-thermal-overlay.dtsi
@@ -0,0 +1,62 @@
+#include <dt-bindings/thermal/thermal_qti.h>
+
+&thermal_zones {
+ pm8775_2_tz {
+ cooling-maps {
+ pm8775_2_cdsp0 {
+ trip = <&pm8775_2_trip0>;
+ cooling-device = <&cdsp_sw0 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ pm8775_3_tz {
+ cooling-maps {
+ pm8775_3_cpu1 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu1_isolate 1 1>;
+ };
+
+ pm8775_3_cpu2 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu2_isolate 1 1>;
+ };
+
+ pm8775_3_cpu3 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu3_isolate 1 1>;
+ };
+
+ pm8775_3_cpu4 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu4_isolate 1 1>;
+ };
+
+ pm8775_3_cpu5 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu5_isolate 1 1>;
+ };
+
+ pm8775_3_cpu6 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu6_isolate 1 1>;
+ };
+
+ pm8775_3_cpu7 {
+ trip = <&pm8775_3_trip0>;
+ cooling-device = <&cpu7_isolate 1 1>;
+ };
+ };
+ };
+
+ pm8775_4_tz {
+ cooling-maps {
+ pm8775_4_cdsp1 {
+ trip = <&pm8775_4_trip0>;
+ cooling-device = <&cdsp_sw1 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+};
diff --git a/qcom/lemans-vm-lv-overlay.dts b/qcom/lemans-vm-lv-overlay.dts
new file mode 100755
index 00000000..a0987ad3
--- /dev/null
+++ b/qcom/lemans-vm-lv-overlay.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+/plugin/;
+
+#include "lemans-vm.dtsi"
+#include "lemans-vm-lv.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. LeMans Single Linux Virtual Machine";
+ compatible = "qcom,lemans", "qcom,quinvm";
+ qcom,board-id = <0 0x1000002>;
+};
diff --git a/qcom/lemans-vm-lv.dts b/qcom/lemans-vm-lv.dts
new file mode 100755
index 00000000..c37ce993
--- /dev/null
+++ b/qcom/lemans-vm-lv.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "lemans-vm.dtsi"
+#include "lemans-vm-lv.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. LeMans Single Linux Virtual Machine";
+ compatible = "qcom,lemans", "qcom,quinvm";
+ qcom,board-id = <0 0x1000002>;
+};
diff --git a/qcom/lemans-vm-lv.dtsi b/qcom/lemans-vm-lv.dtsi
new file mode 100755
index 00000000..17f1e228
--- /dev/null
+++ b/qcom/lemans-vm-lv.dtsi
@@ -0,0 +1,2 @@
+&soc {
+};
diff --git a/qcom/lemans-vm.dtsi b/qcom/lemans-vm.dtsi
new file mode 100755
index 00000000..081cee49
--- /dev/null
+++ b/qcom/lemans-vm.dtsi
@@ -0,0 +1,34 @@
+#include "quin-vm-common.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. LeMans Virtual Machine";
+ qcom,msm-name = "SA_LEMANS_IVI";
+ qcom,msm-id = <532 0x10000>;
+};
+
+&soc {
+};
+
+&gcc {
+ status = "disabled";
+};
+
+&scc {
+ status = "disabled";
+};
+
+&regulator {
+ status = "disabled";
+};
+
+&hab {
+ vmid = <3>;
+};
+
+&spmi_bus {
+ status = "disabled";
+};
+
+&wdog {
+ status = "disabled";
+};
diff --git a/qcom/lemans.dtsi b/qcom/lemans.dtsi
index ec003ec8..eaabd068 100755
--- a/qcom/lemans.dtsi
+++ b/qcom/lemans.dtsi
@@ -1,4 +1,6 @@
#include <dt-bindings/clock/qcom,rpmh.h>
+#include <dt-bindings/soc/qcom,ipcc.h>
+#include <dt-bindings/clock/qcom,aop-qmp.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>
@@ -421,6 +423,28 @@
size = <0x0 0x1000000>;
};
+ qseecom_mem: qseecom_region {
+ compatible = "shared-dma-pool";
+ no-map;
+ reg = <0x0 0xadc00000 0x0 0x1400000>;
+ };
+
+ user_contig_mem: user_contig_region {
+ compatible = "shared-dma-pool";
+ alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
+ reusable;
+ alignment = <0x0 0x400000>;
+ size = <0x0 0x1000000>;
+ };
+
+ qseecom_ta_mem: qseecom_ta_region {
+ compatible = "shared-dma-pool";
+ alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
+ reusable;
+ alignment = <0x0 0x400000>;
+ size = <0x0 0x1000000>;
+ };
+
/* global autoconfigured region for contiguous allocations */
linux,cma {
compatible = "shared-dma-pool";
@@ -876,6 +900,17 @@
#clock-cells = <1>;
};
+ qoslat_opp_table: qoslat-opp-table {
+ compatible = "operating-points-v2";
+ opp-1 {
+ opp-hz = /bits/ 64 < 1 >;
+ };
+
+ opp-2 {
+ opp-hz = /bits/ 64 < 2 >;
+ };
+ };
+
tlmm: pinctrl@f000000 {
compatible = "qcom,lemans-pinctrl";
reg = <0xf000000 0x1000000>;
@@ -1396,6 +1431,27 @@
#mbox-cells = <1>;
};
+ qtee_shmbridge {
+ compatible = "qcom,tee-shared-memory-bridge";
+ };
+
+ qcom_qseecom: qseecom@0xd1800000 {
+ compatible = "qcom,qseecom";
+ reg = <0xd1800000 0x3900000>;
+ reg-names = "secapp-region";
+ memory-region = <&qseecom_mem>;
+ qcom,hlos-num-ce-hw-instances = <1>;
+ qcom,hlos-ce-hw-instance = <0>;
+ qcom,qsee-ce-hw-instance = <0>;
+ qcom,disk-encrypt-pipe-pair = <2>;
+ qcom,support-fde;
+ qcom,no-clock-support;
+ qcom,fde-key-size;
+ qcom,appsbl-qseecom-support;
+ qcom,commonlib64-loaded-by-uefi;
+ qcom,qsee-reentrancy-support = <2>;
+ };
+
qcom,glink {
compatible = "qcom,glink";
#address-cells = <1>;
@@ -2168,6 +2224,20 @@
qcom-secure-buffer {
compatible = "qcom,secure-buffer";
};
+
+ qfprom: qfprom@784000 {
+ compatible = "qcom,qfprom";
+ reg = <0x784000 0x3000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ read-only;
+ ranges;
+
+ gpu_speed_bin: gpu_speed_bin@18b {
+ reg = <0x18b 0x1>;
+ bits = <5 3>;
+ };
+ };
};
#include "lemans-4pmic-regulators.dtsi"
@@ -2419,3 +2489,4 @@
#include "lemans-thermal.dtsi"
#include "lemans-pcie.dtsi"
+#include "lemans-gpu.dtsi"
diff --git a/qcom/monaco-standalone-1gb.dts b/qcom/monaco-standalone-1gb.dts
new file mode 100755
index 00000000..73b99db5
--- /dev/null
+++ b/qcom/monaco-standalone-1gb.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "monaco-standalone-1gb.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Monaco Standalone 1GB SoC ";
+ compatible = "qcom,monaco";
+ qcom,board-id = <0 0x301>;
+};
diff --git a/qcom/monaco-standalone.dtsi b/qcom/monaco-standalone-1gb.dtsi
index 79a11e94..79a11e94 100755
--- a/qcom/monaco-standalone.dtsi
+++ b/qcom/monaco-standalone-1gb.dtsi
diff --git a/qcom/monaco-standalone-atp-v1.dts b/qcom/monaco-standalone-atp-v1.dts
index 458ad616..753943b5 100755
--- a/qcom/monaco-standalone-atp-v1.dts
+++ b/qcom/monaco-standalone-atp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
#include "monaco-standalone-atp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone ATP V1.0";
compatible = "qcom,monaco", "qcom,atp";
- qcom,board-id = <0x010021 0x1>;
+ qcom,board-id = <0x010021 0x301>;
};
diff --git a/qcom/monaco-standalone-idp-v1.dts b/qcom/monaco-standalone-idp-v1.dts
index d5e81502..258c566e 100755
--- a/qcom/monaco-standalone-idp-v1.dts
+++ b/qcom/monaco-standalone-idp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone IDP V1.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x010022 0x1>;
+ qcom,board-id = <0x010022 0x301>;
};
diff --git a/qcom/monaco-standalone-idp-v2.dts b/qcom/monaco-standalone-idp-v2.dts
index 0a036163..79dbe729 100755
--- a/qcom/monaco-standalone-idp-v2.dts
+++ b/qcom/monaco-standalone-idp-v2.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v2.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone IDP V2.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x020022 0x1>;
+ qcom,board-id = <0x020022 0x301>;
};
diff --git a/qcom/monaco-standalone-idp-v3.dts b/qcom/monaco-standalone-idp-v3.dts
index 67f6c84c..4bef935a 100755
--- a/qcom/monaco-standalone-idp-v3.dts
+++ b/qcom/monaco-standalone-idp-v3.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v3.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone DP V3.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x030022 0x1>;
+ qcom,board-id = <0x030022 0x301>;
};
diff --git a/qcom/monaco-standalone-wdp-v1.dts b/qcom/monaco-standalone-wdp-v1.dts
index 38fcfed0..9121b1b0 100755
--- a/qcom/monaco-standalone-wdp-v1.dts
+++ b/qcom/monaco-standalone-wdp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
#include "monaco-standalone-wdp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone WDP V1.0";
compatible = "qcom,monaco", "qcom,wdp";
- qcom,board-id = <0x010024 0x1>;
+ qcom,board-id = <0x010024 0x301>;
};
diff --git a/qcom/monaco-standalone.dts b/qcom/monaco-standalone.dts
index e1a96ed9..c5d5c97e 100755
--- a/qcom/monaco-standalone.dts
+++ b/qcom/monaco-standalone.dts
@@ -1,9 +1,9 @@
/dts-v1/;
-#include "monaco-standalone.dtsi"
+#include "monaco.dtsi"
/ {
- model = "Qualcomm Technologies, Inc. Monaco SoC ";
+ model = "Qualcomm Technologies, Inc. Monaco Standalone SoC";
compatible = "qcom,monaco";
- qcom,board-id = <0 0x1>;
+ qcom,board-id = <0 1>;
};
diff --git a/qcom/monaco.dtsi b/qcom/monaco.dtsi
index 4a52d060..148df7dd 100755
--- a/qcom/monaco.dtsi
+++ b/qcom/monaco.dtsi
@@ -2207,7 +2207,6 @@ qcom,msm-adsprpc-mem {
&gpu_cx_gdsc {
parent-supply = <&VDD_CX_LEVEL>;
- qcom,need-pm-op;
status = "ok";
};
diff --git a/qcom/monacop-standalone-1gb.dts b/qcom/monacop-standalone-1gb.dts
new file mode 100755
index 00000000..e780e4d9
--- /dev/null
+++ b/qcom/monacop-standalone-1gb.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "monacop-standalone-1gb.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. MonacoP Standalone 1GB SoC";
+ compatible = "qcom,monacop";
+ qcom,board-id = <0 0x301>;
+};
diff --git a/qcom/monacop-standalone.dtsi b/qcom/monacop-standalone-1gb.dtsi
index b2b69b8d..155c041b 100755
--- a/qcom/monacop-standalone.dtsi
+++ b/qcom/monacop-standalone-1gb.dtsi
@@ -1,4 +1,4 @@
-#include "monaco-standalone.dtsi"
+#include "monaco-standalone-1gb.dtsi"
/ {
model = "Qualcomm Technologies, Inc. MonacoP";
diff --git a/qcom/monacop-standalone-atp-v1.dts b/qcom/monacop-standalone-atp-v1.dts
index 7e04dd90..f4ce6fc1 100755
--- a/qcom/monacop-standalone-atp-v1.dts
+++ b/qcom/monacop-standalone-atp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop-standalone-1gb.dtsi"
#include "monaco-standalone-atp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone ATP V1.0";
compatible = "qcom,monaco", "qcom,atp";
- qcom,board-id = <0x010021 0x1>;
+ qcom,board-id = <0x010021 0x301>;
};
diff --git a/qcom/monacop-standalone-idp-v1.dts b/qcom/monacop-standalone-idp-v1.dts
index 8fbb8631..66d1c594 100755
--- a/qcom/monacop-standalone-idp-v1.dts
+++ b/qcom/monacop-standalone-idp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone IDP V1.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x010022 0x1>;
+ qcom,board-id = <0x010022 0x301>;
};
diff --git a/qcom/monacop-standalone-idp-v2.dts b/qcom/monacop-standalone-idp-v2.dts
index 241b8963..554e2bf2 100755
--- a/qcom/monacop-standalone-idp-v2.dts
+++ b/qcom/monacop-standalone-idp-v2.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v2.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone IDP V2.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x020022 0x1>;
+ qcom,board-id = <0x020022 0x301>;
};
diff --git a/qcom/monacop-standalone-idp-v3.dts b/qcom/monacop-standalone-idp-v3.dts
index 8dd1428f..7ed69553 100755
--- a/qcom/monacop-standalone-idp-v3.dts
+++ b/qcom/monacop-standalone-idp-v3.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop-standalone-1gb.dtsi"
#include "monaco-standalone-idp-v3.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone DP V3.0";
compatible = "qcom,monaco", "qcom,idp";
- qcom,board-id = <0x030022 0x1>;
+ qcom,board-id = <0x030022 0x301>;
};
diff --git a/qcom/monacop-standalone-wdp-v1.dts b/qcom/monacop-standalone-wdp-v1.dts
index feef1ab2..819b951b 100755
--- a/qcom/monacop-standalone-wdp-v1.dts
+++ b/qcom/monacop-standalone-wdp-v1.dts
@@ -1,10 +1,10 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop-standalone-1gb.dtsi"
#include "monaco-standalone-wdp-v1.dtsi"
/ {
model = "Qualcomm Technologies, Inc. Monaco standalone WDP V1.0";
compatible = "qcom,monaco", "qcom,wdp";
- qcom,board-id = <0x010024 0x1>;
+ qcom,board-id = <0x010024 0x301>;
};
diff --git a/qcom/monacop-standalone.dts b/qcom/monacop-standalone.dts
index 954206fb..1b33b38c 100755
--- a/qcom/monacop-standalone.dts
+++ b/qcom/monacop-standalone.dts
@@ -1,9 +1,9 @@
/dts-v1/;
-#include "monacop-standalone.dtsi"
+#include "monacop.dtsi"
/ {
- model = "Qualcomm Technologies, Inc. MonacoP SoC";
+ model = "Qualcomm Technologies, Inc. MonacoP Standalone SoC";
compatible = "qcom,monacop";
qcom,board-id = <0 1>;
};
diff --git a/qcom/msm-arm-smmu-lemans.dtsi b/qcom/msm-arm-smmu-lemans.dtsi
index cf6693b7..2945b5fe 100755
--- a/qcom/msm-arm-smmu-lemans.dtsi
+++ b/qcom/msm-arm-smmu-lemans.dtsi
@@ -3,8 +3,8 @@
&soc {
kgsl_smmu: kgsl-smmu@3da0000 {
compatible = "qcom,qsmmu-v500";
- reg = <0x3DA0000 0x20000>,
- <0x3DCA000 0x28>;
+ reg = <0x3da0000 0x20000>,
+ <0x3dca000 0x28>;
reg-names = "base", "tcu-base";
#iommu-cells = <2>;
qcom,skip-init;
@@ -13,6 +13,7 @@
#global-interrupts = <2>;
#size-cells = <1>;
#address-cells = <1>;
+ #tcu-testbus-version = <1>;
ranges;
dma-coherent;
qcom,regulator-names = "vdd";
@@ -94,6 +95,7 @@
#global-interrupts = <2>;
#size-cells = <1>;
#address-cells = <1>;
+ #tcu-testbus-version = <1>;
ranges;
dma-coherent;
@@ -166,6 +168,22 @@
interconnects = <&pcie_anoc MASTER_PCIE_0 &mc_virt SLAVE_EBI1>,
<&pcie_anoc MASTER_PCIE_1 &mc_virt SLAVE_EBI1>;
+
+ pcie_0_tbu: pcie_0_tbu@152f9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x152F9000 0x1000>,
+ <0x152F2200 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x0 0x400>;
+ };
+
+ pcie_1_tbu: pcie_1_tbu@152fb000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x152FB000 0x1000>,
+ <0x152F3200 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x400 0x400>;
+ };
};
apps_smmu: apps-smmu@15000000 {
@@ -179,6 +197,7 @@
#global-interrupts = <2>;
#size-cells = <1>;
#address-cells = <1>;
+ #tcu-testbus-version = <1>;
ranges;
interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>,
@@ -313,6 +332,141 @@
interconnects = <&gem_noc MASTER_APPSS_PROC
&config_noc SLAVE_IMEM_CFG>;
+
+ anoc_1_tbu: anoc_1_tbu@15189000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x15189000 0x1000>,
+ <0x15182200 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x0 0x400>;
+ qcom,active-only;
+ };
+
+ anoc_2_tbu: anoc_2_tbu@15191000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x15191000 0x1000>,
+ <0x15182208 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x400 0x400>;
+ qcom,active-only;
+ };
+
+ mnoc_sf_0_tbu: mnoc_sf_0_tbu@15199000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x15199000 0x1000>,
+ <0x15182210 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x800 0x400>;
+ qcom,active-only;
+ };
+
+ mnoc_sf_1_tbu: mnoc_sf_1_tbu@0x151a1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151A1000 0x1000>,
+ <0x15182218 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0xC00 0x400>;
+ qcom,active-only;
+ };
+
+ mdp_0_tbu: mdp_0_tbu@0x151a9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151A9000 0x1000>,
+ <0x15182220 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x1000 0x400>;
+ qcom,active-only;
+ };
+
+ mdp_1_tbu: mdp_1_tbu@0x151b1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151B1000 0x1000>,
+ <0x15182228 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x1400 0x400>;
+ qcom,active-only;
+ };
+
+ mdp_2_tbu: mdp_2_tbu@0x151b9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151B9000 0x1000>,
+ <0x15182230 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x1800 0x400>;
+ qcom,active-only;
+ };
+
+ mdp_3_tbu: mdp_3_tbu@151c1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151C1000 0x1000>,
+ < 0x15182238 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x1C00 0x400>;
+ qcom,active-only;
+ };
+
+ nsp_0_tbu: nsp_0_tbu@151c9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151C9000 0x1000>,
+ < 0x15182240 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x2000 0x400>;
+ qcom,active-only;
+ };
+
+ nsp_1_tbu: nsp_1_tbu@151d1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151D1000 0x1000>,
+ < 0x15182248 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x2400 0x400>;
+ qcom,active-only;
+ };
+
+ nsp_2_tbu: nsp_2_tbu@151d9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151D9000 0x1000>,
+ < 0x15182250 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x2800 0x400>;
+ qcom,active-only;
+ };
+
+ nsp_3_tbu: nsp_3_tbu@151e1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151E1000 0x1000>,
+ < 0x15182258 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x2C00 0x400>;
+ qcom,active-only;
+ };
+
+ lpass_0_tbu: lpass_0_tbu@151e9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151E9000 0x1000>,
+ < 0x15182260 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x3000 0x400>;
+ qcom,active-only;
+ };
+
+ cam_0_tbu: cam_0_tbu@151f1000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151F1000 0x1000>,
+ < 0x15182268 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x3400 0x400>;
+ qcom,active-only;
+ };
+
+ gpdsp_sail_ss_0_tbu: gpdsp_sail_ss_0_tbu@151f9000 {
+ compatible = "qcom,qsmmuv500-tbu";
+ reg = <0x151F9000 0x1000>,
+ < 0x15182270 0x8>;
+ reg-names = "base", "status-reg";
+ qcom,stream-id-range = <0x3800 0x400>;
+ qcom,active-only;
+ };
};
kgsl_iommu_test_device {
diff --git a/qcom/pm6155.dtsi b/qcom/pm6155.dtsi
index 1c198e46..5954c57c 100755
--- a/qcom/pm6155.dtsi
+++ b/qcom/pm6155.dtsi
@@ -62,6 +62,7 @@
pm6155_1_rtc: qcom,pm6155_1_rtc {
compatible = "qcom,pm8941-rtc";
interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
+ disable-alarm-wakeup;
};
pm6155_1_gpios: pinctrl@c000 {
diff --git a/qcom/pm8150.dtsi b/qcom/pm8150.dtsi
index 8baf9aa8..20a0660f 100755
--- a/qcom/pm8150.dtsi
+++ b/qcom/pm8150.dtsi
@@ -65,6 +65,7 @@
reg = <0x6000>, <0x6100>;
reg-names = "rtc", "alarm";
interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
+ disable-alarm-wakeup;
};
pm8150_gpios: pinctrl@c000 {
diff --git a/qcom/pm8150l.dtsi b/qcom/pm8150l.dtsi
index 700fa382..b389b974 100755
--- a/qcom/pm8150l.dtsi
+++ b/qcom/pm8150l.dtsi
@@ -45,7 +45,7 @@
};
pm8150l_gpios: pinctrl@c000 {
- compatible = "qcom,spmi-gpio";
+ compatible = "qcom,pm8150l-gpio";
reg = <0xc000 0xc00>;
interrupts = <0x4 0xc0 0x0 IRQ_TYPE_NONE>,
<0x4 0xc2 0x0 IRQ_TYPE_NONE>,
diff --git a/qcom/pm8195.dtsi b/qcom/pm8195.dtsi
index af3b8ca5..ba426735 100755
--- a/qcom/pm8195.dtsi
+++ b/qcom/pm8195.dtsi
@@ -96,6 +96,7 @@
reg = <0x6000>, <0x6100>;
reg-names = "rtc", "alarm";
interrupts = <0x0 0x61 0x1 IRQ_TYPE_NONE>;
+ disable-alarm-wakeup;
};
pm8195_1_gpios: pinctrl@c000 {
diff --git a/qcom/prairie-iot-idp.dtsi b/qcom/prairie-iot-idp.dtsi
index 46fd7e9e..a936b0c9 100755
--- a/qcom/prairie-iot-idp.dtsi
+++ b/qcom/prairie-iot-idp.dtsi
@@ -1,3 +1,4 @@
+#include "sm6150-thermal-overlay.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/iio/qcom,spmi-vadc.h>
#include <dt-bindings/input/input.h>
diff --git a/qcom/qcs410.dtsi b/qcom/qcs410.dtsi
index b2b5fd2a..301d87bb 100755
--- a/qcom/qcs410.dtsi
+++ b/qcom/qcs410.dtsi
@@ -3,6 +3,7 @@
#include "sm6150-pmic-overlay.dtsi"
#include "sm6150-pm.dtsi"
+#include "sm6150-thermal-overlay.dtsi"
#include "sm6150-thermal.dtsi"
#include "sm6150-coresight.dtsi"
@@ -12,10 +13,10 @@
qcom,msm-id = <406 0>;
cpus {
- /delete-node/ CPU2;
- /delete-node/ CPU3;
- /delete-node/ CPU4;
- /delete-node/ CPU5;
+ /delete-node/ cpu@200;
+ /delete-node/ cpu@300;
+ /delete-node/ cpu@400;
+ /delete-node/ cpu@500;
cpu-map {
cluster0 {
@@ -28,16 +29,6 @@
};
};
-&reserved_memory {
- memshare_mem: memshare_region {
- compatible = "shared-dma-pool";
- no-map;
- alloc-ranges = <0x0 0x00000000 0x0 0xffffffff>;
- alignment = <0x0 0x100000>;
- size = <0x0 0x800000>;
- };
-};
-
&soc {
qcom,memshare {
compatible = "qcom,memshare";
@@ -60,7 +51,6 @@
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";
@@ -194,7 +184,7 @@
reg = <0x1de0000 0x20000>,
<0x1dc4000 0x24000>;
reg-names = "crypto-base","crypto-bam-base";
- interrupts = <0 272 0>;
+ interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
qcom,bam-pipe-pair = <3>;
qcom,ce-hw-instance = <0>;
qcom,ce-device = <0>;
@@ -214,7 +204,7 @@
reg = <0x1de0000 0x20000>,
<0x1dc4000 0x24000>;
reg-names = "crypto-base","crypto-bam-base";
- interrupts = <0 272 0>;
+ interrupts = <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>;
qcom,bam-pipe-pair = <2>;
qcom,ce-hw-instance = <0>;
qcom,ce-device = <0>;
@@ -248,6 +238,13 @@
cpus = <&CPU0>, <&CPU1>, <&CPU6>, <&CPU7>;
};
+ qcom,chd_silver {
+ compatible = "qcom,core-hang-detect";
+ label = "silver";
+ qcom,threshold-arr = <0x18000058 0x18010058>;
+ qcom,config-arr = <0x18000060 0x18010060>;
+ };
+
/delete-node/ cti@7220000;
/delete-node/ cti@7320000;
/delete-node/ cti@7420000;
@@ -257,20 +254,24 @@
/delete-node/ etm@7440000;
/delete-node/ etm@7540000;
- qcom,cpu0-cpu-l3-latmon {
+ cpu0_memlat_cpugrp: qcom,cpu0-cpugrp {
qcom,cpulist = <&CPU0 &CPU1>;
- };
- qcom,cpu0-cpu-llcc-latmon {
- qcom,cpulist = <&CPU0 &CPU1>;
- };
+ cpu0_cpu_l3_latmon: qcom,cpu0-cpu-l3-latmon {
+ qcom,cpulist = <&CPU0 &CPU1>;
+ };
- qcom,cpu0-llcc-ddr-latmon {
- qcom,cpulist = <&CPU0 &CPU1>;
- };
+ cpu0_cpu_llcc_latmon: qcom,cpu0-cpu-llcc-latmon {
+ qcom,cpulist = <&CPU0 &CPU1>;
+ };
- qcom,cpu0-computemon {
- qcom,cpulist = <&CPU0 &CPU1>;
+ cpu0_llcc_ddr_latmon: qcom,cpu0-llcc-ddr-latmon {
+ qcom,cpulist = <&CPU0 &CPU1>;
+ };
+
+ cpu0_computemon: qcom,cpu0-computemon {
+ qcom,cpulist = <&CPU0 &CPU1>;
+ };
};
funnel_apss: funnel@7800000 {
@@ -334,7 +335,29 @@
status = "ok";
};
+&cpufreq_hw {
+ qcom,cpu-isolation {
+ /delete-node/ cpu2-isolate;
+ /delete-node/ cpu3-isolate;
+ /delete-node/ cpu4-isolate;
+ /delete-node/ cpu5-isolate;
+ };
+};
+
&thermal_zones {
+ pm6150l_tz {
+ cooling-maps {
+ /delete-node/ trip0_cpu2;
+ /delete-node/ trip0_cpu3;
+ /delete-node/ trip0_cpu4;
+ /delete-node/ trip0_cpu5;
+ /delete-node/ trip1_cpu2;
+ /delete-node/ trip1_cpu3;
+ /delete-node/ trip1_cpu4;
+ /delete-node/ trip1_cpu5;
+ };
+ };
+
cpuss-0-step {
/delete-node/ cooling-maps;
};
diff --git a/qcom/qcs610.dtsi b/qcom/qcs610.dtsi
index 552828d4..0215875b 100755
--- a/qcom/qcs610.dtsi
+++ b/qcom/qcs610.dtsi
@@ -142,6 +142,7 @@
vdd-1.3-rfa-supply = <&pm6150l_l2>;
vdd-3.3-ch0-supply = <&pm6150l_l10>;
qcom,vdd-cx-mx-config = <640000 640000>;
+ qcom,is_low_power = <1>;
qcom,smp2p_map_wlan_1_in {
interrupts-extended = <&smp2p_wlan_1_in 0 0>,
<&smp2p_wlan_1_in 1 0>;
diff --git a/qcom/quin-vm-common.dtsi b/qcom/quin-vm-common.dtsi
index 3b8d1747..ebf4537b 100755
--- a/qcom/quin-vm-common.dtsi
+++ b/qcom/quin-vm-common.dtsi
@@ -209,12 +209,6 @@
remote-vmids = <0>;
};
- mmidgrp800: mmidgrp800 {
- grp-start-id = <800>;
- role = "fe";
- remote-vmids = <0>;
- };
-
mmidgrp900: mmidgrp900 {
grp-start-id = <900>;
role = "fe";
@@ -238,6 +232,18 @@
role = "fe";
remote-vmids = <0>;
};
+
+ mmidgrp1400: mmidgrp1400 {
+ grp-start-id = <1400>;
+ role = "fe";
+ remote-vmids = <0>;
+ };
+
+ mmidgrp1500: mmidgrp1500 {
+ grp-start-id = <1500>;
+ role = "fe";
+ remote-vmids = <0>;
+ };
};
qcom,msm-imem@14680000 {
diff --git a/qcom/sa410m-qrd.dtsi b/qcom/sa410m-qrd.dtsi
index a436bfa5..e19d23e7 100755
--- a/qcom/sa410m-qrd.dtsi
+++ b/qcom/sa410m-qrd.dtsi
@@ -31,6 +31,8 @@
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
+ cd-gpios = <&tlmm 88 GPIO_ACTIVE_HIGH>;
+
status = "ok";
};
diff --git a/qcom/sa410m.dtsi b/qcom/sa410m.dtsi
index 438433b1..7308c01b 100755
--- a/qcom/sa410m.dtsi
+++ b/qcom/sa410m.dtsi
@@ -311,7 +311,7 @@
compatible = "qcom,mpm-gic-scuba", "qcom,mpm";
interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
reg = <0x45f01b8 0x1000>,
- <0x0f40000c 0x4>; /* MSM_APCS_GCC_BASE 4K */
+ <0xf111008 0x4>; /* MSM_APCS_GCC_BASE 4K */
reg-names = "vmpm", "ipc";
qcom,num-mpm-irqs = <96>;
interrupt-controller;
diff --git a/qcom/sa415m-pinctrl.dtsi b/qcom/sa415m-pinctrl.dtsi
index 0eeb0753..5159917b 100755
--- a/qcom/sa415m-pinctrl.dtsi
+++ b/qcom/sa415m-pinctrl.dtsi
@@ -1,15 +1,23 @@
&soc {
tlmm: pinctrl@3900000 {
compatible = "qcom,sa415m-pinctrl";
- reg = <0x3900000 0x300000>,
- <0xB204900 0x280>;
- reg-names = "pinctrl", "pinctrl_reg";
- interrupts = <0 212 0>;
+ reg = <0x3900000 0x300000>;
+ reg-names = "pinctrl";
+ interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
interrupt-parent = <&intc>;
#interrupt-cells = <2>;
+ wakeup-parent = <&pdc>;
uart2_console_active: uart2_console_active {
mux {
diff --git a/qcom/sa415m.dtsi b/qcom/sa415m.dtsi
index 965a83be..16356c8c 100755
--- a/qcom/sa415m.dtsi
+++ b/qcom/sa415m.dtsi
@@ -1,4 +1,5 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/soc/qcom,rpmh-rsc.h>
/ {
#address-cells = <1>;
@@ -23,10 +24,21 @@
peripheral2_mem: peripheral2_region@8fe00000 {
no-map;
- reg = <0x8fe00000 0xe00000>;
+ reg = <0x8fe40000 0xdc0000>;
label = "peripheral2_mem";
};
+ cmd_db: reserved-memory@8fe20000 {
+ compatible = "qcom,cmd-db";
+ no-map;
+ reg = <0x8fe20000 0x20000>;
+ };
+
+ aop_image_mem: aop_image_region@8fe00000 {
+ no-map;
+ reg = <0x8fe00000 0x20000>;
+ };
+
sbl_region: sbl_region@8fd00000 {
no-map;
reg = <0x8fd00000 0x100000>;
@@ -108,6 +120,27 @@
#size-cells = <1>;
ranges;
+ psci {
+ compatible = "arm,psci-1.0";
+ method = "smc";
+ };
+
+ apps_rsc: rsc@17830000 {
+ label = "apps_rsc";
+ compatible = "qcom,rpmh-rsc";
+ reg = <0x17830000 0x10000>,
+ <0x17840000 0x10000>;
+ reg-names = "drv-0", "drv-1";
+ interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
+ qcom,tcs-offset = <0xd00>;
+ qcom,drv-id = <1>;
+ qcom,tcs-config = <ACTIVE_TCS 2>,
+ <SLEEP_TCS 2>,
+ <WAKE_TCS 2>,
+ <CONTROL_TCS 1>;
+ };
+
intc: interrupt-controller@17800000 {
compatible = "qcom,msm-qgic2";
interrupt-controller;
@@ -117,6 +150,20 @@
<0x17802000 0x1000>;
};
+ pdc: interrupt-controller@b210000 {
+ compatible = "qcom,sa415m-pdc";
+ reg = <0xb210000 0x30000>,
+ <0xb204900 0x700>;
+ reg-names = "base", "mux-base";
+ qcom,pdc-ranges = <0 147 52>;
+ qcom,pdc-mux-ranges = <20 20 0>, <21 27 1>, <22 30 2>,
+ <23 31 3>, <24 40 4>, <25 45 5>,
+ <26 54 6>;
+ #interrupt-cells = <2>;
+ interrupt-parent = <&intc>;
+ interrupt-controller;
+ };
+
timer {
compatible = "arm,armv7-timer";
interrupts = <1 13 0xf08>,
diff --git a/qcom/sa515m-audio-overlay.dtsi b/qcom/sa515m-audio-overlay.dtsi
index 155aaa86..0c179280 100755
--- a/qcom/sa515m-audio-overlay.dtsi
+++ b/qcom/sa515m-audio-overlay.dtsi
@@ -33,14 +33,13 @@
qcom,cdc-ext-clk-rate = <19200000>;
qcom,tavil-mclk-clk-freq = <9600000>;
- asoc-codec = <&stub_codec>;
- asoc-codec-names = "msm-stub-codec.1";
-
- qcom,wsa-max-devs = <2>;
- qcom,wsa-devs = <&wsa881x_0211>, <&wsa881x_0212>,
- <&wsa881x_0213>, <&wsa881x_0214>;
- qcom,wsa-aux-dev-prefix = "SpkrLeft", "SpkrRight",
- "SpkrLeft", "SpkrRight";
+ asoc-codec = <&stub_codec>, <&wsa881x_0214>;
+ asoc-codec-names = "msm-stub-codec.1", "wsa-codec.1";
+
+ qcom,wsa-max-devs = <1>;
+ qcom,swr-num-dev = <1>;
+ qcom,wsa-devs = <&wsa881x_0214>;
+ qcom,wsa-aux-dev-prefix = "SpkrLeft";
qcom,msm_audio_ssr_devs = <&audio_apr>, <&wcd934x_cdc>,
<&q6core>;
};
diff --git a/qcom/sa515m-ccard-cnss.dtsi b/qcom/sa515m-ccard-cnss.dtsi
index 27a67366..b048e24d 100755
--- a/qcom/sa515m-ccard-cnss.dtsi
+++ b/qcom/sa515m-ccard-cnss.dtsi
@@ -50,6 +50,272 @@
qcom,bt-vdd-rfa1-config = <1370000 1370000 0 0>;
qcom,bt-vdd-rfa3-config = <1904000 1904000 0 0>;
};
+
+ cnss_pcie: qcom,cnss-qca-converged {
+ compatible = "qcom,cnss-qca-converged";
+
+ qcom,converged-dt;
+ qcom,wlan-rc-num = <0>;
+ qcom,bus-type=<0>;
+ qcom,notify-modem-status;
+
+ #address-cells=<1>;
+ #size-cells=<1>;
+ ranges = <0xa0000000 0xa0000000 0x10000000>,
+ <0xb0000000 0xb0000000 0x10000>;
+
+ vdd-wlan-ctrl1-supply = <&vreg_conn_pa>;
+ vdd-wlan-ctrl2-supply = <&vreg_conn_1p8>;
+ vdd-wlan-aon-supply = <&pmx55_s3>;
+ vdd-wlan-rfa1-supply = <&pmx55_s2>;
+ vdd-wlan-rfa3-supply = <&pmx55_s4>;
+
+ wlan_vregs = "vdd-wlan-ctrl1", "vdd-wlan-ctrl2", "vdd-wlan-aon", "vdd-wlan-rfa1", "vdd-wlan-rfa3";
+ qcom,vdd-wlan-ctrl1-config = <0 0 0 0 0>;
+ qcom,vdd-wlan-ctrl2-config = <0 0 0 0 0>;
+ qcom,vdd-wlan-aon-config = <1000000 1000000 0 0 0>;
+ qcom,vdd-wlan-rfa1-config = <1370000 1370000 0 0 0>;
+ qcom,vdd-wlan-rfa3-config = <1904000 1904000 450000 0 0>;
+ wlan-en-gpio = <&tlmm 52 0>;
+ pinctrl-names = "wlan_en_active", "wlan_en_sleep";
+ pinctrl-0 = <&cnss_wlan_en_active>;
+ pinctrl-1 = <&cnss_wlan_en_sleep>;
+
+ chip_cfg@0 {
+ reg = <0xa0000000 0x10000000>,
+ <0xb0000000 0x10000>;
+ reg-names = "smmu_iova_base", "smmu_iova_ipa";
+
+ supported-ids = <0x003e>;
+ wlan_vregs = "vdd-wlan";
+ qcom,vdd-wlan-config = <0 0 0 10 0>;
+
+ qcom,smmu-s1-enable;
+ qcom,wlan-ramdump-dynamic = <0x200000>;
+ };
+
+ chip_cfg@1 {
+ reg = <0xa0000000 0x10000000>,
+ <0xb0000000 0x10000>;
+ reg-names = "smmu_iova_base", "smmu_iova_ipa";
+
+ supported-ids = <0x1101>;
+ wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1",
+ "vdd-wlan-rfa3";
+
+ qcom,vdd-wlan-aon-config = <1000000 1000000 0 0 0>;
+ qcom,vdd-wlan-rfa1-config = <1370000 1370000 0 0 0>;
+ qcom,vdd-wlan-rfa3-config = <1904000 1904000 450000 0 0>;
+ qcom,wlan-ramdump-dynamic = <0x400000>;
+ mhi,max-channels = <30>;
+ mhi,buffer-len = <0x8000>;
+ mhi,timeout = <10000>;
+ qcom,smmu-s1-enable;
+ pcie-disable-l1ss;
+ mhi_channels {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ mhi_chan@0 {
+ reg = <0>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@1 {
+ reg = <1>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@4 {
+ reg = <4>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@5 {
+ reg = <5>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@20 {
+ reg = <20>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <1>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-start;
+ };
+
+ mhi_chan@21 {
+ reg = <21>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-queue;
+ mhi,auto-start;
+ };
+ };
+
+ mhi_events {
+ mhi_event@0 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <1>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <1>;
+ };
+
+ mhi_event@1 {
+ mhi,num-elements = <256>;
+ mhi,intmod = <1>;
+ mhi,msi = <2>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ };
+ };
+ };
+
+ chip_cfg@2 {
+ reg = <0xa0000000 0x10000000>,
+ <0xb0000000 0x10000>;
+ reg-names = "smmu_iova_base", "smmu_iova_ipa";
+ qcom,smmu-s1-enable;
+ supported-ids = <0x1102>;
+ wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1",
+ "vdd-wlan-rfa3";
+
+ qcom,vdd-wlan-aon-config = <1000000 1000000 0 0 0>;
+ qcom,vdd-wlan-rfa1-config = <1370000 1370000 0 0 0>;
+ qcom,vdd-wlan-rfa3-config = <1904000 1904000 0 0 0>;
+
+ qcom,wlan-ramdump-dynamic = <0x300000>;
+ mhi,max-channels = <30>;
+ mhi,buffer-len = <0x8000>;
+ mhi,timeout = <10000>;
+ mhi,ee = <0x3>, <0x4>;
+ mhi,ee-names = "SBL", "RDDM";
+ mhi,bhie-offset = <0x0324>;
+ mhi_channels {
+ mhi_chan@0 {
+ reg = <0>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@1 {
+ reg = <1>;
+ label = "LOOPBACK";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@4 {
+ reg = <4>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@5 {
+ reg = <5>;
+ label = "DIAG";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ };
+
+ mhi_chan@16 {
+ reg = <16>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <1>;
+ mhi,data-type = <1>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-start;
+ };
+
+ mhi_chan@17 {
+ reg = <17>;
+ label = "IPCR";
+ mhi,num-elements = <32>;
+ mhi,event-ring = <1>;
+ mhi,chan-dir = <2>;
+ mhi,data-type = <0>;
+ mhi,doorbell-mode = <2>;
+ mhi,ee = <0x14>;
+ mhi,auto-queue;
+ mhi,auto-start;
+ };
+ };
+
+ mhi_events {
+ mhi_event@0 {
+ mhi,num-elements = <32>;
+ mhi,intmod = <1>;
+ mhi,msi = <1>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ mhi,data-type = <1>;
+ };
+
+ mhi_event@1 {
+ mhi,num-elements = <256>;
+ mhi,intmod = <1>;
+ mhi,msi = <2>;
+ mhi,priority = <1>;
+ mhi,brstmode = <2>;
+ };
+ };
+ };
+ };
};
&blsp1_uart2b_hs {
diff --git a/qcom/sa515m-ccard-pcie-ep.dts b/qcom/sa515m-ccard-pcie-ep.dts
index ca38d76a..fa967567 100755
--- a/qcom/sa515m-ccard-pcie-ep.dts
+++ b/qcom/sa515m-ccard-pcie-ep.dts
@@ -17,3 +17,30 @@
&pcie_ep {
status = "ok";
};
+
+&ipa_hw {
+ qcom,use-ipa-in-mhi-mode;
+ qcom,mhi-event-ring-id-limits = <7 13>; /* start and end */
+ ipa_smmu_ap: ipa_smmu_ap {
+ qcom,iommu-dma = "bypass";
+ };
+
+ ipa_smmu_wlan: ipa_smmu_wlan {
+ qcom,iommu-dma = "bypass";
+ };
+
+ ipa_smmu_uc: ipa_smmu_uc {
+ qcom,iommu-dma = "bypass";
+ };
+};
+
+&mhi_device {
+ reg = <0x1c03000 0x1000>,
+ <0x1e15000 0x4>,
+ <0x1e15138 0x4>;
+ status = "ok";
+};
+
+&mhi_net_device {
+ status = "ok";
+};
diff --git a/qcom/sa515m-ccard.dtsi b/qcom/sa515m-ccard.dtsi
index 420067fa..1aeb63fa 100755
--- a/qcom/sa515m-ccard.dtsi
+++ b/qcom/sa515m-ccard.dtsi
@@ -1,5 +1,4 @@
#include "sdx55-mtp.dtsi"
-#include "sa515m.dtsi"
#include "sa515m-ccard-cnss.dtsi"
&soc {
@@ -93,7 +92,7 @@
tlv320aic3x_codec: tlv320aic3x@18 {
compatible = "ti,tlv320aic3x";
reg = <0x18>;
- gpio-reset = <&tlmm 92 0>;
+ reset-gpios = <&tlmm 92 0>;
reset-inverted;
AVDD-supply = <&codec_vreg>;
IOVDD-supply = <&codec_vreg>;
diff --git a/qcom/sa515m-pcie.dtsi b/qcom/sa515m-pcie.dtsi
index 19b0bdda..85ca5054 100755
--- a/qcom/sa515m-pcie.dtsi
+++ b/qcom/sa515m-pcie.dtsi
@@ -421,4 +421,26 @@
0x1244 0x003 0x0>;
status = "disabled";
};
+
+ mhi_device: mhi_dev@1c03000 {
+ compatible = "qcom,msm-mhi-dev";
+ reg = <0x1c03000 0x1000>,
+ <0x1e15000 0x4>,
+ <0x1e15148 0x4>;
+ reg-names = "mhi_mmio_base", "ipa_uc_mbox_crdb",
+ "ipa_uc_mbox_erdb";
+ qcom,mhi-ep-msi = <0>;
+ qcom,mhi-version = <0x1000000>;
+ qcom,use-ipa-software-channel;
+ interrupts = <0 145 0>;
+ interrupt-names = "mhi-device-inta";
+ qcom,mhi-ifc-id = <0x030617cb>;
+ qcom,mhi-interrupt;
+ status = "disabled";
+ };
+
+ mhi_net_device: qcom,mhi_net_dev {
+ compatible = "qcom,msm-mhi-dev-net";
+ status = "disabled";
+ };
};
diff --git a/qcom/sa515m-v2-ccard-pcie-ep.dts b/qcom/sa515m-v2-ccard-pcie-ep.dts
index c967203b..00387dae 100755
--- a/qcom/sa515m-v2-ccard-pcie-ep.dts
+++ b/qcom/sa515m-v2-ccard-pcie-ep.dts
@@ -33,3 +33,14 @@
qcom,iommu-dma = "bypass";
};
};
+
+&mhi_device {
+ reg = <0x1c03000 0x1000>,
+ <0x1e15000 0x4>,
+ <0x1e15138 0x4>;
+ status = "ok";
+};
+
+&mhi_net_device {
+ status = "ok";
+};
diff --git a/qcom/sa515m.dtsi b/qcom/sa515m.dtsi
index 488a86bd..4e01586e 100755
--- a/qcom/sa515m.dtsi
+++ b/qcom/sa515m.dtsi
@@ -5,13 +5,14 @@
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
+#include <dt-bindings/gpio/gpio.h>
/ {
#address-cells = <1>;
#size-cells = <1>;
model = "Qualcomm Technologies, Inc. SA515M";
compatible = "qcom,sa515m";
- qcom,msm-id = <418 0x20000>;
+ qcom,msm-id = <418 0x10000>;
interrupt-parent = <&intc>;
@@ -31,7 +32,7 @@
mpss_adsp_mem: mpss_adsp_region@90800000 {
no-map;
- reg = <0x90800000 0xf800000>;
+ reg = <0x90800000 0xe000000>;
label = "mpss_adsp_mem";
};
@@ -950,6 +951,124 @@
interrupt-names = "ipa-smp2p-in";
};
};
+
+ mtl_rx_setup: rx-queues-config {
+ snps,rx-queues-to-use = <4>;
+ snps,rx-sched-sp;
+
+ queue0 {
+ snps,dcb-algorithm;
+ snps,map-to-dma-channel = <0x0>;
+ snps,route-up;
+ snps,route-ptp;
+ snps,route-dcbcp;
+ };
+
+ queue1 {
+ snps,dcb-algorithm;
+ snps,map-to-dma-channel = <0x1>;
+ snps,route-avcp;
+ snps,route-multi-broad;
+ };
+
+ queue2 {
+ snps,avb-algorithm;
+ snps,map-to-dma-channel = <0x2>;
+ };
+
+ queue3 {
+ snps,avb-algorithm;
+ snps,map-to-dma-channel = <0x3>;
+ snps,priority = <0x0C>;
+ };
+ };
+
+ mtl_tx_setup: tx-queues-config {
+ snps,tx-queues-to-use = <5>;
+ snps,tx-sched-sp;
+ queue0 {
+ snps,dcb-algorithm;
+ };
+
+ queue1 {
+ snps,dcb-algorithm;
+ };
+
+ queue2 {
+ snps,avb-algorithm;
+ snps,send_slope = <0x1000>;
+ snps,idle_slope = <0x1000>;
+ snps,high_credit = <0x3E800>;
+ snps,low_credit = <0xFFC18000>;
+ };
+
+ queue3 {
+ snps,avb-algorithm;
+ snps,send_slope = <0x1000>;
+ snps,idle_slope = <0x1000>;
+ snps,high_credit = <0x3E800>;
+ snps,low_credit = <0xFFC18000>;
+ };
+ };
+
+ ethqos_hw: qcom,ethernet@00020000 {
+ compatible = "qcom,sdxprairie-ethqos";
+ qcom,arm-smmu;
+ reg = <0x20000 0x10000>,
+ <0x36000 0x100>,
+ <0xf100000 0x300000>;
+ reg-names = "stmmaceth", "rgmii","tlmm-central-base";
+ clocks = <&gcc GCC_ETH_AXI_CLK>,
+ <&gcc GCC_ETH_SLAVE_AHB_CLK>,
+ <&gcc GCC_ETH_PTP_CLK>,
+ <&gcc GCC_ETH_RGMII_CLK>;
+ clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii";
+ interrupts-extended = <&intc 0 62 4>, <&intc 0 60 4>,
+ <&tlmm 90 2>, <&intc 0 290 1>, <&intc 0 291 1>;
+ interrupt-names = "macirq", "eth_lpi",
+ "phy-intr", "ptp_pps_irq_0", "ptp_pps_irq_1";
+
+ snps,tso;
+ rx-fifo-depth = <16384>;
+ tx-fifo-depth = <16384>;
+ snps,mtl-rx-config = <&mtl_rx_setup>;
+ snps,mtl-tx-config = <&mtl_tx_setup>;
+
+ vreg_rgmii-supply = <&pmx55_vref_rgmii>;
+ vreg_emac_phy-supply = <&vreg_emac_phy>;
+ vreg_rgmii_io_pads-supply = <&vreg_rgmii_io_pads>;
+ gdsc_emac-supply = <&gdsc_emac>;
+
+ qcom,phy-intr-redirect = <&tlmm 90 GPIO_ACTIVE_LOW>;
+ pinctrl-names = "dev-emac_pin_pps_0", "dev-emac_pin_pps_1";
+ pinctrl-0 = <&emac_pin_pps_0>;
+ pinctrl-1 = <&emac_pin_pps_1>;
+ snps,reset-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>;
+
+ snps,reset-delays-us = <0 10000 100000>;
+ phy-mode = "rgmii";
+
+ ethqos_emb_smmu: ethqos_emb_smmu {
+ compatible = "qcom,emac-smmu-embedded";
+ iommus = <&apps_smmu 0x1c0 0xf>;
+ qcom,iommu-dma = "fastmap";
+ qcom,iommu-dma-addr-pool = <0x80000000 0x40000000>;
+ };
+
+
+ rgmii-io-macro-info {
+ prg-rclk-dly = <1507>;
+ config-cdr-en = <0>;
+ mclk-gating-en = <1>;
+ cdr-fine-phase = <1>;
+ loopback-en = <0>;
+ rx-prog-swap = <1>;
+ tx-clk-phase-shift-en = <1>;
+ dll-clock-dis = <1>;
+ ddr-traffic-init-sel = <0>;
+ ddr-traffic-init-sw = <0>;
+ };
+ };
};
#include "sa515m-pinctrl.dtsi"
@@ -997,3 +1116,83 @@
cd-gpios = <&tlmm 99 GPIO_ACTIVE_LOW>;
status = "ok";
};
+
+#include "sdxprairie-thermal.dtsi"
+
+&thermal_zones {
+ /delete-node/ pm8150b-wp-therm;
+ /delete-node/ pm8150b_tz;
+ /delete-node/ pm8150b-ibat-lvl0;
+ /delete-node/ pm8150b-ibat-lvl1;
+ /delete-node/ pm8150b-vbat-lvl0;
+ /delete-node/ pm8150b-vbat-lvl1;
+ /delete-node/ pm8150b-vbat-lvl2;
+ /delete-node/ pm8150b-bcl-lvl0;
+ /delete-node/ pm8150b-bcl-lvl1;
+ /delete-node/ pm8150b-bcl-lvl2;
+ /delete-node/ soc;
+
+ /* update Tj thresholds */
+ mdm-core-0-step {
+ trips {
+ active-config0 {
+ temperature = <101000>;
+ hysteresis = <5000>;
+ };
+
+ active-config1 {
+ temperature = <103000>;
+ hysteresis = <3000>;
+ };
+
+ active-config2 {
+ temperature = <105000>;
+ hysteresis = <3000>;
+ };
+ };
+ };
+
+ mdm-core-0-v2x-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 6>;
+ thermal-governor = "step_wise";
+
+ trips {
+ tj_v2x_config0: active-config0 {
+ temperature = <105000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ tj_v2x_config1: active-config1 {
+ temperature = <110000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ tj_v2x_config2: active-config2 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ modem_tj0_v2x_cdev {
+ trip = <&tj_v2x_config0>;
+ cooling-device = <&modem_v2x 1 1>;
+ };
+
+ modem_tj1_v2x_cdev {
+ trip = <&tj_v2x_config1>;
+ cooling-device = <&modem_v2x 2 2>;
+ };
+
+ modem_tj2_v2x_cdev {
+ trip = <&tj_v2x_config2>;
+ cooling-device = <&modem_v2x 3 3>;
+ };
+ };
+ };
+};
diff --git a/qcom/sa6155p-vm.dtsi b/qcom/sa6155p-vm.dtsi
index 9e37b137..8a2506ea 100755
--- a/qcom/sa6155p-vm.dtsi
+++ b/qcom/sa6155p-vm.dtsi
@@ -475,3 +475,8 @@
status = "ok";
};
+&hab {
+ /delete-node/ mmidgrp1400;
+ /delete-node/ mmidgrp1500;
+};
+
diff --git a/qcom/sa6155p.dtsi b/qcom/sa6155p.dtsi
index a41e9e14..8886ced6 100755
--- a/qcom/sa6155p.dtsi
+++ b/qcom/sa6155p.dtsi
@@ -15,8 +15,8 @@
};
&reserved_memory {
- uefi_log: uefi_log@9241C000 {
- reg = <0x0 0x9241C000 0x0 0x10000>;
+ uefi_log: uefi_log@93900000 {
+ reg = <0x0 0x93900000 0x0 0x10000>;
label = "uefi_log";
};
};
diff --git a/qcom/sa8155-vm.dtsi b/qcom/sa8155-vm.dtsi
index 10d6f4f7..2827b9f6 100755
--- a/qcom/sa8155-vm.dtsi
+++ b/qcom/sa8155-vm.dtsi
@@ -915,3 +915,9 @@
qcom,iommu-dma = "bypass";
status = "disabled";
};
+
+&hab {
+ /delete-node/ mmidgrp1400;
+ /delete-node/ mmidgrp1500;
+};
+
diff --git a/qcom/sa8155.dtsi b/qcom/sa8155.dtsi
index c0db48d6..3ee4c524 100755
--- a/qcom/sa8155.dtsi
+++ b/qcom/sa8155.dtsi
@@ -164,7 +164,9 @@
"dev-emac-rgmii_rx_ctl_state",
"dev-emac-phy_intr",
"dev-emac-phy_reset_state",
- "dev-emac_pin_pps_0";
+ "dev-emac_pin_pps_0",
+ "dev-emac-rgmii_txc_suspend_state",
+ "dev-emac-rgmii_txc_resume_state";
pinctrl-0 = <&emac_mdc>;
pinctrl-1 = <&emac_mdio>;
@@ -186,6 +188,8 @@
pinctrl-14 = <&emac_phy_intr>;
pinctrl-15 = <&emac_phy_reset_state>;
pinctrl-16 = <&emac_pin_pps_0>;
+ pinctrl-17 = <&emac_rgmii_txc_suspend>;
+ pinctrl-18 = <&emac_rgmii_txc_resume>;
snps,reset-delays-us = <0 11000 70000>;
phy-mode = "rgmii";
diff --git a/qcom/sa8195-vm.dtsi b/qcom/sa8195-vm.dtsi
index c8426307..bb13629f 100755
--- a/qcom/sa8195-vm.dtsi
+++ b/qcom/sa8195-vm.dtsi
@@ -960,3 +960,9 @@
qcom,iommu-dma = "atomic";
status = "disabled";
};
+
+&hab {
+ /delete-node/ mmidgrp1400;
+ /delete-node/ mmidgrp1500;
+};
+
diff --git a/qcom/sdx55-regulator.dtsi b/qcom/sdx55-regulator.dtsi
index 965ae891..801046d9 100755
--- a/qcom/sdx55-regulator.dtsi
+++ b/qcom/sdx55-regulator.dtsi
@@ -85,6 +85,15 @@
qcom,init-voltage-level =
<RPMH_REGULATOR_LEVEL_RETENTION>;
};
+
+ mx_cdev: mx-cdev-lvl {
+ compatible = "qcom,regulator-cooling-device";
+ regulator-cdev-supply = <&VDD_MX_LEVEL>;
+ regulator-levels =
+ <RPMH_REGULATOR_LEVEL_RETENTION
+ RPMH_REGULATOR_LEVEL_NOM>;
+ #cooling-cells = <2>;
+ };
};
/* PMX55 S5 = VDD_CX supply */
@@ -119,6 +128,13 @@
<RPMH_REGULATOR_LEVEL_RETENTION>;
qcom,min-dropout-voltage-level = <(-1)>;
};
+
+ cx_cdev: regulator-cdev {
+ compatible = "qcom,rpmh-reg-cdev";
+ mboxes = <&qmp_aop 0>;
+ qcom,reg-resource-name = "cx";
+ #cooling-cells = <2>;
+ };
};
rpmh-regulator-ldoe1 {
diff --git a/qcom/sdxprairie-thermal-common.dtsi b/qcom/sdxprairie-thermal-common.dtsi
new file mode 100755
index 00000000..0335e50f
--- /dev/null
+++ b/qcom/sdxprairie-thermal-common.dtsi
@@ -0,0 +1,650 @@
+&soc {
+ qmi-tmd-devices {
+ compatible = "qcom,qmi-cooling-devices";
+
+ modem {
+ qcom,instance-id = <QMI_MODEM_NR_INST_ID>;
+
+ modem_pa: modem_pa {
+ qcom,qmi-dev-name = "pa";
+ #cooling-cells = <2>;
+ };
+
+ modem_pa_fr1: modem_pa_fr1 {
+ qcom,qmi-dev-name = "pa_fr1";
+ #cooling-cells = <2>;
+ };
+
+ modem_tj: modem_tj {
+ qcom,qmi-dev-name = "modem";
+ #cooling-cells = <2>;
+ };
+
+ modem_current: modem_current {
+ qcom,qmi-dev-name = "modem_current";
+ #cooling-cells = <2>;
+ };
+
+ modem_skin: modem_skin {
+ qcom,qmi-dev-name = "modem_skin";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw_skin0: modem_mmw_skin0 {
+ qcom,qmi-dev-name = "mmw_skin0";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw_skin1: modem_mmw_skin1 {
+ qcom,qmi-dev-name = "mmw_skin1";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw_skin2: modem_mmw_skin2 {
+ qcom,qmi-dev-name = "mmw_skin2";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw_skin3: modem_mmw_skin3 {
+ qcom,qmi-dev-name = "mmw_skin3";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw0: modem_mmw0 {
+ qcom,qmi-dev-name = "mmw0";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw1: modem_mmw1 {
+ qcom,qmi-dev-name = "mmw1";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw2: modem_mmw2 {
+ qcom,qmi-dev-name = "mmw2";
+ #cooling-cells = <2>;
+ };
+
+ modem_mmw3: modem_mmw3 {
+ qcom,qmi-dev-name = "mmw3";
+ #cooling-cells = <2>;
+ };
+
+ modem_bcl: modem_bcl {
+ qcom,qmi-dev-name = "vbatt_low";
+ #cooling-cells = <2>;
+ };
+
+ modem_charge_state: modem_charge_state {
+ qcom,qmi-dev-name = "charge_state";
+ #cooling-cells = <2>;
+ };
+
+ modem_vdd: modem_vdd {
+ qcom,qmi-dev-name = "cpuv_restriction_cold";
+ #cooling-cells = <2>;
+ };
+
+ modem_v2x: modem_v2x {
+ qcom,qmi-dev-name = "modem_v2x";
+ #cooling-cells = <2>;
+ };
+ };
+ };
+
+ qmi_sensor: qmi-ts-sensors {
+ compatible = "qcom,qmi-sensors";
+ #thermal-sensor-cells = <1>;
+
+ modem {
+ qcom,instance-id = <QMI_MODEM_NR_INST_ID>;
+ qcom,qmi-sensor-names = "pa",
+ "pa_1",
+ "qfe_wtr0",
+ "modem_tsens",
+ "qfe_mmw0",
+ "qfe_mmw1",
+ "qfe_mmw2",
+ "qfe_mmw3",
+ "xo_therm",
+ "qfe_mmw_streamer0",
+ "qfe_mmw0_mod",
+ "qfe_mmw1_mod",
+ "qfe_mmw2_mod",
+ "qfe_mmw3_mod",
+ "qfe_ret_pa0",
+ "qfe_ret_pa1",
+ "qfe_wtr_pa0",
+ "qfe_wtr_pa1",
+ "qfe_wtr_pa2",
+ "qfe_wtr_pa3",
+ "sys_therm1",
+ "sys_therm2",
+ "modem_tsens1",
+ "qfe_ret_pa0_fr1",
+ "qfe_ret_pa1_fr1",
+ "qfe_wtr_pa0_fr1",
+ "qfe_wtr_pa1_fr1",
+ "qfe_wtr_pa2_fr1",
+ "qfe_wtr_pa3_fr1",
+ "qfe_wtr_pa4",
+ "qfe_wtr_pa5",
+ "qfe_wtr_pa6",
+ "qfe_wtr_pa4_fr1",
+ "qfe_wtr_pa5_fr1",
+ "qfe_wtr_pa6_fr1";
+ };
+ };
+};
+
+&thermal_zones {
+ modem-lte-sub6-pa1 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_PA)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-lte-sub6-pa2 {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_PA_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_0)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw2-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_2)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw3-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_3)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-skin-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_XO_THERM)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wifi-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_SYS_THERM_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-ambient-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_SYS_THERM_2)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_MODEM_TSENS)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_MODEM_TSENS_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-streamer-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_STREAMER_0)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw0-mod-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_0_MOD)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw1-mod-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_1_MOD)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw2-mod-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_2_MOD)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-mmw3-mod-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_MMW_3_MOD)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-ret-0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_RET_PA_0)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-ret-1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_RET_PA_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_0)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-2-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_2)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-3-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_3)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-4-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_4)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-5-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_5)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-6-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA_6)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-ret-0-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_RET_PA0_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-ret-1-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_RET_PA1_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-0-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA0_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-1-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA1_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-2-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA2_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-3-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA3_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-4-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA4_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-5-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA5_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+
+ modem-wtr-6-fr1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&qmi_sensor
+ (QMI_MODEM_NR_INST_ID+QMI_QFE_WTR_PA6_FR1)>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+ };
+ };
+};
diff --git a/qcom/sdxprairie-thermal.dtsi b/qcom/sdxprairie-thermal.dtsi
new file mode 100755
index 00000000..83f9da29
--- /dev/null
+++ b/qcom/sdxprairie-thermal.dtsi
@@ -0,0 +1,204 @@
+#include <dt-bindings/thermal/thermal.h>
+#include <dt-bindings/thermal/thermal_qti.h>
+#include "sdxprairie-thermal-common.dtsi"
+
+
+&soc {
+ tsens0: tsens@c222000 {
+ compatible = "qcom,tsens24xx";
+ reg = <0xc222000 0x4>,
+ <0xc263000 0x1ff>;
+ reg-names = "tsens_srot_physical",
+ "tsens_tm_physical";
+ interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "tsens-upper-lower", "tsens-critical";
+ tsens-reinit-wa;
+ #thermal-sensor-cells = <1>;
+ };
+};
+
+&thermal_zones {
+ aoss0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&tsens0 0>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ mdm-q6-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&tsens0 1>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ ipa-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&tsens0 2>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ cpu0-0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-governor = "user_space";
+ thermal-sensors = <&tsens0 3>;
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ mdm-core-2-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 4>;
+ thermal-governor = "user_space";
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ mdm-core-1-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 5>;
+ thermal-governor = "user_space";
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ mdm-core-0-usr {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 6>;
+ thermal-governor = "user_space";
+ trips {
+ active-config0 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
+
+ active-config1 {
+ temperature = <115000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+ };
+
+ mdm-core-0-step {
+ polling-delay-passive = <0>;
+ polling-delay = <0>;
+ thermal-sensors = <&tsens0 6>;
+ thermal-governor = "step_wise";
+ trips {
+ tj_config0: active-config0 {
+ temperature = <85000>;
+ hysteresis = <3000>;
+ type = "passive";
+ };
+
+ tj_config1: active-config1 {
+ temperature = <90000>;
+ hysteresis = <7000>;
+ type = "passive";
+ };
+
+ tj_config2: active-config2 {
+ temperature = <95000>;
+ hysteresis = <7000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ modem_tj0_cdev {
+ trip = <&tj_config0>;
+ cooling-device = <&modem_tj 1 1>;
+ };
+
+ modem_tj1_cdev {
+ trip = <&tj_config1>;
+ cooling-device = <&modem_tj 2 2>;
+ };
+
+ modem_tj2_cdev {
+ trip = <&tj_config2>;
+ cooling-device = <&modem_tj 3 3>;
+ };
+ };
+ };
+};
diff --git a/qcom/sm6150-thermal-overlay.dtsi b/qcom/sm6150-thermal-overlay.dtsi
new file mode 100755
index 00000000..9e514227
--- /dev/null
+++ b/qcom/sm6150-thermal-overlay.dtsi
@@ -0,0 +1,202 @@
+#include <dt-bindings/thermal/thermal_qti.h>
+
+&thermal_zones {
+ pm6150-tz {
+ cooling-maps {
+ trip0_bat {
+ trip = <&pm6150_trip0>;
+ cooling-device =
+ <&pm6150_charger (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip1_bat {
+ trip = <&pm6150_trip1>;
+ cooling-device =
+ <&pm6150_charger THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ pm6150l_tz {
+ cooling-maps {
+ trip0_cpu0 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU0 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu1 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU1 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu2 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU2 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu3 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU3 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu4 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU4 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu5 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU5 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu6 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU6 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip0_cpu7 {
+ trip = <&pm6150l_trip0>;
+ cooling-device =
+ <&CPU7 (THERMAL_MAX_LIMIT-1)
+ (THERMAL_MAX_LIMIT-1)>;
+ };
+
+ trip1_cpu1 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU1 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu2 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU2 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu3 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU3 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu4 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU4 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu5 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU5 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu6 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU6 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ trip1_cpu7 {
+ trip = <&pm6150l_trip1>;
+ cooling-device =
+ <&CPU7 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ pm6150-bcl-lvl0 {
+ cooling-maps {
+ vbat_cpu6 {
+ trip = <&bcl_lvl0>;
+ cooling-device =
+ <&CPU6 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ vbat_cpu7 {
+ trip = <&bcl_lvl0>;
+ cooling-device =
+ <&CPU7 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ pm6150-bcl-lvl1 {
+ cooling-maps {
+ ibat_cpu6 {
+ trip = <&bcl_lvl1>;
+ cooling-device =
+ <&CPU6 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ ibat_cpu7 {
+ trip = <&bcl_lvl1>;
+ cooling-device =
+ <&CPU7 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ pm6150-bcl-lvl2 {
+ cooling-maps {
+ ibat_cpu6 {
+ trip = <&bcl_lvl2>;
+ cooling-device =
+ <&CPU6 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ ibat_cpu7 {
+ trip = <&bcl_lvl2>;
+ cooling-device =
+ <&CPU7 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+
+ socd {
+ cooling-maps {
+ soc_cpu6 {
+ trip = <&socd_trip>;
+ cooling-device =
+ <&CPU6 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+
+ soc_cpu7 {
+ trip = <&socd_trip>;
+ cooling-device =
+ <&CPU7 THERMAL_MAX_LIMIT
+ THERMAL_MAX_LIMIT>;
+ };
+ };
+ };
+};
diff --git a/qcom/sm6150.dtsi b/qcom/sm6150.dtsi
index 4ef75b7e..30852c60 100755
--- a/qcom/sm6150.dtsi
+++ b/qcom/sm6150.dtsi
@@ -646,7 +646,7 @@
};
llcc_pmu: llcc-pmu@90cc000 {
- compatible = "qcom,llcc-pmu-ver2";
+ compatible = "qcom,llcc-pmu-ver1";
reg = <0x090cc000 0x300>;
reg-names = "lagg-base";
};
@@ -2565,7 +2565,7 @@
qcom,wakeup-enable;
};
- qcom,chd_sliver {
+ qcom,chd_silver {
compatible = "qcom,core-hang-detect";
label = "silver";
qcom,threshold-arr = <0x18000058 0x18010058 0x18020058
@@ -2604,6 +2604,10 @@
"l3-scu-errirq",
"l3-scu-faultirq";
};
+
+ qcom,power-state {
+ compatible = "qcom,power-state";
+ };
};
#include "sm6150-regulator.dtsi"
diff --git a/qcom/sm8150-pinctrl.dtsi b/qcom/sm8150-pinctrl.dtsi
index 2e1c7cbe..704a75da 100755
--- a/qcom/sm8150-pinctrl.dtsi
+++ b/qcom/sm8150-pinctrl.dtsi
@@ -4913,6 +4913,33 @@
};
};
+ emac_rgmii_txc_suspend: emac_rgmii_txc_suspend {
+ mux {
+ pins = "gpio114";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio114";
+ output-low;
+ bias-disable;
+ };
+ };
+
+ emac_rgmii_txc_resume: emac_rgmii_txc_resume {
+ mux {
+ pins = "gpio114";
+ function = "rgmii";
+ };
+
+ config {
+ pins = "gpio114";
+ input-enable;
+ bias-pull-up;
+ drive-strength = <16>;
+ };
+ };
+
emac_rgmii_tx_ctl: emac_rgmii_tx_ctl {
mux {
pins = "gpio121";