summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohnnLee <johnnlee@google.com>2022-10-27 14:17:05 +0800
committerJohnny Lee <johnnlee@google.com>2022-10-31 06:44:59 +0000
commit924ee949a66fa021ea9a19c4e6ae16429e7bf865 (patch)
tree0a2160ebb2c25128d55eac7b1adbb8d6bd317cc1
parent30211b25c711982716dd2b486bc9b2afe3fe16da (diff)
parent8ca97fa26f809b39432209fb368c0230bc6e1fdf (diff)
downloaddevicetree-924ee949a66fa021ea9a19c4e6ae16429e7bf865.tar.gz
Merge branch 'LA.UM.9.12.C10.11.00.00.840.415' via branch 'qcom-msm-4.19-7250' into android-msm-pixel-4.19android-u-preview-1_r0.1android-msm-redbull-4.19-u-preview-1
Conflicts: qcom/kona.dtsi Bug: 253163588 Change-Id: I81c8e949fdb187ffef6aeb7e4c79e89260f2efcd Signed-off-by: JohnnLee <johnnlee@google.com>
-rw-r--r--bindings/arm/msm/msm.txt18
-rw-r--r--bindings/misc/kinetics-nordic.txt10
-rw-r--r--bindings/misc/nordic-spicontroller.txt10
-rw-r--r--bindings/usb/vbus-extcon-genoa.txt19
-rw-r--r--qcom/Makefile130
-rw-r--r--qcom/bengal-sde-display.dtsi4
-rw-r--r--qcom/dsi-panel-arglass-seeya-dual-1080p-90hz-video.dtsi116
-rw-r--r--qcom/dsi-panel-arglass-seeya-dual-1080p-video.dtsi64
-rw-r--r--qcom/khaje.dtsi2
-rw-r--r--qcom/khajeg-atp-overlay.dts13
-rw-r--r--qcom/khajeg-atp.dts12
-rw-r--r--qcom/khajeg-atp.dtsi1
-rw-r--r--qcom/khajeg-idp-nopmi-overlay.dts13
-rw-r--r--qcom/khajeg-idp-nopmi.dts11
-rw-r--r--qcom/khajeg-idp-nopmi.dtsi1
-rw-r--r--qcom/khajeg-idp-overlay.dts14
-rw-r--r--qcom/khajeg-idp-pm8010-overlay.dts14
-rw-r--r--qcom/khajeg-idp-pm8010.dts12
-rw-r--r--qcom/khajeg-idp-pm8010.dtsi5
-rw-r--r--qcom/khajeg-idp-usbc-overlay.dts15
-rw-r--r--qcom/khajeg-idp-usbc.dts14
-rw-r--r--qcom/khajeg-idp-usbc.dtsi1
-rw-r--r--qcom/khajeg-idp.dts12
-rw-r--r--qcom/khajeg-idp.dtsi65
-rw-r--r--qcom/khajeg-idps-display-90hz-overlay.dts16
-rw-r--r--qcom/khajeg-idps-display-90hz.dts14
-rw-r--r--qcom/khajeg-idps-display-90hz.dtsi1
-rw-r--r--qcom/khajeg-qrd-hvdcp3p5-overlay.dts15
-rw-r--r--qcom/khajeg-qrd-hvdcp3p5.dts13
-rw-r--r--qcom/khajeg-qrd-hvdcp3p5.dtsi1
-rw-r--r--qcom/khajeg-qrd-nopmi-overlay.dts13
-rw-r--r--qcom/khajeg-qrd-nopmi.dts11
-rw-r--r--qcom/khajeg-qrd-nopmi.dtsi1
-rw-r--r--qcom/khajeg-qrd-nowcd9375-overlay.dts15
-rw-r--r--qcom/khajeg-qrd-nowcd9375.dts13
-rw-r--r--qcom/khajeg-qrd-nowcd9375.dtsi1
-rw-r--r--qcom/khajeg-qrd-overlay.dts18
-rw-r--r--qcom/khajeg-qrd.dts12
-rw-r--r--qcom/khajeg-qrd.dtsi5
-rw-r--r--qcom/khajeg.dts9
-rw-r--r--qcom/khajeg.dtsi123
-rw-r--r--qcom/khajep-atp-overlay.dts14
-rw-r--r--qcom/khajep-atp.dts12
-rw-r--r--qcom/khajep-atp.dtsi1
-rw-r--r--qcom/khajep-idp-nopmi-overlay.dts13
-rw-r--r--qcom/khajep-idp-nopmi.dts11
-rw-r--r--qcom/khajep-idp-nopmi.dtsi1
-rw-r--r--qcom/khajep-idp-overlay.dts14
-rw-r--r--qcom/khajep-idp-pm8010-overlay.dts15
-rw-r--r--qcom/khajep-idp-pm8010.dts13
-rw-r--r--qcom/khajep-idp-pm8010.dtsi4
-rw-r--r--qcom/khajep-idp-usbc-overlay.dts16
-rw-r--r--qcom/khajep-idp-usbc.dts15
-rw-r--r--qcom/khajep-idp-usbc.dtsi1
-rw-r--r--qcom/khajep-idp.dts12
-rw-r--r--qcom/khajep-idp.dtsi1
-rw-r--r--qcom/khajep-idps-display-90hz-overlay.dts15
-rw-r--r--qcom/khajep-idps-display-90hz.dts13
-rw-r--r--qcom/khajep-idps-display-90hz.dtsi1
-rw-r--r--qcom/khajep-qrd-hvdcp3p5-overlay.dts15
-rw-r--r--qcom/khajep-qrd-hvdcp3p5.dts13
-rw-r--r--qcom/khajep-qrd-hvdcp3p5.dtsi1
-rw-r--r--qcom/khajep-qrd-nopmi-overlay.dts13
-rw-r--r--qcom/khajep-qrd-nopmi.dts11
-rw-r--r--qcom/khajep-qrd-nopmi.dtsi1
-rw-r--r--qcom/khajep-qrd-nowcd9375-overlay.dts15
-rw-r--r--qcom/khajep-qrd-nowcd9375.dts13
-rw-r--r--qcom/khajep-qrd-nowcd9375.dtsi1
-rw-r--r--qcom/khajep-qrd-overlay.dts18
-rw-r--r--qcom/khajep-qrd.dts11
-rw-r--r--qcom/khajep-qrd.dtsi3
-rw-r--r--qcom/khajep.dts9
-rw-r--r--qcom/khajep.dtsi22
-rw-r--r--qcom/khajeq-atp-overlay.dts14
-rw-r--r--qcom/khajeq-atp.dts12
-rw-r--r--qcom/khajeq-atp.dtsi1
-rw-r--r--qcom/khajeq-idp-nopmi-overlay.dts13
-rw-r--r--qcom/khajeq-idp-nopmi.dts11
-rw-r--r--qcom/khajeq-idp-nopmi.dtsi1
-rw-r--r--qcom/khajeq-idp-overlay.dts14
-rw-r--r--qcom/khajeq-idp-pm8010-overlay.dts15
-rw-r--r--qcom/khajeq-idp-pm8010.dts13
-rw-r--r--qcom/khajeq-idp-pm8010.dtsi5
-rw-r--r--qcom/khajeq-idp-usbc-overlay.dts16
-rw-r--r--qcom/khajeq-idp-usbc.dts15
-rw-r--r--qcom/khajeq-idp-usbc.dtsi1
-rw-r--r--qcom/khajeq-idp.dts12
-rw-r--r--qcom/khajeq-idp.dtsi1
-rw-r--r--qcom/khajeq-idps-display-90hz-overlay.dts15
-rw-r--r--qcom/khajeq-idps-display-90hz.dts13
-rw-r--r--qcom/khajeq-idps-display-90hz.dtsi1
-rw-r--r--qcom/khajeq-qrd-hvdcp3p5-overlay.dts15
-rw-r--r--qcom/khajeq-qrd-hvdcp3p5.dts13
-rw-r--r--qcom/khajeq-qrd-hvdcp3p5.dtsi1
-rw-r--r--qcom/khajeq-qrd-nopmi-overlay.dts13
-rw-r--r--qcom/khajeq-qrd-nopmi.dts11
-rw-r--r--qcom/khajeq-qrd-nopmi.dtsi1
-rw-r--r--qcom/khajeq-qrd-nowcd9375-overlay.dts15
-rw-r--r--qcom/khajeq-qrd-nowcd9375.dts13
-rw-r--r--qcom/khajeq-qrd-nowcd9375.dtsi1
-rw-r--r--qcom/khajeq-qrd-overlay.dts18
-rw-r--r--qcom/khajeq-qrd.dts11
-rw-r--r--qcom/khajeq-qrd.dtsi5
-rw-r--r--qcom/khajeq.dts9
-rw-r--r--qcom/khajeq.dtsi64
-rw-r--r--qcom/kona-7230-iot-cpu.dtsi394
-rw-r--r--qcom/kona-7230-iot-rb5.dts10
-rw-r--r--qcom/kona-7230-iot-rb5.dtsi30
-rw-r--r--qcom/kona-7230-iot-v2.1.dtsi8
-rw-r--r--qcom/kona-7230m-iot-rb5.dts10
-rw-r--r--qcom/kona-7230m-iot-rb5.dtsi2
-rw-r--r--qcom/kona-arglass.dtsi26
-rw-r--r--qcom/kona-cdp-lcd-tron.dts4
-rw-r--r--qcom/kona-cvp.dtsi3
-rw-r--r--qcom/kona-iot-v2.1.dtsi27
-rw-r--r--qcom/kona-pinctrl.dtsi1
-rw-r--r--qcom/kona-sde-display.dtsi22
-rw-r--r--qcom/kona-sde.dtsi3
-rw-r--r--qcom/kona-v2.1-iot-rb5.dtsi51
-rw-r--r--qcom/kona-xr.dtsi13
-rw-r--r--qcom/kona-xrfusion-ult.dtsi21
-rw-r--r--qcom/kona-xrfusion.dtsi13
-rw-r--r--qcom/kona-xrsku4.dtsi211
-rw-r--r--qcom/kona.dtsi24
-rw-r--r--qcom/qrb5165-iot-rb5.dts2
-rw-r--r--qcom/qrb5165-iot-rb5.dtsi2
-rw-r--r--qcom/qrb5165.dtsi4
-rw-r--r--qcom/qrb5165m-iot-rb5.dts10
-rw-r--r--qcom/qrb5165m-iot-rb5.dtsi2
-rw-r--r--qcom/qrb5165n-v2-iot-rb5.dts10
-rw-r--r--qcom/qrb5165n-v2-iot-rb5.dtsi2
-rw-r--r--qcom/scuba-iot-rb1-overlay.dts12
-rw-r--r--qcom/scuba-iot-rb1.dtsi211
-rw-r--r--qcom/scuba-pinctrl.dtsi69
-rw-r--r--qcom/scuba-qupv3.dtsi19
-rw-r--r--qcom/scubalite-iot-idp-2gb.dts11
-rw-r--r--qcom/scubalite-iot-idp-overlay.dts12
-rw-r--r--qcom/scubalite-iot-idp.dtsi1
-rw-r--r--qcom/scubap-iot-2gb.dts11
-rw-r--r--qcom/scubap-iot-rb1-2gb.dts12
-rw-r--r--qcom/scubaplite-iot-idp-2gb.dts12
-rw-r--r--qcom/sdm660-pm660a.dts11
-rw-r--r--qcom/sdm660-qrd-dsi-rm67195-amoled-overlay.dts48
-rw-r--r--qcom/sdm660-qrd-dsi-rm67195-amoled.dts45
144 files changed, 2859 insertions, 58 deletions
diff --git a/bindings/arm/msm/msm.txt b/bindings/arm/msm/msm.txt
index c3d4a810..5dc4a5c4 100644
--- a/bindings/arm/msm/msm.txt
+++ b/bindings/arm/msm/msm.txt
@@ -62,6 +62,15 @@ SoCs:
- KHAJE
compatible = "qcom,khaje"
+- KHAJEP
+ compatible = "qcom,khajep"
+
+- KHAJEQ
+ compatible = "qcom,khajeq"
+
+- KHAJEG
+ compatible = "qcom,khajeg"
+
- SCUBA
compatible = "qcom,scuba"
@@ -253,6 +262,15 @@ compatible = "qcom,bengalp-idp"
compatible = "qcom,khaje-idp"
compatible = "qcom,khaje-qrd"
compatible = "qcom,khaje-atp"
+compatible = "qcom,khajep-idp"
+compatible = "qcom,khajep-qrd"
+compatible = "qcom,khajeq-idp"
+compatible = "qcom,khajeq-qrd"
+compatible = "qcom,khajep-atp"
+compatible = "qcom,khajeq-atp"
+compatible = "qcom,khajeg-idp"
+compatible = "qcom,khajeg-qrd"
+compatible = "qcom,khajeg-atp"
compatible = "qcom,scuba-rumi"
compatible = "qcom,scuba-idp"
compatible = "qcom,scuba-qrd"
diff --git a/bindings/misc/kinetics-nordic.txt b/bindings/misc/kinetics-nordic.txt
new file mode 100644
index 00000000..fb36c701
--- /dev/null
+++ b/bindings/misc/kinetics-nordic.txt
@@ -0,0 +1,10 @@
+KINETICS-NORDIC provides a way to configure kinetics-nordic driver.
+
+Required properties:
+- compatible : should be "kinetics,nordic"
+
+Optional properties:
+Example:
+ nordic {
+ compatible = "kinetics,nordic";
+ };
diff --git a/bindings/misc/nordic-spicontroller.txt b/bindings/misc/nordic-spicontroller.txt
new file mode 100644
index 00000000..29e48387
--- /dev/null
+++ b/bindings/misc/nordic-spicontroller.txt
@@ -0,0 +1,10 @@
+NORDIC-SPICONTROLLER provides a way to configure nordic spi driver.
+
+Required properties:
+- compatible : should be "nordic,spicontroller"
+
+Optional properties:
+Example:
+ nordic {
+ compatible = "nordic,spicontroller";
+ };
diff --git a/bindings/usb/vbus-extcon-genoa.txt b/bindings/usb/vbus-extcon-genoa.txt
new file mode 100644
index 00000000..a5b4b95d
--- /dev/null
+++ b/bindings/usb/vbus-extcon-genoa.txt
@@ -0,0 +1,19 @@
+QCOM VBUS GENOA EXTCON driver
+
+Required properties:
+
+ - compatible : must be "qcom,genoa-extcon"
+ - genoa_vbus_det : Should specify GPIO for vbus detection.
+ - genoa_usb_id : Should specify GPIO for USB ID.
+ - genoa_usb_oe_n : Should specify GPIO for switch enable/disable.
+
+Example:
+
+ genoa: qcom,genoa-extcon {
+ compatible = "qcom,genoa-extcon";
+ genoa_vbus_det = <&tlmm 19 0x00>;
+ genoa_usb_id = <&tlmm 111 0x00>;
+ genoa_usb_oe_n = <&tlmm 24 GPIO_ACTIVE_LOW>;
+ status = "ok";
+ };
+
diff --git a/qcom/Makefile b/qcom/Makefile
index 6feab456..0113e6ae 100644
--- a/qcom/Makefile
+++ b/qcom/Makefile
@@ -67,8 +67,13 @@ dtb-$(CONFIG_ARCH_KONA) += kona-rumi.dtb \
kona-v2.1-arglass.dtb \
kona-v2.1-xrsku4.dtb \
qrb5165-iot-rb5.dtb \
+ qrb5165m-iot-rb5.dtb \
qrb5165n-iot-rb5.dtb \
- kona-v2.1-iot-rb5.dtb
+ qrb5165n-v2-iot-rb5.dtb \
+ kona-v2.1-iot-rb5.dtb \
+ kona-7230-iot-rb5.dtb \
+ kona-7230m-iot-rb5.dtb
+
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
@@ -214,7 +219,9 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
scuba-iot-idp-overlay.dtbo \
scuba-iot-idp-usbc-overlay.dtbo \
scuba-iot-qrd-eldo-overlay.dtbo \
- scuba-iot-qrd-non-eldo-overlay.dtbo
+ scuba-iot-qrd-non-eldo-overlay.dtbo \
+ scuba-iot-rb1-overlay.dtbo \
+ scubalite-iot-idp-overlay.dtbo
scuba-rumi-overlay.dtbo-base := scuba.dtb scubap.dtb scuba-2gb.dtb
scuba-idp-overlay.dtbo-base := scuba.dtb scubap.dtb scuba-2gb.dtb
@@ -224,7 +231,9 @@ scuba-idp-usbc-overlay.dtbo-base := scuba.dtb scubap.dtb scuba-2gb.dtb
scuba-iot-idp-overlay.dtbo-base := scuba-iot.dtb scuba-iot-2gb.dtb scubap-iot.dtb scubap-iot-idp.dtb scubap-iot-idp-2gb.dtb
scuba-iot-qrd-eldo-overlay.dtbo-base := scuba-iot.dtb scubap-iot.dtb scuba-iot-2gb.dtb
scuba-iot-qrd-non-eldo-overlay.dtbo-base := scuba-iot.dtb scubap-iot.dtb scuba-iot-2gb.dtb
+scuba-iot-rb1-overlay.dtbo-base := scubap-iot-2gb.dtb
scuba-iot-idp-usbc-overlay.dtbo-base := scuba-iot.dtb scubap-iot.dtb scuba-iot-2gb.dtb
+scubalite-iot-idp-overlay.dtbo-base := scuba-iot-2gb.dtb scubap-iot-2gb.dtb
else
dtb-$(CONFIG_ARCH_SCUBA) += scuba-rumi.dtb \
scuba-idp.dtb \
@@ -240,34 +249,97 @@ dtb-$(CONFIG_ARCH_SCUBA) += scuba-rumi.dtb \
scubap-iot-idp.dtb \
scuba-iot-qrd-eldo.dtb \
scuba-iot-qrd-non-eldo.dtb \
+ scubap-iot-rb1-2gb.dtb \
scubap-iot-idp-2gb.dtb \
scuba-iot-idp-2gb.dtb \
- scuba-iot-idp-usbc-2gb.dtb
+ scuba-iot-idp-usbc-2gb.dtb \
+ scubalite-iot-idp-2gb.dtb \
+ scubaplite-iot-idp-2gb.dtb
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
dtbo-$(CONFIG_ARCH_KHAJE) += \
- khaje-idp-overlay.dtbo \
+ khaje-atp-overlay.dtbo \
khaje-qrd-overlay.dtbo \
khaje-qrd-hvdcp3p5-overlay.dtbo \
khaje-qrd-nowcd9375-overlay.dtbo \
+ khaje-qrd-nopmi-overlay.dtbo \
+ khaje-idp-overlay.dtbo \
khaje-idp-nopmi-overlay.dtbo \
khaje-idp-usbc-overlay.dtbo \
khaje-idp-pm8010-overlay.dtbo \
- khaje-qrd-nopmi-overlay.dtbo \
khaje-idps-display-90hz-overlay.dtbo \
- khaje-atp-overlay.dtbo
+ khajep-atp-overlay.dtbo \
+ khajep-qrd-overlay.dtbo \
+ khajep-qrd-hvdcp3p5-overlay.dtbo \
+ khajep-qrd-nowcd9375-overlay.dtbo \
+ khajep-qrd-nopmi-overlay.dtbo \
+ khajep-idp-overlay.dtbo \
+ khajep-idp-nopmi-overlay.dtbo \
+ khajep-idp-usbc-overlay.dtbo \
+ khajep-idp-pm8010-overlay.dtbo \
+ khajep-idps-display-90hz-overlay.dtbo \
+ khajeq-atp-overlay.dtbo \
+ khajeq-qrd-overlay.dtbo \
+ khajeq-qrd-hvdcp3p5-overlay.dtbo \
+ khajeq-qrd-nowcd9375-overlay.dtbo \
+ khajeq-qrd-nopmi-overlay.dtbo \
+ khajeq-idp-overlay.dtbo \
+ khajeq-idp-nopmi-overlay.dtbo \
+ khajeq-idp-usbc-overlay.dtbo \
+ khajeq-idp-pm8010-overlay.dtbo \
+ khajeq-idps-display-90hz-overlay.dtbo \
+ khajeg-atp-overlay.dtbo \
+ khajeg-qrd-overlay.dtbo \
+ khajeg-qrd-hvdcp3p5-overlay.dtbo \
+ khajeg-qrd-nowcd9375-overlay.dtbo \
+ khajeg-qrd-nopmi-overlay.dtbo \
+ khajeg-idp-overlay.dtbo \
+ khajeg-idp-nopmi-overlay.dtbo \
+ khajeg-idp-usbc-overlay.dtbo \
+ khajeg-idp-pm8010-overlay.dtbo \
+ khajeg-idps-display-90hz-overlay.dtbo
+khaje-atp-overlay.dtbo-base := khaje.dtb
khaje-idp-overlay.dtbo-base := khaje.dtb
-khaje-qrd-overlay.dtbo-base := khaje.dtb
-khaje-qrd-hvdcp3p5-overlay.dtbo-base := khaje.dtb
-khaje-qrd-nowcd9375-overlay.dtbo-base := khaje.dtb
khaje-idp-nopmi-overlay.dtbo-base := khaje.dtb
khaje-idp-usbc-overlay.dtbo-base := khaje.dtb
khaje-idp-pm8010-overlay.dtbo-base := khaje.dtb
-khaje-qrd-nopmi-overlay.dtbo-base := khaje.dtb
khaje-idps-display-90hz-overlay.dtbo-base := khaje.dtb
-khaje-atp-overlay.dtbo-base := khaje.dtb
+khaje-qrd-overlay.dtbo-base := khaje.dtb
+khaje-qrd-hvdcp3p5-overlay.dtbo-base := khaje.dtb
+khaje-qrd-nopmi-overlay.dtbo-base := khaje.dtb
+khaje-qrd-nowcd9375-overlay.dtbo-base := khaje.dtb
+khajep-atp-overlay.dtbo-base := khajep.dtb
+khajep-idps-display-90hz-overlay.dtbo-base := khajep.dtb
+khajep-idp-overlay.dtbo-base := khajep.dtb
+khajep-idp-nopmi-overlay.dtbo-base := khajep.dtb
+khajep-idp-usbc-overlay.dtbo-base := khajep.dtb
+khajep-idp-pm8010-overlay.dtbo-base := khajep.dtb
+khajep-qrd-overlay.dtbo-base := khajep.dtb
+khajep-qrd-hvdcp3p5-overlay.dtbo-base := khajep.dtb
+khajep-qrd-nowcd9375-overlay.dtbo-base := khajep.dtb
+khajep-qrd-nopmi-overlay.dtbo-base := khajep.dtb
+khajeq-atp-overlay.dtbo-base := khajeq.dtb
+khajeq-qrd-overlay.dtbo-base := khajeq.dtb
+khajeq-qrd-hvdcp3p5-overlay.dtbo-base := khajeq.dtb
+khajeq-qrd-nowcd9375-overlay.dtbo-base := khajeq.dtb
+khajeq-qrd-nopmi-overlay.dtbo-base := khajeq.dtb
+khajeq-idps-display-90hz-overlay.dtbo-base := khajeq.dtb
+khajeq-idp-overlay.dtbo-base := khajeq.dtb
+khajeq-idp-nopmi-overlay.dtbo-base := khajeq.dtb
+khajeq-idp-pm8010-overlay.dtbo-base := khajeq.dtb
+khajeq-idp-usbc-overlay.dtbo-base := khajeq.dtb
+khajeg-atp-overlay.dtbo-base := khajeg.dtb
+khajeg-qrd-overlay.dtbo-base := khajeg.dtb
+khajeg-qrd-hvdcp3p5-overlay.dtbo-base := khajeg.dtb
+khajeg-qrd-nowcd9375-overlay.dtbo-base := khajeg.dtb
+khajeg-qrd-nopmi-overlay.dtbo-base := khajeg.dtb
+khajeg-idp-overlay.dtbo-base := khajeg.dtb
+khajeg-idp-nopmi-overlay.dtbo-base := khajeg.dtb
+khajeg-idp-pm8010-overlay.dtbo-base := khajeg.dtb
+khajeg-idp-usbc-overlay.dtbo-base := khajeg.dtb
+khajeg-idps-display-90hz-overlay.dtbo-base := khajeg.dtb
else
dtb-$(CONFIG_ARCH_KHAJE) += khaje-idp.dtb \
khaje-qrd.dtb \
@@ -278,7 +350,35 @@ dtb-$(CONFIG_ARCH_KHAJE) += khaje-idp.dtb \
khaje-idp-pm8010.dtb \
khaje-qrd-nopmi.dtb \
khaje-idps-display-90hz.dtb \
- khaje-atp.dtb
+ khaje-atp.dtb \
+ khajep-atp.dtb \
+ khajep-qrd.dtb \
+ khajep-qrd-hvdcp3p5.dtb \
+ khajep-idps-display-90hz.dtb \
+ khajep-idp-nopmi.dtb \
+ khajep-idp-usbc.dtb \
+ khajep-idp-pm8010.dtb \
+ khajep-qrd-nowcd9375.dtb \
+ khajep-qrd-nopmi.dtb \
+ khajeq-atp.dtb \
+ khajeq-idps-display-90hz.dtb \
+ khajeq-idp-nopmi.dtb \
+ khajeq-idp-usbc.dtb \
+ khajeq-idp-pm8010.dtb \
+ khajeq-qrd.dtb \
+ khajeq-qrd-nowcd9375.dtb \
+ khajeq-qrd-hvdcp3p5.dtb \
+ khajeq-qrd-nopmi.dtb \
+ khajeg-atp.dtb \
+ khajeg-qrd.dtb \
+ khajeg-qrd-nowcd9375.dtb \
+ khajeg-qrd-hvdcp3p5.dtb \
+ khajeg-qrd-nopmi.dtb \
+ khajeg-idp.dtb \
+ khajeg-idp-nopmi.dtb \
+ khajeg-idp-usbc.dtb \
+ khajeg-idp-pm8010.dtb \
+ khajeg-idps-display-90hz.dtb
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
@@ -288,6 +388,7 @@ ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
sdm660-cdp-external-codec-overlay.dtbo \
sdm660-cdp-internal-codec-overlay.dtbo \
sdm660-qrd-external-codec-overlay.dtbo \
+ sdm660-qrd-dsi-rm67195-amoled-overlay.dtbo \
sdm660-rcm-external-codec-overlay.dtbo \
sdm660-rcm-internal-codec-overlay.dtbo \
sda660-mtp-external-codec-overlay.dtbo \
@@ -304,6 +405,8 @@ sdm660-cdp-internal-codec-overlay.dtbo-base := sdm660-pm660l.dtb
sdm660-qrd-external-codec-overlay.dtbo-base := sdm660-pm660l.dtb
+sdm660-qrd-dsi-rm67195-amoled-overlay.dtbo-base := sdm660-pm660a.dtb
+
sdm660-rcm-external-codec-overlay.dtbo-base := sdm660-pm660l.dtb
sdm660-rcm-internal-codec-overlay.dtbo-base := sdm660-pm660l.dtb
@@ -342,7 +445,8 @@ sdm660-internal-codec-cdp.dtb \
sdm660-pm660a-headset-jacktype-no-cdp.dtb \
sdm660-pm660a-headset-jacktype-no-rcm.dtb \
sdm660-usbc-audio-mtp.dtb \
- sdm660-usbc-audio-rcm.dtb
+ sdm660-usbc-audio-rcm.dtb \
+ sdm660-qrd-dsi-rm67195-amoled.dtb
endif
ifeq ($(CONFIG_BUILD_ARM64_DT_OVERLAY),y)
diff --git a/qcom/bengal-sde-display.dtsi b/qcom/bengal-sde-display.dtsi
index b6d7337b..0e663b7d 100644
--- a/qcom/bengal-sde-display.dtsi
+++ b/qcom/bengal-sde-display.dtsi
@@ -23,7 +23,7 @@
qcom,panel-supply-entry@1 {
reg = <1>;
qcom,supply-name = "lab";
- qcom,supply-min-voltage = <4600000>;
+ qcom,supply-min-voltage = <5600000>;
qcom,supply-max-voltage = <6000000>;
qcom,supply-enable-load = <100000>;
qcom,supply-disable-load = <100>;
@@ -32,7 +32,7 @@
qcom,panel-supply-entry@2 {
reg = <2>;
qcom,supply-name = "ibb";
- qcom,supply-min-voltage = <4600000>;
+ qcom,supply-min-voltage = <5600000>;
qcom,supply-max-voltage = <6000000>;
qcom,supply-enable-load = <100000>;
qcom,supply-disable-load = <100>;
diff --git a/qcom/dsi-panel-arglass-seeya-dual-1080p-90hz-video.dtsi b/qcom/dsi-panel-arglass-seeya-dual-1080p-90hz-video.dtsi
new file mode 100644
index 00000000..f40532d9
--- /dev/null
+++ b/qcom/dsi-panel-arglass-seeya-dual-1080p-90hz-video.dtsi
@@ -0,0 +1,116 @@
+&mdss_mdp {
+ dsi_dual_arglass_seeya_90hz_video: qcom,mdss_dsi_arglass_seeya_90hz_video {
+ qcom,mdss-dsi-panel-name =
+ "sy049wdm02 uoled video mode dsi seeya 90HZ panel with DSC";
+ qcom,mdss-dsi-panel-type = "dsi_video_mode";
+ qcom,dsi-ctrl-num = <0 1>;
+ qcom,dsi-phy-num = <0 1>;
+
+ qcom,mdss-dsi-virtual-channel-id = <0>;
+ qcom,mdss-dsi-stream = <0>;
+ qcom,mdss-dsi-bpp = <24>;
+ qcom,mdss-dsi-border-color = <0>;
+ qcom,mdss-dsi-traffic-mode = "non_burst_sync_event";
+ qcom,mdss-dsi-bllp-eof-power-mode;
+ qcom,mdss-dsi-bllp-power-mode;
+ qcom,mdss-dsi-lane-0-state;
+ qcom,mdss-dsi-lane-1-state;
+ qcom,mdss-dsi-lane-2-state;
+ qcom,mdss-dsi-lane-3-state;
+ qcom,mdss-dsi-dma-trigger = "trigger_sw";
+ qcom,mdss-dsi-mdp-trigger = "none";
+ qcom,mdss-dsi-reset-sequence = <1 20>, <0 20>, <1 50>;
+ qcom,adjust-timer-wakeup-ms = <1>;
+ qcom,mdss-dsi-panel-count = <2>;
+ qcom,mdss-dsi-panel-hdr-color-primaries = <14500 15500 32000
+ 17000 15500 30000 8000 3000>;
+
+ qcom,mdss-dsi-display-timings {
+ timing@0 {
+ qcom,mdss-dsi-panel-width = <1920>;
+ qcom,mdss-dsi-panel-height = <1080>;
+ qcom,mdss-dsi-h-front-porch = <32>;
+ qcom,mdss-dsi-h-back-porch = <32>;
+ qcom,mdss-dsi-h-pulse-width = <4>;
+ qcom,mdss-dsi-h-sync-skew = <0>;
+ qcom,mdss-dsi-v-back-porch = <14>;
+ qcom,mdss-dsi-v-front-porch = <16>;
+ qcom,mdss-dsi-v-pulse-width = <2>;
+ qcom,mdss-dsi-h-left-border = <0>;
+ qcom,mdss-dsi-panel-framerate = <90>;
+ qcom,mdss-dsi-on-command = [
+ //cmd1
+ 39 01 00 00 00 00 02 53 29
+ 39 01 00 00 00 00 03 51 FF 01
+ 39 01 00 00 00 00 02 03 01
+ 39 01 00 00 00 00 07 80 01 E0 E0 0E 00 31
+ 39 01 00 00 00 00 08 81 03 04 00 10 00 10 00
+ 39 01 00 00 00 00 08 82 03 04 00 10 00 10 01
+ 39 01 00 00 00 00 02 35 00
+ 39 01 00 00 00 00 02 26 20
+ //pps
+ 39 01 00 00 00 00 11 70 00 00 00 89 20 80 04 38
+ 07 80 00 1e 03 C0 03 C0
+ 39 01 00 00 00 00 02 65 10
+ 39 01 00 00 00 00 11 70 02 00 00 00 00 20 03 B4
+ 00 0D 00 0C 03 50 01 E9
+ 39 01 00 00 00 00 02 65 20
+ 39 01 00 00 00 00 0D 70 18 00 10 F0 03 0C 20 00
+ 06 0B 0B 33
+ // cmd2 p1
+ 39 01 00 00 00 00 03 F0 AA 11
+ 39 01 00 00 00 00 02 C0 00
+ 39 01 00 00 00 00 09 C2 03 FF 03 FF 03 FF 03 FF
+ // cmd2 p2
+ 39 01 00 00 00 00 03 F0 AA 12
+ 39 01 00 00 00 00 03 BF 37 A9
+ /* H mirror dsi1 */
+ 39 01 00 00 00 00 03 FF 5A 80
+ 39 01 00 00 00 00 02 65 2F
+ 39 01 00 00 00 00 02 F2 01
+ 39 01 00 00 00 00 02 36 02
+ /* v mirror dsi0 */
+ 39 01 00 04 00 00 03 FF 5A 80
+ 39 01 00 04 00 00 02 65 2F
+ 39 01 00 04 00 00 02 F2 01
+ 39 01 00 04 00 00 02 36 01
+ 39 01 00 04 00 00 03 F0 AA 13
+ 39 01 00 04 00 00 02 65 01
+ 39 01 00 04 00 00 02 C1 A2
+ 39 01 00 04 00 00 07 C4 12 53 64 31 42 56
+ 39 01 00 04 00 00 03 F0 AA 16
+ 39 01 00 04 00 00 07 B6 12 53 64 31 42 56
+ 39 01 00 04 00 00 03 B0 00 55
+ /* CMDs PP0 */
+ 39 01 00 00 00 00 03 FF 5A 80
+ 39 01 00 00 00 00 02 65 2F
+ 39 01 00 00 00 00 02 F2 01
+ //cmd3 p1
+ 39 01 00 00 00 00 03 FF 5A 81
+ 39 01 00 00 00 00 02 65 05
+ 39 01 00 00 00 00 02 F2 22
+ 39 01 00 00 00 00 02 65 0A
+ 39 01 00 00 00 00 02 F2 00
+ 39 01 00 00 00 00 02 65 16
+ 39 01 00 00 00 00 0F F9 01 5F 61 64 67 6A 6D 6F
+ 75 7B 80 86 8B 91
+ 05 01 00 00 14 00 01 11
+ 05 01 00 00 64 00 01 29
+ 39 01 00 00 00 00 03 F0 AA 11
+ ];
+ qcom,mdss-dsi-off-command = [05 01 00 00 0a 00
+ 02 28 00 05 01 00 00 3c 00 02 10 00];
+
+ qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
+ qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
+ qcom,compression-mode = "dsc";
+ qcom,mdss-dsc-slice-height = <30>;
+ qcom,mdss-dsc-slice-width = <960>;
+ qcom,mdss-dsc-slice-per-pkt = <1>;
+ qcom,mdss-dsc-bit-per-component = <8>;
+ qcom,mdss-dsc-bit-per-pixel = <8>;
+ qcom,mdss-dsc-block-prediction-enable;
+ };
+ };
+ };
+};
diff --git a/qcom/dsi-panel-arglass-seeya-dual-1080p-video.dtsi b/qcom/dsi-panel-arglass-seeya-dual-1080p-video.dtsi
index 68de1d6c..51b0437d 100644
--- a/qcom/dsi-panel-arglass-seeya-dual-1080p-video.dtsi
+++ b/qcom/dsi-panel-arglass-seeya-dual-1080p-video.dtsi
@@ -1,7 +1,7 @@
&mdss_mdp {
dsi_dual_arglass_seeya_video: qcom,mdss_dsi_arglass_seeya_video {
qcom,mdss-dsi-panel-name =
- "sy049wdm02 uoled video mode dsi seeya panel with DSC";
+ "sy049wdm02 uoled video mode dsi seeya 60Hz panel";
qcom,mdss-dsi-panel-type = "dsi_video_mode";
qcom,dsi-ctrl-num = <0 1>;
qcom,dsi-phy-num = <0 1>;
@@ -21,47 +21,39 @@
qcom,mdss-dsi-mdp-trigger = "none";
qcom,mdss-dsi-reset-sequence = <1 20>, <0 20>, <1 50>;
qcom,adjust-timer-wakeup-ms = <1>;
- qcom,mdss-dsi-panel-count = <2>;
+ qcom,mdss-dsi-panel-hdr-enabled;
qcom,mdss-dsi-panel-hdr-color-primaries = <14500 15500 32000
17000 15500 30000 8000 3000>;
+ qcom,mdss-dsi-panel-peak-brightness = <4200000>;
+ qcom,mdss-dsi-panel-blackness-level = <3230>;
qcom,mdss-dsi-display-timings {
timing@0 {
qcom,mdss-dsi-panel-width = <1920>;
qcom,mdss-dsi-panel-height = <1080>;
- qcom,mdss-dsi-h-front-porch = <32>;
- qcom,mdss-dsi-h-back-porch = <32>;
- qcom,mdss-dsi-h-pulse-width = <4>;
+ qcom,mdss-dsi-h-front-porch = <88>;
+ qcom,mdss-dsi-h-back-porch = <148>;
+ qcom,mdss-dsi-h-pulse-width = <44>;
qcom,mdss-dsi-h-sync-skew = <0>;
- qcom,mdss-dsi-v-back-porch = <14>;
- qcom,mdss-dsi-v-front-porch = <16>;
- qcom,mdss-dsi-v-pulse-width = <2>;
+ qcom,mdss-dsi-v-back-porch = <36>;
+ qcom,mdss-dsi-v-front-porch = <5>;
+ qcom,mdss-dsi-v-pulse-width = <5>;
qcom,mdss-dsi-h-left-border = <0>;
- qcom,mdss-dsi-panel-framerate = <90>;
+ qcom,mdss-dsi-panel-framerate = <60>;
qcom,mdss-dsi-on-command = [
- //cmd1
39 01 00 00 00 00 02 53 29
39 01 00 00 00 00 03 51 FF 01
- 39 01 00 00 00 00 02 03 01
- 39 01 00 00 00 00 07 80 01 E0 E0 0E 00 31
- 39 01 00 00 00 00 08 81 03 04 00 10 00 10 00
- 39 01 00 00 00 00 08 82 03 04 00 10 00 10 01
+ 39 01 00 00 00 00 02 03 00
+ 39 01 00 00 00 00 07 80 00 E0 E0 0E 00 31
+ 39 01 00 00 00 00 08 81 03 04 00 29 00 05 00
+ 39 01 00 00 00 00 08 82 03 04 00 29 00 05 01
39 01 00 00 00 00 02 35 00
39 01 00 00 00 00 02 26 20
- //pps
- 39 01 00 00 00 00 11 70 00 00 00 89 20 80 04 38
- 07 80 00 1e 03 C0 03 C0
- 39 01 00 00 00 00 02 65 10
- 39 01 00 00 00 00 11 70 02 00 00 00 00 20 03 B4
- 00 0D 00 0C 03 50 01 E9
- 39 01 00 00 00 00 02 65 20
- 39 01 00 00 00 00 0D 70 18 00 10 F0 03 0C 20 00
- 06 0B 0B 33
- // cmd2 p1
+ /* CMD2 P1 */
39 01 00 00 00 00 03 F0 AA 11
39 01 00 00 00 00 02 C0 00
- 39 01 00 00 00 00 09 C2 03 FF 03 FF 03 FF 03 FF
- // cmd2 p2
+ 39 01 00 00 00 00 0C C2 01 32 01 32 01 32 01 32 02 00 00
+ /* CMD2 P2 */
39 01 00 00 00 00 03 F0 AA 12
39 01 00 00 00 00 03 BF 37 A9
/* H mirror dsi1 */
@@ -69,7 +61,7 @@
39 01 00 00 00 00 02 65 2F
39 01 00 00 00 00 02 F2 01
39 01 00 00 00 00 02 36 02
- /* v mirror dsi0 */
+ /* V mirror dsi0 */
39 01 00 04 00 00 03 FF 5A 80
39 01 00 04 00 00 02 65 2F
39 01 00 04 00 00 02 F2 01
@@ -81,21 +73,20 @@
39 01 00 04 00 00 03 F0 AA 16
39 01 00 04 00 00 07 B6 12 53 64 31 42 56
39 01 00 04 00 00 03 B0 00 55
- /* CMDs PP0 */
+ /* CMD3 P0 */
39 01 00 00 00 00 03 FF 5A 80
39 01 00 00 00 00 02 65 2F
39 01 00 00 00 00 02 F2 01
- //cmd3 p1
+ /* CMD3 P1 */
39 01 00 00 00 00 03 FF 5A 81
39 01 00 00 00 00 02 65 05
39 01 00 00 00 00 02 F2 22
39 01 00 00 00 00 02 65 0A
39 01 00 00 00 00 02 F2 00
39 01 00 00 00 00 02 65 16
- 39 01 00 00 00 00 0F F9 01 5F 61 64 67 6A 6D 6F
- 75 7B 80 86 8B 91
- 05 01 00 00 14 00 01 11
- 05 01 00 00 64 00 01 29
+ 39 01 00 00 00 00 0F F9 01 5F 61 64 67 6A 6D 6F 75 7B 80 86 8B 91
+ 05 01 00 00 cb 00 02 11 00
+ 05 01 00 00 00 00 02 29 00
39 01 00 00 00 00 03 F0 AA 11
];
qcom,mdss-dsi-off-command = [05 01 00 00 0a 00
@@ -103,13 +94,6 @@
qcom,mdss-dsi-on-command-state = "dsi_lp_mode";
qcom,mdss-dsi-off-command-state = "dsi_hs_mode";
- qcom,compression-mode = "dsc";
- qcom,mdss-dsc-slice-height = <30>;
- qcom,mdss-dsc-slice-width = <960>;
- qcom,mdss-dsc-slice-per-pkt = <1>;
- qcom,mdss-dsc-bit-per-component = <8>;
- qcom,mdss-dsc-bit-per-pixel = <8>;
- qcom,mdss-dsc-block-prediction-enable;
};
};
};
diff --git a/qcom/khaje.dtsi b/qcom/khaje.dtsi
index 0d5c32bc..04796e4e 100644
--- a/qcom/khaje.dtsi
+++ b/qcom/khaje.dtsi
@@ -616,7 +616,7 @@
interrupts-extended = <&wakegic GIC_SPI 197
IRQ_TYPE_EDGE_RISING>;
reg = <0x45f01b8 0x1000>,
- <0xf011008 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/khajeg-atp-overlay.dts b/qcom/khajeg-atp-overlay.dts
new file mode 100644
index 00000000..79bac234
--- /dev/null
+++ b/qcom/khajeg-atp-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg ATP";
+ compatible = "qcom,khajeg-atp", "qcom,khajeg", "qcom,atp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-atp.dts b/qcom/khajeg-atp.dts
new file mode 100644
index 00000000..56aea017
--- /dev/null
+++ b/qcom/khajeg-atp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg ATP";
+ compatible = "qcom,khajeg-atp", "qcom,khajeg", "qcom,atp";
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeg-atp.dtsi b/qcom/khajeg-atp.dtsi
new file mode 100644
index 00000000..7d5f1b74
--- /dev/null
+++ b/qcom/khajeg-atp.dtsi
@@ -0,0 +1 @@
+#include "khaje-atp.dtsi"
diff --git a/qcom/khajeg-idp-nopmi-overlay.dts b/qcom/khajeg-idp-nopmi-overlay.dts
new file mode 100644
index 00000000..14b4eee8
--- /dev/null
+++ b/qcom/khajeg-idp-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP nopmi";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-nopmi.dts b/qcom/khajeg-idp-nopmi.dts
new file mode 100644
index 00000000..c5d8be83
--- /dev/null
+++ b/qcom/khajeg-idp-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP nopmi";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-nopmi.dtsi b/qcom/khajeg-idp-nopmi.dtsi
new file mode 100644
index 00000000..9e833356
--- /dev/null
+++ b/qcom/khajeg-idp-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-nopmi.dtsi"
diff --git a/qcom/khajeg-idp-overlay.dts b/qcom/khajeg-idp-overlay.dts
new file mode 100644
index 00000000..fb83a78a
--- /dev/null
+++ b/qcom/khajeg-idp-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-pm8010-overlay.dts b/qcom/khajeg-idp-pm8010-overlay.dts
new file mode 100644
index 00000000..e1ed40e6
--- /dev/null
+++ b/qcom/khajeg-idp-pm8010-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-idp.dtsi"
+#include "khajeg-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP with PM8010";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-pm8010.dts b/qcom/khajeg-idp-pm8010.dts
new file mode 100644
index 00000000..cf5a7a2b
--- /dev/null
+++ b/qcom/khajeg-idp-pm8010.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-idp.dtsi"
+#include "khajeg-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP with PM8010";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-pm8010.dtsi b/qcom/khajeg-idp-pm8010.dtsi
new file mode 100644
index 00000000..fb9ae398
--- /dev/null
+++ b/qcom/khajeg-idp-pm8010.dtsi
@@ -0,0 +1,5 @@
+#include "khaje-idp-pm8010.dtsi"
+
+&soc {
+};
+
diff --git a/qcom/khajeg-idp-usbc-overlay.dts b/qcom/khajeg-idp-usbc-overlay.dts
new file mode 100644
index 00000000..67d894e6
--- /dev/null
+++ b/qcom/khajeg-idp-usbc-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeg-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP USBC Audio";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-usbc.dts b/qcom/khajeg-idp-usbc.dts
new file mode 100644
index 00000000..554ca0ce
--- /dev/null
+++ b/qcom/khajeg-idp-usbc.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeg-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP USBC Audio";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp-usbc.dtsi b/qcom/khajeg-idp-usbc.dtsi
new file mode 100644
index 00000000..e860d883
--- /dev/null
+++ b/qcom/khajeg-idp-usbc.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-usbc.dtsi"
diff --git a/qcom/khajeg-idp.dts b/qcom/khajeg-idp.dts
new file mode 100644
index 00000000..b1e1d9d8
--- /dev/null
+++ b/qcom/khajeg-idp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDP";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-idp.dtsi b/qcom/khajeg-idp.dtsi
new file mode 100644
index 00000000..d57138fc
--- /dev/null
+++ b/qcom/khajeg-idp.dtsi
@@ -0,0 +1,65 @@
+#include "khaje-idp.dtsi"
+
+&soc {
+ qcom,cam-res-mgr {
+ status = "disabled";
+ };
+};
+
+&cam_cci0 {
+ qcom,actuator0 {
+ status = "disabled";
+ };
+
+ qcom,actuator1 {
+ status = "disabled";
+ };
+
+ qcom,eeprom0 {
+ status = "disabled";
+ };
+
+ qcom,eeprom1 {
+ status = "disabled";
+ };
+
+ qcom,eeprom2 {
+ status = "disabled";
+ };
+
+ qcom,eeprom3 {
+ status = "disabled";
+ };
+
+ qcom,camera-flash@0 {
+ status = "disabled";
+ };
+
+ qcom,camera-flash@1 {
+ status = "disabled";
+ };
+
+ qcom,camera-flash@2 {
+ status = "disabled";
+ };
+
+ /* Rear*/
+ qcom,cam-sensor0 {
+ status = "disabled";
+ };
+
+ /*Rear Aux*/
+ qcom,cam-sensor1 {
+ status = "disabled";
+ };
+
+ /*Front*/
+ qcom,cam-sensor2 {
+ status = "disabled";
+ };
+
+ /*Rear Aux2*/
+ qcom,cam-sensor3 {
+ status = "disabled";
+ };
+};
diff --git a/qcom/khajeg-idps-display-90hz-overlay.dts b/qcom/khajeg-idps-display-90hz-overlay.dts
new file mode 100644
index 00000000..0153dd55
--- /dev/null
+++ b/qcom/khajeg-idps-display-90hz-overlay.dts
@@ -0,0 +1,16 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeg-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDPS + 90Hz";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeg-idps-display-90hz.dts b/qcom/khajeg-idps-display-90hz.dts
new file mode 100644
index 00000000..690ac587
--- /dev/null
+++ b/qcom/khajeg-idps-display-90hz.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeg-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg IDPS + 90Hz";
+ compatible = "qcom,khajeg-idp", "qcom,khajeg", "qcom,idp";
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeg-idps-display-90hz.dtsi b/qcom/khajeg-idps-display-90hz.dtsi
new file mode 100644
index 00000000..42408d89
--- /dev/null
+++ b/qcom/khajeg-idps-display-90hz.dtsi
@@ -0,0 +1 @@
+#include "khaje-idps-display-90hz.dtsi"
diff --git a/qcom/khajeg-qrd-hvdcp3p5-overlay.dts b/qcom/khajeg-qrd-hvdcp3p5-overlay.dts
new file mode 100644
index 00000000..62558189
--- /dev/null
+++ b/qcom/khajeg-qrd-hvdcp3p5-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeg-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD HVDCP3P5";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-hvdcp3p5.dts b/qcom/khajeg-qrd-hvdcp3p5.dts
new file mode 100644
index 00000000..3f25af78
--- /dev/null
+++ b/qcom/khajeg-qrd-hvdcp3p5.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeg-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD HVDCP3P5";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-hvdcp3p5.dtsi b/qcom/khajeg-qrd-hvdcp3p5.dtsi
new file mode 100644
index 00000000..ff96a6ad
--- /dev/null
+++ b/qcom/khajeg-qrd-hvdcp3p5.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-hvdcp3p5.dtsi"
diff --git a/qcom/khajeg-qrd-nopmi-overlay.dts b/qcom/khajeg-qrd-nopmi-overlay.dts
new file mode 100644
index 00000000..e3b23c36
--- /dev/null
+++ b/qcom/khajeg-qrd-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD nopmi overlay";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-nopmi.dts b/qcom/khajeg-qrd-nopmi.dts
new file mode 100644
index 00000000..4641597e
--- /dev/null
+++ b/qcom/khajeg-qrd-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD nopmi";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-nopmi.dtsi b/qcom/khajeg-qrd-nopmi.dtsi
new file mode 100644
index 00000000..75508de0
--- /dev/null
+++ b/qcom/khajeg-qrd-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nopmi.dtsi"
diff --git a/qcom/khajeg-qrd-nowcd9375-overlay.dts b/qcom/khajeg-qrd-nowcd9375-overlay.dts
new file mode 100644
index 00000000..6bb173f7
--- /dev/null
+++ b/qcom/khajeg-qrd-nowcd9375-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeg-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD NOWCD9375";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-nowcd9375.dts b/qcom/khajeg-qrd-nowcd9375.dts
new file mode 100644
index 00000000..fe704305
--- /dev/null
+++ b/qcom/khajeg-qrd-nowcd9375.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeg-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD NOWCD9375";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd-nowcd9375.dtsi b/qcom/khajeg-qrd-nowcd9375.dtsi
new file mode 100644
index 00000000..9bfad214
--- /dev/null
+++ b/qcom/khajeg-qrd-nowcd9375.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nowcd9375.dtsi"
diff --git a/qcom/khajeg-qrd-overlay.dts b/qcom/khajeg-qrd-overlay.dts
new file mode 100644
index 00000000..9493ead3
--- /dev/null
+++ b/qcom/khajeg-qrd-overlay.dts
@@ -0,0 +1,18 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,msm-id = <585 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
+&bengal_snd {
+ qcom,wcd-datalane-mismatch = <1>;
+};
diff --git a/qcom/khajeg-qrd.dts b/qcom/khajeg-qrd.dts
new file mode 100644
index 00000000..a1a16c78
--- /dev/null
+++ b/qcom/khajeg-qrd.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+#include "khajeg-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg QRD";
+ compatible = "qcom,khajeg-qrd", "qcom,khajeg", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeg-qrd.dtsi b/qcom/khajeg-qrd.dtsi
new file mode 100644
index 00000000..fb7ae12b
--- /dev/null
+++ b/qcom/khajeg-qrd.dtsi
@@ -0,0 +1,5 @@
+#include "khaje-qrd.dtsi"
+
+&soc {
+};
+
diff --git a/qcom/khajeg.dts b/qcom/khajeg.dts
new file mode 100644
index 00000000..0a429c57
--- /dev/null
+++ b/qcom/khajeg.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "khajeg.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg SoC";
+ compatible = "qcom,khajeg";
+ qcom,board-id = <0 0>;
+};
diff --git a/qcom/khajeg.dtsi b/qcom/khajeg.dtsi
new file mode 100644
index 00000000..c4655e8b
--- /dev/null
+++ b/qcom/khajeg.dtsi
@@ -0,0 +1,123 @@
+/dts-v1/;
+
+#include "khaje.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeg SoC";
+ compatible = "qcom,khajeg";
+ qcom,msm-id = <585 0x10000>;
+};
+&soc {
+ qcom,cam-req-mgr {
+ status = "disabled";
+ };
+
+ cam_csiphy0: qcom,csiphy0 {
+ status = "disabled";
+ };
+
+ cam_csiphy1: qcom,csiphy1 {
+ status = "disabled";
+ };
+
+ cam_csiphy2: qcom,csiphy2 {
+ status = "disabled";
+ };
+
+ cam_cci0: qcom,cci0 {
+ status = "disabled";
+ };
+
+ qcom,cam_smmu {
+ status = "disabled";
+ };
+
+ qcom,cam-cpas@5c11000 {
+ status = "disabled";
+ };
+
+ qcom,cam-cdm-intf {
+ status = "disabled";
+ };
+
+ cam_cpas_cdm: qcom,cpas-cdm0@5c23000 {
+ status = "disabled";
+ };
+
+ cam_ope_cdm: qcom,ope-cdm0@5c42000 {
+ status = "disabled";
+ };
+
+ qcom,cam-isp {
+ status = "disabled";
+ };
+
+ cam_tfe_csid0: qcom,tfe_csid0@5c6e000 {
+ status = "disabled";
+ };
+
+ cam_tfe0: qcom,tfe0@5c6e000 {
+ status = "disabled";
+ };
+
+ cam_tfe_csid1: qcom,tfe_csid1@5c75000 {
+ status = "disabled";
+ };
+
+ cam_tfe1: qcom,tfe1@5c75000 {
+ status = "disabled";
+ };
+
+ cam_tfe_csid2: qcom,tfe_csid2@5c7c000 {
+ status = "disabled";
+ };
+
+ cam_tfe2: qcom,tfe2@5c7c000 {
+ status = "disabled";
+ };
+
+ cam_ppi0: qcom,ppi0@5cb3000 {
+ status = "disabled";
+ };
+
+ cam_ppi1: qcom,ppi1@5cb3200 {
+ status = "disabled";
+ };
+
+ cam_ppi2: qcom,ppi2@5cb3400 {
+ status = "disabled";
+ };
+
+ cam_tfe_tpg0: qcom,tpg0@5c66000 {
+ status = "disabled";
+ };
+
+ cam_tfe_tpg1: qcom,tpg0@5c68000 {
+ status = "disabled";
+ };
+
+ qcom,cam-ope {
+ status = "disabled";
+ };
+
+ ope: qcom,ope@0x5c42000 {
+ status = "disabled";
+ };
+
+ qcom,msm_gsi {
+ status = "disabled";
+ };
+
+ qcom,rmnet-ipa {
+ status = "disabled";
+ };
+
+ qcom,ipa_fws {
+ status = "disabled";
+ };
+
+ ipa_hw: qcom,ipa@0x5800000 {
+ status = "disabled";
+ };
+
+};
diff --git a/qcom/khajep-atp-overlay.dts b/qcom/khajep-atp-overlay.dts
new file mode 100644
index 00000000..56604264
--- /dev/null
+++ b/qcom/khajep-atp-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep ATP";
+ compatible = "qcom,khajep-atp", "qcom,khajep", "qcom,atp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-atp.dts b/qcom/khajep-atp.dts
new file mode 100644
index 00000000..5d029137
--- /dev/null
+++ b/qcom/khajep-atp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep ATP";
+ compatible = "qcom,khajep-atp", "qcom,khajep", "qcom,atp";
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-atp.dtsi b/qcom/khajep-atp.dtsi
new file mode 100644
index 00000000..7d5f1b74
--- /dev/null
+++ b/qcom/khajep-atp.dtsi
@@ -0,0 +1 @@
+#include "khaje-atp.dtsi"
diff --git a/qcom/khajep-idp-nopmi-overlay.dts b/qcom/khajep-idp-nopmi-overlay.dts
new file mode 100644
index 00000000..47edd58c
--- /dev/null
+++ b/qcom/khajep-idp-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP nopmi";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajep-idp-nopmi.dts b/qcom/khajep-idp-nopmi.dts
new file mode 100644
index 00000000..7387c676
--- /dev/null
+++ b/qcom/khajep-idp-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP nopmi";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajep-idp-nopmi.dtsi b/qcom/khajep-idp-nopmi.dtsi
new file mode 100644
index 00000000..9e833356
--- /dev/null
+++ b/qcom/khajep-idp-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-nopmi.dtsi"
diff --git a/qcom/khajep-idp-overlay.dts b/qcom/khajep-idp-overlay.dts
new file mode 100644
index 00000000..0b73c0bf
--- /dev/null
+++ b/qcom/khajep-idp-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khaje IDP";
+ compatible = "qcom,khaje-idp", "qcom,khaje", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-idp-pm8010-overlay.dts b/qcom/khajep-idp-pm8010-overlay.dts
new file mode 100644
index 00000000..02192695
--- /dev/null
+++ b/qcom/khajep-idp-pm8010-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-idp.dtsi"
+#include "khajep-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep IDP with PM8010";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-idp-pm8010.dts b/qcom/khajep-idp-pm8010.dts
new file mode 100644
index 00000000..03c1a32f
--- /dev/null
+++ b/qcom/khajep-idp-pm8010.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-idp.dtsi"
+#include "khajep-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP with PM8010";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x02D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-idp-pm8010.dtsi b/qcom/khajep-idp-pm8010.dtsi
new file mode 100644
index 00000000..f8689e7b
--- /dev/null
+++ b/qcom/khajep-idp-pm8010.dtsi
@@ -0,0 +1,4 @@
+#include "khaje-idp-pm8010.dtsi"
+&soc {
+};
+
diff --git a/qcom/khajep-idp-usbc-overlay.dts b/qcom/khajep-idp-usbc-overlay.dts
new file mode 100644
index 00000000..3119f889
--- /dev/null
+++ b/qcom/khajep-idp-usbc-overlay.dts
@@ -0,0 +1,16 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajep-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP USBC Audio";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-idp-usbc.dts b/qcom/khajep-idp-usbc.dts
new file mode 100644
index 00000000..34f3f36e
--- /dev/null
+++ b/qcom/khajep-idp-usbc.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajep-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP USBC Audio";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajep-idp-usbc.dtsi b/qcom/khajep-idp-usbc.dtsi
new file mode 100644
index 00000000..e860d883
--- /dev/null
+++ b/qcom/khajep-idp-usbc.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-usbc.dtsi"
diff --git a/qcom/khajep-idp.dts b/qcom/khajep-idp.dts
new file mode 100644
index 00000000..01abb1a0
--- /dev/null
+++ b/qcom/khajep-idp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDP";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-idp.dtsi b/qcom/khajep-idp.dtsi
new file mode 100644
index 00000000..48880476
--- /dev/null
+++ b/qcom/khajep-idp.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp.dtsi"
diff --git a/qcom/khajep-idps-display-90hz-overlay.dts b/qcom/khajep-idps-display-90hz-overlay.dts
new file mode 100644
index 00000000..783c90e3
--- /dev/null
+++ b/qcom/khajep-idps-display-90hz-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajep-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDPS + 90Hz";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-idps-display-90hz.dts b/qcom/khajep-idps-display-90hz.dts
new file mode 100644
index 00000000..f2be8365
--- /dev/null
+++ b/qcom/khajep-idps-display-90hz.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajep-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP IDPS + 90Hz";
+ compatible = "qcom,khajep-idp", "qcom,khajep", "qcom,idp";
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-idps-display-90hz.dtsi b/qcom/khajep-idps-display-90hz.dtsi
new file mode 100644
index 00000000..42408d89
--- /dev/null
+++ b/qcom/khajep-idps-display-90hz.dtsi
@@ -0,0 +1 @@
+#include "khaje-idps-display-90hz.dtsi"
diff --git a/qcom/khajep-qrd-hvdcp3p5-overlay.dts b/qcom/khajep-qrd-hvdcp3p5-overlay.dts
new file mode 100644
index 00000000..1e6f4ec4
--- /dev/null
+++ b/qcom/khajep-qrd-hvdcp3p5-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khaje-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep QRD HVDCP3P5";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-hvdcp3p5.dts b/qcom/khajep-qrd-hvdcp3p5.dts
new file mode 100644
index 00000000..f9a5c323
--- /dev/null
+++ b/qcom/khajep-qrd-hvdcp3p5.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajep-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP QRD HVDCP3P5";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-hvdcp3p5.dtsi b/qcom/khajep-qrd-hvdcp3p5.dtsi
new file mode 100644
index 00000000..ff96a6ad
--- /dev/null
+++ b/qcom/khajep-qrd-hvdcp3p5.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-hvdcp3p5.dtsi"
diff --git a/qcom/khajep-qrd-nopmi-overlay.dts b/qcom/khajep-qrd-nopmi-overlay.dts
new file mode 100644
index 00000000..c4cb513f
--- /dev/null
+++ b/qcom/khajep-qrd-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP QRD nopmi overlay";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-nopmi.dts b/qcom/khajep-qrd-nopmi.dts
new file mode 100644
index 00000000..3add8d38
--- /dev/null
+++ b/qcom/khajep-qrd-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP QRD nopmi";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-nopmi.dtsi b/qcom/khajep-qrd-nopmi.dtsi
new file mode 100644
index 00000000..75508de0
--- /dev/null
+++ b/qcom/khajep-qrd-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nopmi.dtsi"
diff --git a/qcom/khajep-qrd-nowcd9375-overlay.dts b/qcom/khajep-qrd-nowcd9375-overlay.dts
new file mode 100644
index 00000000..e1b9de5b
--- /dev/null
+++ b/qcom/khajep-qrd-nowcd9375-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajep-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep QRD NOWCD9375";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-nowcd9375.dts b/qcom/khajep-qrd-nowcd9375.dts
new file mode 100644
index 00000000..8b39ecd9
--- /dev/null
+++ b/qcom/khajep-qrd-nowcd9375.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajep-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEP QRD NOWCD9375";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajep-qrd-nowcd9375.dtsi b/qcom/khajep-qrd-nowcd9375.dtsi
new file mode 100644
index 00000000..9bfad214
--- /dev/null
+++ b/qcom/khajep-qrd-nowcd9375.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nowcd9375.dtsi"
diff --git a/qcom/khajep-qrd-overlay.dts b/qcom/khajep-qrd-overlay.dts
new file mode 100644
index 00000000..987096d3
--- /dev/null
+++ b/qcom/khajep-qrd-overlay.dts
@@ -0,0 +1,18 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep QRD";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,msm-id = <561 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
+&bengal_snd {
+ qcom,wcd-datalane-mismatch = <1>;
+};
diff --git a/qcom/khajep-qrd.dts b/qcom/khajep-qrd.dts
new file mode 100644
index 00000000..f9f0e2f3
--- /dev/null
+++ b/qcom/khajep-qrd.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+#include "khajep-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep QRD";
+ compatible = "qcom,khajep-qrd", "qcom,khajep", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+};
diff --git a/qcom/khajep-qrd.dtsi b/qcom/khajep-qrd.dtsi
new file mode 100644
index 00000000..1a1e5fe8
--- /dev/null
+++ b/qcom/khajep-qrd.dtsi
@@ -0,0 +1,3 @@
+#include "khaje-qrd.dtsi"
+&soc {
+};
diff --git a/qcom/khajep.dts b/qcom/khajep.dts
new file mode 100644
index 00000000..13ac02ce
--- /dev/null
+++ b/qcom/khajep.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "khajep.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep SoC";
+ compatible = "qcom,khajep";
+ qcom,board-id = <0 0>;
+};
diff --git a/qcom/khajep.dtsi b/qcom/khajep.dtsi
new file mode 100644
index 00000000..3bfff4d2
--- /dev/null
+++ b/qcom/khajep.dtsi
@@ -0,0 +1,22 @@
+/dts-v1/;
+
+#include "khaje.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajep SoC";
+ compatible = "qcom,khajep";
+ qcom,msm-id = <561 0x10000>;
+};
+
+
+&soc {
+
+ qcom,rmnet-ipa {
+ status = "disabled";
+ };
+
+};
+
+&ipa_hw {
+ status = "disabled";
+};
diff --git a/qcom/khajeq-atp-overlay.dts b/qcom/khajeq-atp-overlay.dts
new file mode 100644
index 00000000..7056bed6
--- /dev/null
+++ b/qcom/khajeq-atp-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq ATP";
+ compatible = "qcom,khajeq-atp", "qcom,khajeq", "qcom,atp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-atp.dts b/qcom/khajeq-atp.dts
new file mode 100644
index 00000000..df33dabe
--- /dev/null
+++ b/qcom/khajeq-atp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-atp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq ATP";
+ compatible = "qcom,khajeq-atp", "qcom,khajeq", "qcom,atp";
+ qcom,board-id = <33 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-atp.dtsi b/qcom/khajeq-atp.dtsi
new file mode 100644
index 00000000..7d5f1b74
--- /dev/null
+++ b/qcom/khajeq-atp.dtsi
@@ -0,0 +1 @@
+#include "khaje-atp.dtsi"
diff --git a/qcom/khajeq-idp-nopmi-overlay.dts b/qcom/khajeq-idp-nopmi-overlay.dts
new file mode 100644
index 00000000..91ac1b5e
--- /dev/null
+++ b/qcom/khajeq-idp-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP nopmi";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idp-nopmi.dts b/qcom/khajeq-idp-nopmi.dts
new file mode 100644
index 00000000..00cb9d71
--- /dev/null
+++ b/qcom/khajeq-idp-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-idp-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP nopmi";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idp-nopmi.dtsi b/qcom/khajeq-idp-nopmi.dtsi
new file mode 100644
index 00000000..9e833356
--- /dev/null
+++ b/qcom/khajeq-idp-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-nopmi.dtsi"
diff --git a/qcom/khajeq-idp-overlay.dts b/qcom/khajeq-idp-overlay.dts
new file mode 100644
index 00000000..09e7d734
--- /dev/null
+++ b/qcom/khajeq-idp-overlay.dts
@@ -0,0 +1,14 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khaje IDP";
+ compatible = "qcom,khaje-idp", "qcom,khaje", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idp-pm8010-overlay.dts b/qcom/khajeq-idp-pm8010-overlay.dts
new file mode 100644
index 00000000..3b6347bb
--- /dev/null
+++ b/qcom/khajeq-idp-pm8010-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-idp.dtsi"
+#include "khajeq-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq IDP with PM8010";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-idp-pm8010.dts b/qcom/khajeq-idp-pm8010.dts
new file mode 100644
index 00000000..dba0c2d6
--- /dev/null
+++ b/qcom/khajeq-idp-pm8010.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-idp.dtsi"
+#include "khajeq-idp-pm8010.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP with PM8010";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,board-id = <0x10222 0>;
+ qcom,pmic-id = <0x02D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-idp-pm8010.dtsi b/qcom/khajeq-idp-pm8010.dtsi
new file mode 100644
index 00000000..fb9ae398
--- /dev/null
+++ b/qcom/khajeq-idp-pm8010.dtsi
@@ -0,0 +1,5 @@
+#include "khaje-idp-pm8010.dtsi"
+
+&soc {
+};
+
diff --git a/qcom/khajeq-idp-usbc-overlay.dts b/qcom/khajeq-idp-usbc-overlay.dts
new file mode 100644
index 00000000..b7783882
--- /dev/null
+++ b/qcom/khajeq-idp-usbc-overlay.dts
@@ -0,0 +1,16 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeq-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP USBC Audio";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-idp-usbc.dts b/qcom/khajeq-idp-usbc.dts
new file mode 100644
index 00000000..1c7a1227
--- /dev/null
+++ b/qcom/khajeq-idp-usbc.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeq-idp-usbc.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP USBC Audio";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x1010022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
diff --git a/qcom/khajeq-idp-usbc.dtsi b/qcom/khajeq-idp-usbc.dtsi
new file mode 100644
index 00000000..e860d883
--- /dev/null
+++ b/qcom/khajeq-idp-usbc.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp-usbc.dtsi"
diff --git a/qcom/khajeq-idp.dts b/qcom/khajeq-idp.dts
new file mode 100644
index 00000000..7215638b
--- /dev/null
+++ b/qcom/khajeq-idp.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDP";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,board-id = <0x10022 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idp.dtsi b/qcom/khajeq-idp.dtsi
new file mode 100644
index 00000000..48880476
--- /dev/null
+++ b/qcom/khajeq-idp.dtsi
@@ -0,0 +1 @@
+#include "khaje-idp.dtsi"
diff --git a/qcom/khajeq-idps-display-90hz-overlay.dts b/qcom/khajeq-idps-display-90hz-overlay.dts
new file mode 100644
index 00000000..91ae7a0f
--- /dev/null
+++ b/qcom/khajeq-idps-display-90hz-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeq-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDPS + 90Hz";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idps-display-90hz.dts b/qcom/khajeq-idps-display-90hz.dts
new file mode 100644
index 00000000..033018bd
--- /dev/null
+++ b/qcom/khajeq-idps-display-90hz.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-idp.dtsi"
+#include "khaje-idp-pm7250b.dtsi"
+#include "khajeq-idps-display-90hz.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ IDPS + 90Hz";
+ compatible = "qcom,khajeq-idp", "qcom,khajeq", "qcom,idp";
+ qcom,board-id = <0x10122 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-idps-display-90hz.dtsi b/qcom/khajeq-idps-display-90hz.dtsi
new file mode 100644
index 00000000..42408d89
--- /dev/null
+++ b/qcom/khajeq-idps-display-90hz.dtsi
@@ -0,0 +1 @@
+#include "khaje-idps-display-90hz.dtsi"
diff --git a/qcom/khajeq-qrd-hvdcp3p5-overlay.dts b/qcom/khajeq-qrd-hvdcp3p5-overlay.dts
new file mode 100644
index 00000000..99af2d24
--- /dev/null
+++ b/qcom/khajeq-qrd-hvdcp3p5-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeq-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq QRD HVDCP3P5";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-hvdcp3p5.dts b/qcom/khajeq-qrd-hvdcp3p5.dts
new file mode 100644
index 00000000..8071c9f4
--- /dev/null
+++ b/qcom/khajeq-qrd-hvdcp3p5.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeq-qrd-hvdcp3p5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ QRD HVDCP3P5";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,board-id = <0x1010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-hvdcp3p5.dtsi b/qcom/khajeq-qrd-hvdcp3p5.dtsi
new file mode 100644
index 00000000..ff96a6ad
--- /dev/null
+++ b/qcom/khajeq-qrd-hvdcp3p5.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-hvdcp3p5.dtsi"
diff --git a/qcom/khajeq-qrd-nopmi-overlay.dts b/qcom/khajeq-qrd-nopmi-overlay.dts
new file mode 100644
index 00000000..6249ecc9
--- /dev/null
+++ b/qcom/khajeq-qrd-nopmi-overlay.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ QRD nopmi overlay";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-nopmi.dts b/qcom/khajeq-qrd-nopmi.dts
new file mode 100644
index 00000000..384cd0f8
--- /dev/null
+++ b/qcom/khajeq-qrd-nopmi.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-qrd-nopmi.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ QRD nopmi";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x0 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-nopmi.dtsi b/qcom/khajeq-qrd-nopmi.dtsi
new file mode 100644
index 00000000..75508de0
--- /dev/null
+++ b/qcom/khajeq-qrd-nopmi.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nopmi.dtsi"
diff --git a/qcom/khajeq-qrd-nowcd9375-overlay.dts b/qcom/khajeq-qrd-nowcd9375-overlay.dts
new file mode 100644
index 00000000..4482767d
--- /dev/null
+++ b/qcom/khajeq-qrd-nowcd9375-overlay.dts
@@ -0,0 +1,15 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeq-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq QRD NOWCD9375";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-nowcd9375.dts b/qcom/khajeq-qrd-nowcd9375.dts
new file mode 100644
index 00000000..99a3085d
--- /dev/null
+++ b/qcom/khajeq-qrd-nowcd9375.dts
@@ -0,0 +1,13 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+#include "khajeq-qrd-nowcd9375.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KHAJEQ QRD NOWCD9375";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,board-id = <0x2010B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
diff --git a/qcom/khajeq-qrd-nowcd9375.dtsi b/qcom/khajeq-qrd-nowcd9375.dtsi
new file mode 100644
index 00000000..9bfad214
--- /dev/null
+++ b/qcom/khajeq-qrd-nowcd9375.dtsi
@@ -0,0 +1 @@
+#include "khaje-qrd-nowcd9375.dtsi"
diff --git a/qcom/khajeq-qrd-overlay.dts b/qcom/khajeq-qrd-overlay.dts
new file mode 100644
index 00000000..55031250
--- /dev/null
+++ b/qcom/khajeq-qrd-overlay.dts
@@ -0,0 +1,18 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq QRD";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,msm-id = <562 0x10000>;
+ qcom,board-id = <0x1000B 0>;
+ qcom,pmic-id = <0x2D 0x2E 0x0 0x0>;
+};
+
+&bengal_snd {
+ qcom,wcd-datalane-mismatch = <1>;
+};
diff --git a/qcom/khajeq-qrd.dts b/qcom/khajeq-qrd.dts
new file mode 100644
index 00000000..bf6ab4b6
--- /dev/null
+++ b/qcom/khajeq-qrd.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+#include "khajeq-qrd.dtsi"
+#include "khaje-qrd-pm7250b.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq QRD";
+ compatible = "qcom,khajeq-qrd", "qcom,khajeq", "qcom,qrd";
+ qcom,board-id = <0x1000B 0>;
+};
diff --git a/qcom/khajeq-qrd.dtsi b/qcom/khajeq-qrd.dtsi
new file mode 100644
index 00000000..576d09b9
--- /dev/null
+++ b/qcom/khajeq-qrd.dtsi
@@ -0,0 +1,5 @@
+#include "khaje-qrd.dtsi"
+&soc {
+};
+
+
diff --git a/qcom/khajeq.dts b/qcom/khajeq.dts
new file mode 100644
index 00000000..2871ed5d
--- /dev/null
+++ b/qcom/khajeq.dts
@@ -0,0 +1,9 @@
+/dts-v1/;
+
+#include "khajeq.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq SoC";
+ compatible = "qcom,khajeq";
+ qcom,board-id = <0 0>;
+};
diff --git a/qcom/khajeq.dtsi b/qcom/khajeq.dtsi
new file mode 100644
index 00000000..3f54dec5
--- /dev/null
+++ b/qcom/khajeq.dtsi
@@ -0,0 +1,64 @@
+/dts-v1/;
+
+#include "khaje.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Khajeq SoC";
+ compatible = "qcom,khajeq";
+ qcom,msm-id = <562 0x10000>;
+
+ cpumap {
+ cluster1 {
+ status = "disabled";
+ };
+ };
+
+ /delete-node/ chosen;
+ chosen {
+ bootargs = "rcupdate.rcu_expedited=1 rcu_nocbs=0-3 kpti=off nr_cpus=4";
+ };
+};
+
+&CPU4 {
+ status = "disabled";
+};
+
+&CPU5 {
+ status = "disabled";
+};
+
+&CPU6 {
+ status = "disabled";
+};
+
+&CPU7 {
+ status = "disabled";
+};
+
+&soc {
+ /delete-node/ l2cache_pmu;
+ l2cache_pmu {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "qcom,l2cache-pmu";
+ ranges;
+
+ cluster0@f111000 {
+ cluster-id = <0>;
+ interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
+ reg = <0xf111000 0x1000>;
+ };
+
+ };
+
+ /delete-node/ qcom,chd_gold;
+
+ qcom,rmnet-ipa {
+ status = "disabled";
+ };
+
+};
+
+&ipa_hw {
+ status = "disabled";
+};
diff --git a/qcom/kona-7230-iot-cpu.dtsi b/qcom/kona-7230-iot-cpu.dtsi
new file mode 100644
index 00000000..2ba75e85
--- /dev/null
+++ b/qcom/kona-7230-iot-cpu.dtsi
@@ -0,0 +1,394 @@
+/ {
+ /delete-node/ cpus;
+
+ cpus {
+ #address-cells = <2>;
+ #size-cells = <0>;
+
+ CPU0: cpu@0 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x0>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_0>;
+ qcom,freq-domain = <&cpufreq_hw 0 4>;
+ capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <100>;
+ #cooling-cells = <2>;
+ L2_0: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+
+ L3_0: l3-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <3>;
+ };
+ };
+
+ L1_I_0: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_0: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ CPU1: cpu@100 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x100>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_1>;
+ qcom,freq-domain = <&cpufreq_hw 0 4>;
+ capacity-dmips-mhz = <1024>;
+ dynamic-power-coefficient = <100>;
+ L2_1: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+ };
+
+ L1_I_100: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_100: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ CPU2: cpu@400 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x400>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_4>;
+ qcom,freq-domain = <&cpufreq_hw 1 4>;
+ capacity-dmips-mhz = <1894>;
+ dynamic-power-coefficient = <514>;
+ #cooling-cells = <2>;
+ L2_4: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+ };
+
+ L1_I_400: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_400: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ CPU3: cpu@500 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x500>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_5>;
+ qcom,freq-domain = <&cpufreq_hw 1 4>;
+ capacity-dmips-mhz = <1894>;
+ dynamic-power-coefficient = <514>;
+ L2_5: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+ };
+
+ L1_I_500: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_500: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ CPU4: cpu@600 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x600>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_6>;
+ qcom,freq-domain = <&cpufreq_hw 1 4>;
+ capacity-dmips-mhz = <1894>;
+ dynamic-power-coefficient = <514>;
+ L2_6: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+ };
+
+ L1_I_600: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_600: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ CPU5: cpu@700 {
+ device_type = "cpu";
+ compatible = "qcom,kryo";
+ reg = <0x0 0x700>;
+ enable-method = "psci";
+ cpu-release-addr = <0x0 0x90000000>;
+ next-level-cache = <&L2_7>;
+ qcom,freq-domain = <&cpufreq_hw 2 4>;
+ capacity-dmips-mhz = <1894>;
+ dynamic-power-coefficient = <598>;
+ #cooling-cells = <2>;
+ L2_7: l2-cache {
+ compatible = "arm,arch-cache";
+ cache-level = <2>;
+ next-level-cache = <&L3_0>;
+ };
+
+ L1_I_700: l1-icache {
+ compatible = "arm,arch-cache";
+ };
+
+ L1_D_700: l1-dcache {
+ compatible = "arm,arch-cache";
+ };
+ };
+
+ cpu-map {
+ cluster0 {
+ core0 {
+ cpu = <&CPU0>;
+ };
+
+ core1 {
+ cpu = <&CPU1>;
+ };
+ };
+
+ cluster1 {
+ core0 {
+ cpu = <&CPU2>;
+ };
+
+ core1 {
+ cpu = <&CPU3>;
+ };
+
+ core2 {
+ cpu = <&CPU4>;
+ };
+ };
+
+ cluster2 {
+ core0 {
+ cpu = <&CPU5>;
+ };
+ };
+ };
+ };
+
+};
+
+&soc {
+ /delete-node/ dsu_pmu@0;
+ /delete-node/ jtagmm@7240000;
+ /delete-node/ jtagmm@7340000;
+ /delete-node/ cti@7220000;
+ /delete-node/ cti@7320000;
+ /delete-node/ etm@7240000;
+ /delete-node/ etm@7340000;
+
+ dsu_pmu@0 {
+ compatible = "arm,dsu-pmu";
+ interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>;
+ cpus = <&CPU0>, <&CPU1>,
+ <&CPU2>, <&CPU3>, <&CPU4>, <&CPU5>;
+ };
+
+ qcom,lpm-levels {
+ qcom,pm-cluster@0 {
+ qcom,pm-cpu@0 {
+ /delete-property/ qcom,cpu;
+ qcom,cpu = <&CPU0 &CPU1>;
+ };
+
+ qcom,pm-cpu@1 {
+ /delete-property/ qcom,cpu;
+ qcom,cpu = <&CPU2 &CPU3 &CPU4 &CPU5>;
+
+ };
+ };
+ };
+
+};
+
+&funnel_apss {
+ ports {
+ /delete-node/ port@3;
+ /delete-node/ port@4;
+ };
+};
+
+&cti_cpu4 {
+ /delete-property/ cpu;
+ cpu = <&CPU2>;
+};
+
+&cti_cpu5 {
+ /delete-property/ cpu;
+ cpu = <&CPU3>;
+};
+
+&cti_cpu6 {
+ /delete-property/ cpu;
+ cpu = <&CPU4>;
+};
+
+&cti_cpu7 {
+ /delete-property/ cpu;
+ cpu = <&CPU5>;
+};
+
+&etm4 {
+ /delete-property/ cpu;
+ cpu = <&CPU2>;
+};
+
+&etm5 {
+ /delete-property/ cpu;
+ cpu = <&CPU3>;
+};
+
+&etm6 {
+ /delete-property/ cpu;
+ cpu = <&CPU4>;
+};
+
+&etm7 {
+ /delete-property/ cpu;
+ cpu = <&CPU5>;
+};
+
+&jtag_mm4 {
+ /delete-property/ qcom,coresight-jtagmm-cpu;
+ qcom,coresight-jtagmm-cpu = <&CPU2>;
+};
+
+&jtag_mm5 {
+ /delete-property/ qcom,coresight-jtagmm-cpu;
+ qcom,coresight-jtagmm-cpu = <&CPU3>;
+};
+
+&jtag_mm6 {
+ /delete-property/ qcom,coresight-jtagmm-cpu;
+ qcom,coresight-jtagmm-cpu = <&CPU4>;
+};
+
+&jtag_mm7 {
+ /delete-property/ qcom,coresight-jtagmm-cpu;
+ qcom,coresight-jtagmm-cpu = <&CPU5>;
+};
+
+&cpu0_memlat_cpugrp {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU0 &CPU1>;
+
+ qcom,cpu0-llcc-ddr-latmon {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU0 &CPU1>;
+ };
+};
+
+&cpu4_memlat_cpugrp {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU2 &CPU3 &CPU4 &CPU5>;
+ qcom,cpu4-cpu-l3-latmon {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU2 &CPU3 &CPU4>;
+ };
+
+ qcom,cpu7-cpu-l3-latmon {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU5>;
+ };
+
+ qcom,cpu4-llcc-ddr-latmon {
+ /delete-property/ qcom,cpulist;
+ qcom,cpulist = <&CPU2 &CPU3 &CPU4 &CPU5>;
+ };
+};
+
+&cpufreq_hw {
+ /delete-node/ qcom,cpu-isolation;
+ qcom,cpu-isolation {
+ compatible = "qcom,cpu-isolate";
+ cpu0_isolate: cpu0-isolate {
+ qcom,cpu = <&CPU0>;
+ #cooling-cells = <2>;
+ };
+
+ cpu1_isolate: cpu1-isolate {
+ qcom,cpu = <&CPU1>;
+ #cooling-cells = <2>;
+ };
+
+ cpu4_isolate: cpu4-isolate {
+ qcom,cpu = <&CPU2>;
+ #cooling-cells = <2>;
+ };
+
+ cpu5_isolate: cpu5-isolate {
+ qcom,cpu = <&CPU3>;
+ #cooling-cells = <2>;
+ };
+
+ cpu6_isolate: cpu6-isolate {
+ qcom,cpu = <&CPU4>;
+ #cooling-cells = <2>;
+ };
+
+ cpu7_isolate: cpu7-isolate {
+ qcom,cpu = <&CPU5>;
+ #cooling-cells = <2>;
+ };
+ };
+
+ /delete-node/ cpu7-notify;
+ cpu7_notify: cpu7-notify {
+ qcom,cooling-cpu = <&CPU5>;
+ #cooling-cells = <2>;
+ };
+};
+
+&thermal_zones {
+ /delete-node/ cpu-0-2-step;
+ /delete-node/ cpu-0-3-step;
+
+ pop-mem-step {
+ cooling-maps {
+ pop_cdev4 {
+ /delete-property/ cooling-device;
+ cooling-device =
+ <&CPU2 THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>;
+ };
+
+ pop_cdev7 {
+ /delete-property/ cooling-device;
+ cooling-device =
+ <&CPU5 THERMAL_NO_LIMIT
+ THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+};
+
diff --git a/qcom/kona-7230-iot-rb5.dts b/qcom/kona-7230-iot-rb5.dts
new file mode 100644
index 00000000..807dbe48
--- /dev/null
+++ b/qcom/kona-7230-iot-rb5.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "kona-7230-iot-v2.1.dtsi"
+#include "kona-7230-iot-rb5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. kona-7230 IOT RB5";
+ compatible = "qcom,kona-iot", "qcom,kona", "qcom,iot";
+ qcom,board-id = <11 3>;
+};
diff --git a/qcom/kona-7230-iot-rb5.dtsi b/qcom/kona-7230-iot-rb5.dtsi
new file mode 100644
index 00000000..2244bea1
--- /dev/null
+++ b/qcom/kona-7230-iot-rb5.dtsi
@@ -0,0 +1,30 @@
+#include "kona-v2.1-iot-rb5.dtsi"
+
+
+&sde_dsi {
+ status = "disabled";
+};
+
+&sde_dsi1 {
+ status = "disabled";
+};
+
+&mdss_dsi0_pll {
+ status = "disabled";
+};
+
+&mdss_dsi1_pll {
+ status = "disabled";
+};
+
+&sde_dp {
+ label = "primary";
+ /delete-property/ qcom,max-hdisplay;
+ /delete-property/ qcom,max-vdisplay;
+ /delete-property/ qcom,max-pclk-frequency-khz;
+};
+
+&mdss_mdp {
+ /delete-property/ connectors;
+ connectors = <&sde_dp &sde_rscc>;
+};
diff --git a/qcom/kona-7230-iot-v2.1.dtsi b/qcom/kona-7230-iot-v2.1.dtsi
new file mode 100644
index 00000000..8f7fc605
--- /dev/null
+++ b/qcom/kona-7230-iot-v2.1.dtsi
@@ -0,0 +1,8 @@
+#include "kona-iot-v2.1.dtsi"
+#include "kona-7230-iot-cpu.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Kona-7230-iot v2.1";
+ compatible = "qcom,kona-iot";
+ qcom,msm-id = <548 0x20001>;
+};
diff --git a/qcom/kona-7230m-iot-rb5.dts b/qcom/kona-7230m-iot-rb5.dts
new file mode 100644
index 00000000..3ec7a6e6
--- /dev/null
+++ b/qcom/kona-7230m-iot-rb5.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "kona-7230-iot-v2.1.dtsi"
+#include "kona-7230m-iot-rb5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. KONA-7230M IOT RB5";
+ compatible = "qcom,kona-iot", "qcom,kona", "qcom,iot";
+ qcom,board-id = <0x04000B 0x03>;
+};
diff --git a/qcom/kona-7230m-iot-rb5.dtsi b/qcom/kona-7230m-iot-rb5.dtsi
new file mode 100644
index 00000000..d1dfc51e
--- /dev/null
+++ b/qcom/kona-7230m-iot-rb5.dtsi
@@ -0,0 +1,2 @@
+#include "kona-v2.1-iot-rb5.dtsi"
+
diff --git a/qcom/kona-arglass.dtsi b/qcom/kona-arglass.dtsi
index f892b1ee..0298dc3d 100644
--- a/qcom/kona-arglass.dtsi
+++ b/qcom/kona-arglass.dtsi
@@ -577,6 +577,19 @@
status = "ok";
};
+&dsi_dual_arglass_seeya_90hz_video {
+ qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
+ qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
+ qcom,mdss-dsi-bl-ctrl-dcs-subtype = <0xc2>;
+ qcom,mdss-dsi-bl-min-level = <1>;
+ qcom,mdss-dsi-bl-max-level = <1023>;
+ qcom,mdss-brightness-max-level = <1023>;
+ qcom,platform-reset-gpio = <&tlmm 75 0>;
+ qcom,platform-bklight-en-gpio = <&tlmm 46 0>;
+ qcom,5v-boost-gpio = <&tlmm 61 0>;
+ /delete-property/ qcom,platform-en-gpio;
+};
+
&dsi_dual_arglass_seeya_video {
qcom,panel-supply-entries = <&dsi_panel_pwr_supply>;
qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
@@ -670,6 +683,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150b_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -684,6 +698,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_XO_THERM_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -698,6 +713,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -712,6 +728,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -726,6 +743,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -740,12 +758,19 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
+
+ active-config1 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
};
};
@@ -754,6 +779,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
diff --git a/qcom/kona-cdp-lcd-tron.dts b/qcom/kona-cdp-lcd-tron.dts
index b367423c..0031089a 100644
--- a/qcom/kona-cdp-lcd-tron.dts
+++ b/qcom/kona-cdp-lcd-tron.dts
@@ -9,6 +9,10 @@
qcom,board-id = <0x01020001 0>;
};
+&qupv3_se1_i2c {
+ status = "disabled";
+};
+
&mdm0 {
status = "disabled";
};
diff --git a/qcom/kona-cvp.dtsi b/qcom/kona-cvp.dtsi
index 460cd4ac..ab74d02f 100644
--- a/qcom/kona-cvp.dtsi
+++ b/qcom/kona-cvp.dtsi
@@ -61,6 +61,7 @@
<&apps_smmu 0x2120 0x400>;
buffer-types = <0xfff>;
qcom,iommu-dma-addr-pool = <0x4b000000 0x90000000>;
+ qcom,iommu-faults = "non-fatal", "stall-disable";
};
@@ -72,6 +73,7 @@
buffer-types = <0x741>;
qcom,iommu-dma-addr-pool = <0x01000000 0x25800000>;
qcom,iommu-vmid = <0xB>;
+ qcom,iommu-faults = "non-fatal", "stall-disable";
};
cvp_secure_pixel_cb {
@@ -82,6 +84,7 @@
buffer-types = <0x106>;
qcom,iommu-dma-addr-pool = <0x26800000 0x24800000>;
qcom,iommu-vmid = <0xA>;
+ qcom,iommu-faults = "non-fatal", "stall-disable";
};
/* Memory Heaps */
diff --git a/qcom/kona-iot-v2.1.dtsi b/qcom/kona-iot-v2.1.dtsi
new file mode 100644
index 00000000..56627348
--- /dev/null
+++ b/qcom/kona-iot-v2.1.dtsi
@@ -0,0 +1,27 @@
+ #include "kona-v2.1.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. kona-iot v2.1";
+ compatible = "qcom,kona-iot";
+ qcom,msm-id = <481 0x20001>;
+};
+
+&soc {
+ msm_vidc: qcom,vidc@aa00000 {
+ compatible = "qcom,msm-vidc", "qcom,qcs8250-vidc";
+ };
+};
+
+&mdss_dsi0_pll {
+ /delete-property/ qcom,dsi-pll-ssc-en;
+ /delete-property/ qcom,dsi-pll-ssc-mode;
+};
+
+&mdss_dsi1_pll {
+ /delete-property/ qcom,dsi-pll-ssc-en;
+ /delete-property/ qcom,dsi-pll-ssc-mode;
+};
+
+&pcie2 {
+ qcom,boot-option = <0x0>;
+};
diff --git a/qcom/kona-pinctrl.dtsi b/qcom/kona-pinctrl.dtsi
index 51c240c3..aabae01e 100644
--- a/qcom/kona-pinctrl.dtsi
+++ b/qcom/kona-pinctrl.dtsi
@@ -45,6 +45,7 @@
<83 0 &pdc 97 0>,
<84 0 &pdc 98 0>,
<86 0 &pdc 99 0>,
+ <87 0 &pdc 100 0>,
<88 0 &pdc 101 0>,
<89 0 &pdc 102 0>,
<92 0 &pdc 103 0>,
diff --git a/qcom/kona-sde-display.dtsi b/qcom/kona-sde-display.dtsi
index 71ad4236..57f0a9bb 100644
--- a/qcom/kona-sde-display.dtsi
+++ b/qcom/kona-sde-display.dtsi
@@ -22,8 +22,9 @@
#include "dsi-panel-sim-sec-hd-cmd.dtsi"
#include "dsi-panel-xrsmrtvwr-jdi-dual-video.dtsi"
#include "dsi-panel-r66451-dsc-fhd-plus-144hz-cmd.dtsi"
-#include "dsi-panel-arglass-seeya-dual-1080p-video.dtsi"
#include "dsi-panel-nt36672e-fhd-plus-60hz-video.dtsi"
+#include "dsi-panel-arglass-seeya-dual-1080p-video.dtsi"
+#include "dsi-panel-arglass-seeya-dual-1080p-90hz-video.dtsi"
#include <dt-bindings/clock/mdss-7nm-pll-clk.h>
&tlmm {
@@ -312,6 +313,25 @@
&dsi_dual_arglass_seeya_video {
qcom,mdss-dsi-min-refresh-rate = <60>;
+ qcom,mdss-dsi-max-refresh-rate = <60>;
+ qcom,mdss-dsi-panel-status-command = [06 01 00 01 00 00 01 0a];
+ qcom,mdss-dsi-panel-status-command-state = "dsi_hs_mode";
+ qcom,mdss-dsi-panel-status-value = <0x9c>;
+ qcom,mdss-dsi-panel-on-check-value = <0x9c>;
+ qcom,mdss-dsi-panel-status-read-length = <1>;
+ qcom,dsi-select-clocks = "mux_byte_clk0", "mux_pixel_clk0";
+ qcom,mdss-dsi-display-timings {
+ timing@0 {
+ qcom,mdss-dsi-panel-phy-timings = [00 11 04 04 12 1E
+ 04 04 04 03 02 04 0F 09];
+ qcom,display-topology = <2 0 2>;
+ qcom,default-topology-index = <0>;
+ };
+ };
+};
+
+&dsi_dual_arglass_seeya_90hz_video {
+ qcom,mdss-dsi-min-refresh-rate = <90>;
qcom,mdss-dsi-max-refresh-rate = <90>;
qcom,mdss-dsi-panel-status-command = [06 01 00 01 00 00 01 0a];
qcom,mdss-dsi-panel-status-command-state = "dsi_hs_mode";
diff --git a/qcom/kona-sde.dtsi b/qcom/kona-sde.dtsi
index 5c0bcff6..cc4416d2 100644
--- a/qcom/kona-sde.dtsi
+++ b/qcom/kona-sde.dtsi
@@ -73,6 +73,7 @@
qcom,sde-wb-xin-id = <6>;
qcom,sde-wb-id = <2>;
qcom,sde-wb-clk-ctrl = <0x2bc 16>;
+ qcom,sde-wb-clk-status = <0x3bc 20>;
qcom,sde-intf-off = <0x6b000 0x6b800
0x6c000 0x6c800>;
@@ -407,6 +408,8 @@
qcom,widebus-enable;
qcom,dsc-feature-enable;
qcom,fec-feature-enable;
+ qcom,max-dp-dsc-blks = <2>;
+ qcom,max-dp-dsc-input-width-pixs = <2048>;
qcom,ctrl-supply-entries {
#address-cells = <1>;
diff --git a/qcom/kona-v2.1-iot-rb5.dtsi b/qcom/kona-v2.1-iot-rb5.dtsi
index 4b2aa986..611f32ec 100644
--- a/qcom/kona-v2.1-iot-rb5.dtsi
+++ b/qcom/kona-v2.1-iot-rb5.dtsi
@@ -393,6 +393,37 @@
};
#include "smb1390.dtsi"
+
+ fsa4480: fsa4480@43 {
+ status = "disabled";
+ };
+
+ redriver: redriver@1c {
+ compatible = "onnn,redriver";
+ reg = <0x1c>;
+ set-aux-enable;
+ extcon = <&pm8150b_pdphy>, <&pm8150b_pdphy>;
+ eq = /bits/ 8 <
+ /* Parameters for USB */
+ 0x4 0x4 0x4 0x4
+ /* Parameters for DP */
+ 0x6 0x4 0x4 0x6>;
+ flat-gain = /bits/ 8 <
+ /* Parameters for USB */
+ 0x3 0x1 0x1 0x3
+ /* Parameters for DP */
+ 0x2 0x1 0x1 0x2>;
+ output-comp = /bits/ 8 <
+ /* Parameters for USB */
+ 0x3 0x3 0x3 0x3
+ /* Parameters for DP */
+ 0x3 0x3 0x3 0x3>;
+ loss-match = /bits/ 8 <
+ /* Parameters for USB */
+ 0x1 0x3 0x3 0x1
+ /* Parameters for DP */
+ 0x3 0x3 0x3 0x3>;
+ };
};
&qupv3_se4_i2c {
@@ -425,3 +456,23 @@
status = "okay";
};
};
+
+&q6core {
+ kona_snd: sound {
+ /delete-property/ fsa4480-i2c-handle;
+ };
+};
+
+&sde_dp {
+ qcom,dp-aux-switch = <&redriver>;
+ qcom,aux-en-gpio = <&tlmm 69 0>;
+ qcom,aux-sel-gpio = <&tlmm 71 0>;
+
+ qcom,max-hdisplay = <1920>;
+ qcom,max-vdisplay = <1080>;
+ qcom,max-pclk-frequency-khz = <187500>;
+};
+
+&pcie2 {
+ qcom,boot-option = <0x0>;
+};
diff --git a/qcom/kona-xr.dtsi b/qcom/kona-xr.dtsi
index 00b68e18..fe215ab2 100644
--- a/qcom/kona-xr.dtsi
+++ b/qcom/kona-xr.dtsi
@@ -1060,6 +1060,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150b_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1074,6 +1075,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_XO_THERM_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1088,6 +1090,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1102,6 +1105,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1116,6 +1120,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1130,12 +1135,19 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
+
+ active-config1 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
};
};
@@ -1144,6 +1156,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
diff --git a/qcom/kona-xrfusion-ult.dtsi b/qcom/kona-xrfusion-ult.dtsi
index d9c69782..86938f00 100644
--- a/qcom/kona-xrfusion-ult.dtsi
+++ b/qcom/kona-xrfusion-ult.dtsi
@@ -887,6 +887,14 @@
};
&dsi_panel_pwr_supply_lab_ibb {
+ qcom,panel-supply-entry@1 {
+ qcom,supply-min-voltage = <5700000>;
+ };
+
+ qcom,panel-supply-entry@2 {
+ qcom,supply-min-voltage = <5700000>;
+ };
+
qcom,panel-supply-entry@3 {
reg = <1>;
qcom,supply-name = "avdd";
@@ -985,6 +993,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150b_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -999,6 +1008,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_XO_THERM_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1013,6 +1023,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1027,6 +1038,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1041,6 +1053,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -1055,12 +1068,19 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
+
+ active-config1 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
};
};
@@ -1069,6 +1089,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
diff --git a/qcom/kona-xrfusion.dtsi b/qcom/kona-xrfusion.dtsi
index 5d27eb9c..61f8c6db 100644
--- a/qcom/kona-xrfusion.dtsi
+++ b/qcom/kona-xrfusion.dtsi
@@ -924,6 +924,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150b_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -938,6 +939,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_XO_THERM_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -952,6 +954,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -966,6 +969,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -980,6 +984,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -994,12 +999,19 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
+
+ active-config1 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
};
};
@@ -1008,6 +1020,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
diff --git a/qcom/kona-xrsku4.dtsi b/qcom/kona-xrsku4.dtsi
index 5c54ac87..34248a1e 100644
--- a/qcom/kona-xrsku4.dtsi
+++ b/qcom/kona-xrsku4.dtsi
@@ -206,6 +206,172 @@
drive-strength = <2>; /* 2 MA */
};
};
+
+ nordic_gpio6_suspend: nordic_gpio6_suspend {
+ mux {
+ pins = "gpio71";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio71";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ /* active low due to hmd nordic */
+ nordic_gpio6_active: nordic_gpio6_active {
+ mux {
+ pins = "gpio71";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio71";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ output-low;
+ };
+ };
+
+ nordic_gpio10_active: nordic_gpio10_active {
+ mux {
+ pins = "gpio14";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio14";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ nordic_gpio10_suspend: nordic_gpio10_suspend {
+ mux {
+ pins = "gpio14";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio14";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ };
+ };
+
+ nordic_gpio11_active: nordic_gpio11_active {
+ mux {
+ pins = "gpio72";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio72";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ nordic_gpio11_suspend: nordic_gpio11_suspend {
+ mux {
+ pins = "gpio72";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio72";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ };
+ };
+
+ nordic_ctrl_suspend: nordic_ctrl_suspend {
+ mux {
+ pins = "gpio137";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio137";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ /* active low due to hmd nordic */
+ nordic_ctrl_active: nordic_ctrl_active {
+ mux {
+ pins = "gpio137";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio137";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ output-low;
+ };
+ };
+
+ nordic_1p8_en_active: nordic_1p8_en_active {
+ mux {
+ pins = "gpio50";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio50";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ nordic_1p8_en_suspend: nordic_1p8_en_suspend {
+ mux {
+ pins = "gpio50";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio50";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ };
+ };
+
+ nordic_int_active: nordic_int_active {
+ mux {
+ pins = "gpio64";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio64";
+ drive-strength = <8>;
+ bias-disable = <0>;
+ output-high;
+ };
+ };
+
+ nordic_int_suspend: nordic_int_suspend {
+ mux {
+ pins = "gpio64";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio64";
+ bias-pull-down; /* PULL DOWN */
+ drive-strength = <2>; /* 2 MA */
+ };
+ };
};
&vendor {
@@ -227,6 +393,30 @@
status = "ok";
};
+/* Nordic spi */
+&qupv3_se19_spi {
+ status = "ok";
+ nordic@0 {
+ compatible = "nordic,spicontroller";
+ reg = <0>;
+ spi-max-frequency = <8000000>;
+ pinctrl-names = "nordic_default", "nordic_sleep";
+ pinctrl-0 = <&nordic_gpio6_active &nordic_ctrl_active>;
+ pinctrl-1 = <&nordic_gpio6_suspend &nordic_ctrl_suspend>;
+
+ /*nordic,lfen-gpio = <&tlmm 37 0>;*/
+ nordic,v1p8en-gpio = <&tlmm 50 0>;
+ nordic,ledl-gpio = <&tlmm 137 0>;
+ nordic,ledr-gpio = <&tlmm 71 0>;
+
+ interrupt-parent = <&tlmm>;
+ interrupt-names = "nordicspi_irq";
+ nordic,irq-gpio = <&tlmm 64 0>;
+ nordic,irq_pin = <&tlmm 64 0x00>;
+ interrupts = <64 1>;
+ };
+};
+
&dai_mi2s2 {
status = "disabled";
qcom,msm-mi2s-tx-lines = <1>;
@@ -806,6 +996,14 @@
};
&dsi_panel_pwr_supply_lab_ibb {
+ qcom,panel-supply-entry@1 {
+ qcom,supply-min-voltage = <5700000>;
+ };
+
+ qcom,panel-supply-entry@2 {
+ qcom,supply-min-voltage = <5700000>;
+ };
+
qcom,panel-supply-entry@3 {
reg = <1>;
qcom,supply-name = "avdd";
@@ -917,6 +1115,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150b_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -931,6 +1130,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_XO_THERM_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -945,6 +1145,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -959,6 +1160,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -973,6 +1175,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM1_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
@@ -987,12 +1190,19 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
hysteresis = <1000>;
type = "passive";
};
+
+ active-config1 {
+ temperature = <125000>;
+ hysteresis = <1000>;
+ type = "passive";
+ };
};
};
@@ -1001,6 +1211,7 @@
polling-delay = <0>;
thermal-governor = "user_space";
thermal-sensors = <&pm8150l_adc_tm ADC_AMUX_THM3_PU2>;
+ wake-capable-sensor;
trips {
active-config0 {
temperature = <125000>;
diff --git a/qcom/kona.dtsi b/qcom/kona.dtsi
index 70acf6d4..479a0a53 100644
--- a/qcom/kona.dtsi
+++ b/qcom/kona.dtsi
@@ -2585,6 +2585,7 @@
reg = <0x177004 0x4>;
regulator-name = "ufs_phy_gdsc";
qcom,retain-regs;
+ qcom,gds-timeout = <500>;
proxy-supply = <&ufs_phy_gdsc>;
qcom,proxy-consumer-enable;
};
@@ -3021,6 +3022,29 @@
};
};
+ ufs_ice: ufsice@1d90000 {
+ compatible = "qcom,ice";
+ reg = <0x1d90000 0x8000>;
+ qcom,enable-ice-clk;
+ clock-names = "ufs_core_clk", "bus_clk",
+ "iface_clk", "ice_core_clk";
+ clocks = <&clock_gcc GCC_UFS_PHY_AXI_CLK>,
+ <&clock_gcc GCC_UFS_1X_CLKREF_EN>,
+ <&clock_gcc GCC_UFS_PHY_AHB_CLK>,
+ <&clock_gcc GCC_UFS_PHY_ICE_CORE_CLK>;
+ qcom,op-freq-hz = <0>, <0>, <0>, <300000000>;
+ vdd-hba-supply = <&ufs_phy_gdsc>;
+ qcom,msm-bus,name = "ufs_ice_noc";
+ qcom,msm-bus,num-cases = <2>;
+ qcom,msm-bus,num-paths = <1>;
+ qcom,msm-bus,vectors-KBps =
+ <1 650 0 0>, /* No vote */
+ <1 650 1000 0>; /* Max. bandwidth */
+ qcom,bus-vector-names = "MIN",
+ "MAX";
+ qcom,instance-type = "ufs";
+ };
+
ufsphy_mem: ufsphy_mem@1d87000 {
reg = <0x1d87000 0xe00>, <0x1d90000 0x8000>; /* PHY regs */
reg-names = "phy_mem", "ufs_ice";
diff --git a/qcom/qrb5165-iot-rb5.dts b/qcom/qrb5165-iot-rb5.dts
index 2acccf64..cb761fec 100644
--- a/qcom/qrb5165-iot-rb5.dts
+++ b/qcom/qrb5165-iot-rb5.dts
@@ -1,7 +1,7 @@
/dts-v1/;
#include "qrb5165.dtsi"
-#include "kona-v2.1-iot-rb5.dtsi"
+#include "qrb5165-iot-rb5.dtsi"
/ {
model = "Qualcomm Technologies, Inc. qrb5165 IOT RB5";
diff --git a/qcom/qrb5165-iot-rb5.dtsi b/qcom/qrb5165-iot-rb5.dtsi
new file mode 100644
index 00000000..d1dfc51e
--- /dev/null
+++ b/qcom/qrb5165-iot-rb5.dtsi
@@ -0,0 +1,2 @@
+#include "kona-v2.1-iot-rb5.dtsi"
+
diff --git a/qcom/qrb5165.dtsi b/qcom/qrb5165.dtsi
index e2089e05..54683bec 100644
--- a/qcom/qrb5165.dtsi
+++ b/qcom/qrb5165.dtsi
@@ -766,3 +766,7 @@
};
};
};
+
+&pcie2 {
+ qcom,boot-option = <0x0>;
+};
diff --git a/qcom/qrb5165m-iot-rb5.dts b/qcom/qrb5165m-iot-rb5.dts
new file mode 100644
index 00000000..07cf989b
--- /dev/null
+++ b/qcom/qrb5165m-iot-rb5.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "qrb5165.dtsi"
+#include "qrb5165m-iot-rb5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. QRB5165M IOT RB5";
+ compatible = "qcom,kona-iot", "qcom,kona", "qcom,iot";
+ qcom,board-id = <0x04000B 0x03>;
+};
diff --git a/qcom/qrb5165m-iot-rb5.dtsi b/qcom/qrb5165m-iot-rb5.dtsi
new file mode 100644
index 00000000..d1dfc51e
--- /dev/null
+++ b/qcom/qrb5165m-iot-rb5.dtsi
@@ -0,0 +1,2 @@
+#include "kona-v2.1-iot-rb5.dtsi"
+
diff --git a/qcom/qrb5165n-v2-iot-rb5.dts b/qcom/qrb5165n-v2-iot-rb5.dts
new file mode 100644
index 00000000..96e7c469
--- /dev/null
+++ b/qcom/qrb5165n-v2-iot-rb5.dts
@@ -0,0 +1,10 @@
+/dts-v1/;
+
+#include "qrb5165n.dtsi"
+#include "qrb5165n-v2-iot-rb5.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. QRB5165N v2 IOT RB5";
+ compatible = "qcom,kona-iot", "qcom,kona", "qcom,iot";
+ qcom,board-id = <0x05000B 0x03>;
+};
diff --git a/qcom/qrb5165n-v2-iot-rb5.dtsi b/qcom/qrb5165n-v2-iot-rb5.dtsi
new file mode 100644
index 00000000..d1dfc51e
--- /dev/null
+++ b/qcom/qrb5165n-v2-iot-rb5.dtsi
@@ -0,0 +1,2 @@
+#include "kona-v2.1-iot-rb5.dtsi"
+
diff --git a/qcom/scuba-iot-rb1-overlay.dts b/qcom/scuba-iot-rb1-overlay.dts
new file mode 100644
index 00000000..553f7c76
--- /dev/null
+++ b/qcom/scuba-iot-rb1-overlay.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "scuba-iot-rb1.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scuba IOT RB1";
+ compatible = "qcom,scuba-qrd", "qcom,scuba-iot", "qcom,qrd";
+ qcom,msm-id = <474 0x10000>;
+ qcom,board-id = <0x1000B 1>;
+};
diff --git a/qcom/scuba-iot-rb1.dtsi b/qcom/scuba-iot-rb1.dtsi
new file mode 100644
index 00000000..51b1b3fe
--- /dev/null
+++ b/qcom/scuba-iot-rb1.dtsi
@@ -0,0 +1,211 @@
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/iio/qcom,spmi-vadc.h>
+#include "scuba-thermal-overlay.dtsi"
+
+&soc {
+ scuba_batterydata: qcom,battery-data {
+ qcom,batt-id-range-pct = <15>;
+ #include "qg-batterydata-alium-3600mah.dtsi"
+ #include "qg-batterydata-atl466271_3300mAh.dtsi"
+ };
+
+ leds {
+ compatible = "gpio-leds";
+ gpio52 {
+ label = "user4-green";
+ gpios = <&tlmm 52 GPIO_ACTIVE_HIGH>;
+ default-state = "off";
+ };
+ };
+
+ gpio_keys {
+ compatible = "gpio-keys";
+ vol_up {
+ label = "volume_up";
+ gpios = <&tlmm 96 GPIO_ACTIVE_LOW>;
+ linux,input-type = <1>;
+ linux,can-disable;
+ debounce-interval = <15>;
+ gpio-key,wakeup;
+ };
+ };
+};
+
+&qupv3_se0_4uart {
+ status = "ok";
+};
+
+&pm2250_qg {
+ qcom,battery-data = <&scuba_batterydata>;
+ qcom,qg-iterm-ma = <150>;
+ qcom,hold-soc-while-full;
+ qcom,linearize-soc;
+ qcom,cl-feedback-on;
+ qcom,tcss-enable;
+ qcom,fvss-enable;
+ qcom,fvss-vbatt-mv = <3500>;
+ qcom,bass-enable;
+};
+
+&sdhc_1 {
+ vdd-supply = <&L20A>;
+ qcom,vdd-voltage-level = <2856000 2856000>;
+ qcom,vdd-current-level = <0 570000>;
+
+ vdd-io-supply = <&L14A>;
+ qcom,vdd-io-always-on;
+ qcom,vdd-io-lpm-sup;
+ qcom,vdd-io-voltage-level = <1800000 1800000>;
+ qcom,vdd-io-current-level = <0 325000>;
+
+ pinctrl-names = "active", "sleep";
+ pinctrl-0 = <&sdc1_clk_on &sdc1_cmd_on &sdc1_data_on
+ &sdc1_rclk_on>;
+ pinctrl-1 = <&sdc1_clk_off &sdc1_cmd_off &sdc1_data_off
+ &sdc1_rclk_off>;
+
+ status = "ok";
+};
+
+&sdhc_2 {
+ vdd-supply = <&L21A>;
+ qcom,vdd-voltage-level = <2960000 3300000>;
+ qcom,vdd-current-level = <0 800000>;
+
+ vdd-io-supply = <&L4A>;
+ qcom,vdd-io-voltage-level = <1800000 2960000>;
+ qcom,vdd-io-current-level = <0 22000>;
+
+ pinctrl-names = "active", "sleep";
+ pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
+ pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
+
+ cd-gpios = <&tlmm 88 GPIO_ACTIVE_LOW>;
+
+ status = "ok";
+};
+
+&pm2250_charger {
+ qcom,auto-recharge-soc = <98>;
+ qcom,suspend-input-on-debug-batt;
+ qcom,battery-data = <&scuba_batterydata>;
+ io-channels = <&pm2250_vadc ADC_USB_IN_V_16>,
+ <&pm2250_vadc ADC_CHG_TEMP>;
+ io-channel-names = "usb_in_voltage",
+ "chg_temp";
+ qcom,thermal-mitigation = <2000000 1500000 1000000 500000>;
+};
+
+&pm2250_pwm3 {
+ status = "ok";
+};
+
+&thermal_zones {
+ quiet-therm-usr {
+ polling-delay = <5000>;
+ };
+
+ quiet-therm-step {
+ polling-delay-passive = <2000>;
+ polling-delay = <5000>;
+ thermal-governor = "step_wise";
+ thermal-sensors = <&pm2250_adc_tm_iio ADC_AMUX_THM2_PU2>;
+ wake-capable-sensor;
+ trips {
+ quiet_cpu0_trip: quiet-cpu0-trip {
+ temperature = <40000>;
+ hysteresis = <0>;
+ type = "passive";
+ };
+
+ quiet_modem_trip0: quiet-modem-trip0 {
+ temperature = <40000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ quiet_modem_trip1: quiet-modem-trip1 {
+ temperature = <42000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ quiet_gpu_trip: quiet-gpu-trip {
+ temperature = <43000>;
+ hysteresis = <0>;
+ type = "passive";
+ };
+
+ quiet_modem_trip2: quiet-modem-trip2 {
+ temperature = <43000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+
+ quiet_modem_trip3: quiet-modem-trip3 {
+ temperature = <50000>;
+ hysteresis = <5000>;
+ type = "passive";
+ };
+ };
+
+ cooling-maps {
+ gpu-cdev {
+ trip = <&quiet_gpu_trip>;
+ cooling-device = <&msm_gpu THERMAL_NO_LIMIT
+ (THERMAL_MAX_LIMIT - 3)>;
+ };
+
+ cpu0-cdev {
+ trip = <&quiet_cpu0_trip>;
+ cooling-device = <&CPU0 THERMAL_NO_LIMIT
+ (THERMAL_MAX_LIMIT - 3)>;
+ };
+
+ modem-proc-cdev0 {
+ trip = <&quiet_modem_trip0>;
+ cooling-device = <&modem_proc 1 1>;
+ };
+
+ modem-proc-cdev1 {
+ trip = <&quiet_modem_trip3>;
+ cooling-device = <&modem_proc 3 3>;
+ };
+
+ modem-pa-cdev0 {
+ trip = <&quiet_modem_trip1>;
+ cooling-device = <&modem_pa 1 1>;
+ };
+
+ modem-pa-cdev1 {
+ trip = <&quiet_modem_trip2>;
+ cooling-device = <&modem_pa 2 2>;
+ };
+
+ modem-pa-cdev3 {
+ trip = <&quiet_modem_trip3>;
+ cooling-device = <&modem_pa 3 3>;
+ };
+ };
+ };
+};
+
+&qusb_phy0 {
+ extcon = <&pm2250_charger>;
+
+ qcom,qusb-phy-init-seq = <0xf8 0x80
+ 0xb3 0x84
+ 0x83 0x88
+ 0xc5 0x8c
+ 0x30 0x08
+ 0x79 0x0c
+ 0x21 0x10
+ 0x14 0x9c
+ 0x80 0x04
+ 0x9f 0x1c
+ 0x00 0x18>;
+};
+
+&usb0 {
+ extcon = <&qusb_phy0>, <&eud>;
+};
diff --git a/qcom/scuba-pinctrl.dtsi b/qcom/scuba-pinctrl.dtsi
index ee398146..42a71fb7 100644
--- a/qcom/scuba-pinctrl.dtsi
+++ b/qcom/scuba-pinctrl.dtsi
@@ -324,6 +324,75 @@
};
};
+ qupv3_se0_4uart_pins: qupv3_se0_4uart_pins {
+ qupv3_se0_default_ctsrtsrx:
+ qupv3_se0_default_ctsrtsrx {
+ mux {
+ pins = "gpio0", "gpio1", "gpio3";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio0", "gpio1", "gpio3";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ qupv3_se0_default_tx:
+ qupv3_se0_default_tx {
+ mux {
+ pins = "gpio2";
+ function = "gpio";
+ };
+
+ config {
+ pins = "gpio2";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+ };
+
+ qupv3_se0_ctsrx: qupv3_se0_ctsrx {
+ mux {
+ pins = "gpio0", "gpio3";
+ function = "qup0";
+ };
+
+ config {
+ pins = "gpio0", "gpio3";
+ drive-strength = <2>;
+ bias-disable;
+ };
+ };
+
+ qupv3_se0_rts: qupv3_se0_rts {
+ mux {
+ pins = "gpio1";
+ function = "qup0";
+ };
+
+ config {
+ pins = "gpio1";
+ drive-strength = <2>;
+ bias-pull-down;
+ };
+ };
+
+ qupv3_se0_tx: qupv3_se0_tx {
+ mux {
+ pins = "gpio2";
+ function = "qup0";
+ };
+
+ config {
+ pins = "gpio2";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+ };
+ };
+
qupv3_se1_i2c_pins: qupv3_se1_i2c_pins {
qupv3_se1_i2c_active: qupv3_se1_i2c_active {
mux {
diff --git a/qcom/scuba-qupv3.dtsi b/qcom/scuba-qupv3.dtsi
index 3c08b790..a12d1e17 100644
--- a/qcom/scuba-qupv3.dtsi
+++ b/qcom/scuba-qupv3.dtsi
@@ -108,6 +108,25 @@
status = "disabled";
};
+ /* 4-wire UART Instance for DIAG */
+ qupv3_se0_4uart: qcom,qup_uart@4a80000 {
+ compatible = "qcom,msm-geni-serial-hs";
+ reg = <0x4a80000 0x4000>;
+ reg-names = "se_phys";
+ interrupts = <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
+ clock-names = "se-clk", "m-ahb", "s-ahb";
+ clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
+ <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <&qupv3_se0_ctsrx>, <&qupv3_se0_rts>,
+ <&qupv3_se0_tx>;
+ pinctrl-1 = <&qupv3_se0_default_ctsrtsrx>,
+ <&qupv3_se0_default_tx>;
+ qcom,wrapper-core = <&qupv3_0>;
+ status = "disabled";
+ };
+
qupv3_se1_i2c: i2c@4a84000 {
compatible = "qcom,i2c-geni";
reg = <0x4a84000 0x4000>;
diff --git a/qcom/scubalite-iot-idp-2gb.dts b/qcom/scubalite-iot-idp-2gb.dts
new file mode 100644
index 00000000..0aa97486
--- /dev/null
+++ b/qcom/scubalite-iot-idp-2gb.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "scuba-iot-low-ram.dtsi"
+#include "scubalite-iot-idp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scuba IOT 2GB DDR SoC";
+ compatible = "qcom,scuba-iot";
+ qcom,msm-id = <473 0x10000>;
+ qcom,board-id = <34 0x3>;
+};
diff --git a/qcom/scubalite-iot-idp-overlay.dts b/qcom/scubalite-iot-idp-overlay.dts
new file mode 100644
index 00000000..2c817f67
--- /dev/null
+++ b/qcom/scubalite-iot-idp-overlay.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include "scubalite-iot-idp.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scuba LITE IOT IDP";
+ compatible = "qcom,scuba-idp", "qcom,scuba-iot", "qcom,idp";
+ qcom,msm-id = <473 0x10000>, <474 0x10000>;
+ qcom,board-id = <34 0x3>;
+};
diff --git a/qcom/scubalite-iot-idp.dtsi b/qcom/scubalite-iot-idp.dtsi
new file mode 100644
index 00000000..901d0d2c
--- /dev/null
+++ b/qcom/scubalite-iot-idp.dtsi
@@ -0,0 +1 @@
+#include "scuba-iot-idp.dtsi"
diff --git a/qcom/scubap-iot-2gb.dts b/qcom/scubap-iot-2gb.dts
new file mode 100644
index 00000000..7651d469
--- /dev/null
+++ b/qcom/scubap-iot-2gb.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "scuba-iot-low-ram.dtsi"
+#include "scuba-iot-qcs.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scubap IOT 2GB DDR SoC";
+ compatible = "qcom,scuba-iot";
+ qcom,msm-id = <474 0x10000>;
+ qcom,board-id = <0 0x400>;
+};
diff --git a/qcom/scubap-iot-rb1-2gb.dts b/qcom/scubap-iot-rb1-2gb.dts
new file mode 100644
index 00000000..fbcda25c
--- /dev/null
+++ b/qcom/scubap-iot-rb1-2gb.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "scuba-iot-low-ram.dtsi"
+#include "scuba-iot-qcs.dtsi"
+#include "scuba-iot-rb1.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scubap IOT RB1";
+ compatible = "qcom,scuba-qrd", "qcom,scuba-iot", "qcom,qrd";
+ qcom,msm-id = <474 0x10000>;
+ qcom,board-id = <0x1000B 1>;
+};
diff --git a/qcom/scubaplite-iot-idp-2gb.dts b/qcom/scubaplite-iot-idp-2gb.dts
new file mode 100644
index 00000000..37de8896
--- /dev/null
+++ b/qcom/scubaplite-iot-idp-2gb.dts
@@ -0,0 +1,12 @@
+/dts-v1/;
+
+#include "scuba-iot-low-ram.dtsi"
+#include "scubalite-iot-idp.dtsi"
+#include "scuba-iot-qcs.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. Scubap LITE IOT IDP 2GB DDR";
+ compatible = "qcom,scuba-idp", "qcom,scubap-iot", "qcom,idp";
+ qcom,msm-id = <474 0x10000>;
+ qcom,board-id = <34 0x3>;
+};
diff --git a/qcom/sdm660-pm660a.dts b/qcom/sdm660-pm660a.dts
new file mode 100644
index 00000000..650e6215
--- /dev/null
+++ b/qcom/sdm660-pm660a.dts
@@ -0,0 +1,11 @@
+/dts-v1/;
+
+#include "sdm660.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. SDM 660 PM660 + PM660A QRD";
+ compatible = "qcom,sdm660-qrd", "qcom,sdm660", "qcom,qrd";
+ qcom,pmic-id = <0x0001001b 0x0001011a 0x0 0x0>,
+ <0x0001001b 0x0002001a 0x0 0x0>,
+ <0x0001001b 0x0202001a 0x0 0x0>;
+};
diff --git a/qcom/sdm660-qrd-dsi-rm67195-amoled-overlay.dts b/qcom/sdm660-qrd-dsi-rm67195-amoled-overlay.dts
new file mode 100644
index 00000000..69e27357
--- /dev/null
+++ b/qcom/sdm660-qrd-dsi-rm67195-amoled-overlay.dts
@@ -0,0 +1,48 @@
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/clock/qcom,cpu-osm.h>
+#include <dt-bindings/clock/qcom,rpmcc.h>
+#include <dt-bindings/clock/qcom,mmcc-sdm660.h>
+#include <dt-bindings/regulator/qcom,rpm-smd-regulator.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+
+#include "sdm660-qrd.dtsi"
+#include "msm-pm660a.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. SDM 660 PM660 + PM660A QRD";
+ compatible = "qcom,sdm660-qrd", "qcom,sdm660", "qcom,qrd";
+ qcom,board-id = <0x0012000b 0>;
+};
+
+&pm660a_oledb {
+ status = "okay";
+ qcom,oledb-default-voltage-mv = <6400>;
+};
+
+&mdss_mdp {
+ qcom,mdss-pref-prim-intf = "dsi";
+};
+
+&mdss_dsi {
+ hw-config = "single_dsi";
+};
+
+&mdss_dsi0 {
+ qcom,dsi-pref-prim-pan = <&dsi_rm67195_amoled_fhd_cmd>;
+ pinctrl-names = "mdss_default", "mdss_sleep";
+ pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
+ pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
+ lab-supply = <&lab_regulator>;
+ ibb-supply = <&ibb_regulator>;
+ qcom,platform-reset-gpio = <&tlmm 53 0>;
+ qcom,platform-te-gpio = <&tlmm 59 0>;
+};
+
+&dsi_rm67195_amoled_fhd_cmd {
+ qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
+ qcom,mdss-dsi-bl-min-level = <1>;
+ qcom,mdss-dsi-bl-max-level = <255>;
+ qcom,panel-supply-entries = <&dsi_panel_pwr_supply_labibb_amoled>;
+};
diff --git a/qcom/sdm660-qrd-dsi-rm67195-amoled.dts b/qcom/sdm660-qrd-dsi-rm67195-amoled.dts
new file mode 100644
index 00000000..a5802116
--- /dev/null
+++ b/qcom/sdm660-qrd-dsi-rm67195-amoled.dts
@@ -0,0 +1,45 @@
+/dts-v1/;
+
+#include "sdm660.dtsi"
+#include "sdm660-qrd.dtsi"
+#include "msm-pm660a.dtsi"
+
+/ {
+ model = "Qualcomm Technologies, Inc. SDM 660 PM660 + PM660A QRD";
+ compatible = "qcom,sdm660-qrd", "qcom,sdm660", "qcom,qrd";
+ qcom,board-id = <0x0012000b 0>;
+ qcom,pmic-id = <0x0001001b 0x0001011a 0x0 0x0>,
+ <0x0001001b 0x0002001a 0x0 0x0>,
+ <0x0001001b 0x0202001a 0x0 0x0>;
+};
+
+&pm660a_oledb {
+ status = "okay";
+ qcom,oledb-default-voltage-mv = <6400>;
+};
+
+&mdss_mdp {
+ qcom,mdss-pref-prim-intf = "dsi";
+};
+
+&mdss_dsi {
+ hw-config = "single_dsi";
+};
+
+&mdss_dsi0 {
+ qcom,dsi-pref-prim-pan = <&dsi_rm67195_amoled_fhd_cmd>;
+ pinctrl-names = "mdss_default", "mdss_sleep";
+ pinctrl-0 = <&mdss_dsi_active &mdss_te_active>;
+ pinctrl-1 = <&mdss_dsi_suspend &mdss_te_suspend>;
+ lab-supply = <&lab_regulator>;
+ ibb-supply = <&ibb_regulator>;
+ qcom,platform-reset-gpio = <&tlmm 53 0>;
+ qcom,platform-te-gpio = <&tlmm 59 0>;
+};
+
+&dsi_rm67195_amoled_fhd_cmd {
+ qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";
+ qcom,mdss-dsi-bl-min-level = <1>;
+ qcom,mdss-dsi-bl-max-level = <255>;
+ qcom,panel-supply-entries = <&dsi_panel_pwr_supply_labibb_amoled>;
+};