diff options
author | JohnnLee <johnnlee@google.com> | 2022-10-27 14:17:05 +0800 |
---|---|---|
committer | Johnny Lee <johnnlee@google.com> | 2022-10-31 06:44:59 +0000 |
commit | 924ee949a66fa021ea9a19c4e6ae16429e7bf865 (patch) | |
tree | 0a2160ebb2c25128d55eac7b1adbb8d6bd317cc1 | |
parent | 30211b25c711982716dd2b486bc9b2afe3fe16da (diff) | |
parent | 8ca97fa26f809b39432209fb368c0230bc6e1fdf (diff) | |
download | devicetree-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>
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>; +}; |