// SPDX-License-Identifier: GPL-2.0 /* * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. */ #include "skeleton64.dtsi" #include #include #include #include #include #include "quin-vm-common.dtsi" / { model = "Qualcomm Technologies, Inc. SA8155 Virtual Machine"; qcom,msm-name = "SA8155 V2"; qcom,msm-id = <362 0x20000>; cpus { #address-cells = <2>; #size-cells = <0>; CPU0: cpu@0 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x0>; capacity-dmips-mhz = <1024>; }; CPU1: cpu@1 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x1>; capacity-dmips-mhz = <902>; }; CPU2: cpu@2 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x2>; capacity-dmips-mhz = <902>; }; CPU3: cpu@3 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x3>; capacity-dmips-mhz = <902>; }; CPU4: cpu@4 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x4>; capacity-dmips-mhz = <320>; }; CPU5: cpu@5 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x5>; capacity-dmips-mhz = <320>; }; CPU6: cpu@6 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x6>; capacity-dmips-mhz = <320>; }; CPU7: cpu@7 { device_type = "cpu"; compatible = "arm,armv8"; reg = <0x0 0x7>; capacity-dmips-mhz = <320>; }; cpu-map { cluster0 { core0 { cpu = <&CPU0>; }; }; cluster1 { core0 { cpu = <&CPU1>; }; core1 { cpu = <&CPU2>; }; core2 { cpu = <&CPU3>; }; }; cluster2 { core0 { cpu = <&CPU4>; }; core1 { cpu = <&CPU5>; }; core2 { cpu = <&CPU6>; }; core3 { cpu = <&CPU7>; }; }; }; }; aliases { pci-domain0 = &pcie0; /* PCIe0 domain */ sdhc2 = &sdhc_2; /* SDC2 SD card slot */ }; reserved_memory: reserved-memory { smem_region: smem { no-map; reg = <0x0 0x86000000 0x0 0x200000>; }; }; }; &soc { hsi2s: qcom,hsi2s { compatible = "qcom,sa8155-hsi2s", "qcom,hsi2s"; number-of-interfaces = <3>; reg = <0x172C0000 0x28000>, <0x17080000 0xE000>; reg-names = "lpa_if", "lpass_tcsr"; interrupts = ; number-of-rate-detectors = <2>; rate-detector-interfaces = <0 1>; iommus = <&apps_smmu 0x1B5C 0x1>, <&apps_smmu 0x1B5E 0x0>; qcom,smmu-s1-bypass; qcom,iova-mapping = <0x0 0xFFFFFFFF>; sdr0: qcom,hs0_i2s { compatible = "qcom,hsi2s-interface"; minor-number = <0>; pinctrl-names = "default", "sleep"; pinctrl-0 = <&hs1_i2s_mclk_active &hs1_i2s_sck_active &hs1_i2s_ws_active &hs1_i2s_data0_active &hs1_i2s_data1_active>; pinctrl-1 = <&hs1_i2s_mclk_sleep &hs1_i2s_sck_sleep &hs1_i2s_ws_sleep &hs1_i2s_data0_sleep &hs1_i2s_data1_sleep>; bit-clock-hz = <12288000>; data-buffer-ms = <10>; bit-depth = <32>; spkr-channel-count = <2>; mic-channel-count = <2>; pcm-rate = <2>; pcm-sync-src = <0>; aux-mode = <0>; rpcm-width = <1>; tpcm-width = <1>; enable-tdm = <1>; tdm-rate = <32>; tdm-rpcm-width = <16>; tdm-tpcm-width = <16>; tdm-sync-delay = <2>; tdm-inv-sync = <0>; pcm-lane-config = <1>; }; sdr1: qcom,hs1_i2s { compatible = "qcom,hsi2s-interface"; minor-number = <1>; pinctrl-names = "default", "sleep"; pinctrl-0 = <&hs2_i2s_mclk_active &hs2_i2s_sck_active &hs2_i2s_ws_active &hs2_i2s_data0_active &hs2_i2s_data1_active>; pinctrl-1 = <&hs2_i2s_mclk_sleep &hs2_i2s_sck_sleep &hs2_i2s_ws_sleep &hs2_i2s_data0_sleep &hs2_i2s_data1_sleep>; bit-clock-hz = <12288000>; data-buffer-ms = <10>; bit-depth = <32>; spkr-channel-count = <2>; mic-channel-count = <2>; pcm-rate = <2>; pcm-sync-src = <0>; aux-mode = <0>; rpcm-width = <1>; tpcm-width = <1>; enable-tdm = <1>; tdm-rate = <32>; tdm-rpcm-width = <16>; tdm-tpcm-width = <16>; tdm-sync-delay = <2>; tdm-inv-sync = <0>; pcm-lane-config = <1>; }; sdr2: qcom,hs2_i2s { compatible = "qcom,hsi2s-interface"; minor-number = <2>; pinctrl-names = "default", "sleep"; pinctrl-0 = <&hs3_i2s_mclk_active &hs3_i2s_sck_active &hs3_i2s_ws_active &hs3_i2s_data0_active &hs3_i2s_data1_active>; pinctrl-1 = <&hs3_i2s_mclk_sleep &hs3_i2s_sck_sleep &hs3_i2s_ws_sleep &hs3_i2s_data0_sleep &hs3_i2s_data1_sleep>; bit-clock-hz = <12288000>; data-buffer-ms = <10>; bit-depth = <32>; spkr-channel-count = <2>; mic-channel-count = <2>; pcm-rate = <2>; pcm-sync-src = <0>; aux-mode = <0>; rpcm-width = <1>; tpcm-width = <1>; enable-tdm = <1>; tdm-rate = <32>; tdm-rpcm-width = <16>; tdm-tpcm-width = <16>; tdm-sync-delay = <2>; tdm-inv-sync = <0>; pcm-lane-config = <1>; }; }; ptp_virtual { compatible = "qcom,ptp_virtual"; reg = <0xeb600000 0x1000>; }; pdc: interrupt-controller@0xb220000{ compatible = "qcom,pdc-virt"; reg = <0xb220000 0x400>; #interrupt-cells = <3>; interrupt-controller; qcom,pdc-pins = <7 519>, <8 520>, <9 521>, <10 522>, <11 523>; }; clock_virt: qcom,virtio-gcc { compatible = "virtio,mmio"; reg = <0x1c200000 0x1000>; interrupts = <0 48 0>; #clock-cells = <1>; #reset-cells = <1>; }; clock_virt_scc: qcom,virtio-scc { compatible = "virtio,mmio"; reg = <0x1c300000 0x1000>; interrupts = <0 49 0>; #clock-cells = <1>; #reset-cells = <1>; }; regulator_virt: virtio_regulator@1c700000 { compatible = "virtio,mmio"; reg = <0x1c700000 0x1000>; interrupts = <0 42 0>; usb30_prim_gdsc: usb30_prim_gdsc { regulator-name = "usb30_prim_gdsc"; }; usb30_sec_gdsc: usb30_sec_gdsc { regulator-name = "usb30_sec_gdsc"; }; pcie_0_gdsc: pcie_0_gdsc { regulator-name = "pcie_0_gdsc"; }; pcie_1_gdsc: pcie_1_gdsc { regulator-name = "pcie_1_gdsc"; }; L2A: pm8150_1_l2: regulator-pm8150-1-l2 { regulator-name = "ldoa2"; regulator-min-microvolt = <3072000>; regulator-max-microvolt = <3072000>; }; L5A: pm8150_1_l5: regulator-pm8150-1-l5 { regulator-name = "ldoa5"; regulator-min-microvolt = <880000>; regulator-max-microvolt = <880000>; }; L12A: pm8150_1_l12: regulator-pm8150-1-l12 { regulator-name = "ldoa12"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1800000>; }; L17A: pm8150_1_l17: regulator-pm8150-1-l17 { regulator-name = "ldoa17"; regulator-min-microvolt = <2704000>; regulator-max-microvolt = <2960000>; }; L8C: pm8150_2_l8: regulator-pm8150-2-l8 { regulator-name = "ldoc8"; regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; regulator-allow-set-load; }; L13C: pm8150_2_l13: regulator-pm8150-2-l13 { regulator-name = "ldoc13"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <2960000>; }; L15C: pm8150_2_l15: regulator-pm8150-2-l15 { regulator-name = "ldoc15"; regulator-min-microvolt = <1800000>; regulator-max-microvolt = <1904000>; }; L18C: pm8150_2_l18: regulator-pm8150-2-l18 { regulator-name = "ldoc18"; regulator-min-microvolt = <880000>; regulator-max-microvolt = <880000>; regulator-allow-set-load; }; S6A: pm8150_1_s6: regulator-pm8150-1-s6 { regulator-name = "smpa6"; regulator-min-microvolt = <600000>; regulator-max-microvolt = <1352000>; }; S4C: pm8150_2_s4: regulator-pm8150-2-s4 { regulator-name = "smpc4"; regulator-min-microvolt = <800000>; regulator-max-microvolt = <1400000>; }; S5C: pm8150_2_s5: regulator-pm8150-2-s5 { regulator-name = "smpc5"; regulator-min-microvolt = <1824000>; regulator-max-microvolt = <2040000>; }; }; apps_smmu: apps-smmu@0x15000000 { compatible = "qcom,qsmmu-v500"; reg = <0x15000000 0x100000>, <0x15182000 0x20>; reg-names = "base", "tcu-base"; #iommu-cells = <2>; qcom,skip-init; qcom,use-3-lvl-tables; qcom,disable-atos; #global-interrupts = <1>; #size-cells = <1>; #address-cells = <1>; ranges; interrupts = , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ; status = "disabled"; }; qcom,sps { compatible = "qcom,msm-sps-4k"; qcom,pipe-attr-ee; status = "disabled"; }; vreg_wlan: vreg_wlan { compatible = "qcom,stub-regulator"; regulator-name = "vreg_wlan"; }; /* PWR_CTR2_VDD_1P8 supply */ vreg_conn_1p8: vreg_conn_1p8 { compatible = "regulator-fixed"; regulator-name = "vreg_conn_1p8"; pinctrl-names = "default"; pinctrl-0 = <&conn_power_1p8_active>; startup-delay-us = <4000>; enable-active-high; gpio = <&tlmm 173 0>; }; /* PWR_CTR1_VDD_PA supply */ vreg_conn_pa: vreg_conn_pa { compatible = "regulator-fixed"; regulator-name = "vreg_conn_pa"; pinctrl-names = "default"; pinctrl-0 = <&conn_power_pa_active>; startup-delay-us = <4000>; enable-active-high; gpio = <&tlmm 174 0>; }; VDD_CX_LEVEL: VDD_MMCX_LEVEL: S9C_LEVEL: pm8150_2_s9_level: regulator-pm8150-2-s9-level { compatible = "qcom,stub-regulator"; regulator-name = "pm8150_2_s9_level"; regulator-min-microvolt = ; regulator-max-microvolt = ; }; qcom_seecom: qseecom@87900000 { compatible = "qcom,qseecom"; reg = <0x87900000 0x2200000>; reg-names = "secapp-region"; memory-region = <&qseecom_mem>; qcom,hlos-num-ce-hw-instances = <1>; qcom,hlos-ce-hw-instance = <0>; qcom,qsee-ce-hw-instance = <0>; qcom,disk-encrypt-pipe-pair = <2>; qcom,no-clock-support; qcom,qsee-reentrancy-support = <2>; }; bluetooth: bt_qca6174 { compatible = "qca,qca6174"; pinctrl-names = "default"; pinctrl-0 = <&bt_en_active>; /* BT_EN */ qca,bt-reset-gpio = <&tlmm 172 0>; /* PWR_CTR1_VDD_PA */ qca,bt-vdd-pa-supply = <&vreg_conn_pa>; /* PWR_CTR2_VDD_1P8 */ qca,bt-chip-pwd-supply = <&vreg_conn_1p8>; qca,bt-vdd-vl-supply = <&pm8150_1_s6>; qca,bt-vdd-vm-supply = <&pm8150_2_s4>; qca,bt-vdd-5c-supply = <&pm8150_2_s5>; qca,bt-vdd-vh-supply = <&pm8150_2_l15>; qca,bt-vdd-vl-voltage-level = <1055000 1055000>; qca,bt-vdd-vm-voltage-level = <1370000 1370000>; qca,bt-vdd-5c-voltage-level = <2040000 2040000>; qca,bt-vdd-vh-voltage-level = <1900000 1900000>; qca,bt-vdd-vl-current-level = <0>; qca,bt-vdd-vm-current-level = <0>; qca,bt-vdd-5c-current-level = <0>; qca,bt-vdd-vh-current-level = <450000>; status = "ok"; }; qcom,cnss-qca-converged { compatible = "qcom,cnss-qca-converged"; qcom,converged-dt; qcom,wlan-rc-num = <0>; qcom,bus-type=<0>; qcom,notify-modem-status; qcom,msm-bus,name = "msm-cnss"; qcom,msm-bus,num-cases = <4>; qcom,msm-bus,num-paths = <2>; qcom,msm-bus,vectors-KBps = <45 512 0 0>, <1 512 0 0>, /* Upto 200 Mbps */ <45 512 41421 655360>, <1 512 41421 655360>, /* Upto 400 Mbps */ <45 512 98572 655360>, <1 512 98572 1600000>, /* Upto 800 Mbps */ <45 512 207108 1146880>, <1 512 207108 3124992>; #address-cells=<1>; #size-cells=<1>; ranges = <0x10000000 0x10000000 0x10000000>, <0x20000000 0x20000000 0x10000>, <0xa0000000 0xa0000000 0x10000000>, <0xb0000000 0xb0000000 0x10000>; vdd-wlan-ctrl1-supply = <&vreg_conn_pa>; vdd-wlan-ctrl2-supply = <&vreg_conn_1p8>; vdd-wlan-supply = <&vreg_wlan>; vdd-wlan-aon-supply = <&pm8150_1_s6>; vdd-wlan-rfa1-supply = <&pm8150_2_s4>; vdd-wlan-rfa2-supply = <&pm8150_2_s5>; vdd-wlan-rfa3-supply = <&pm8150_2_l15>; wlan_vregs = "vdd-wlan-ctrl1", "vdd-wlan-ctrl2"; qcom,vdd-wlan-ctrl1-info = <0 0 0 0>; qcom,vdd-wlan-ctrl2-info = <0 0 0 0>; wlan-en-gpio = <&tlmm 169 0>; pinctrl-names = "wlan_en_active", "wlan_en_sleep"; pinctrl-0 = <&cnss_wlan_en_active>; pinctrl-1 = <&cnss_wlan_en_sleep>; chip_cfg@0 { reg = <0x10000000 0x10000000>, <0x20000000 0x10000>; reg-names = "smmu_iova_base", "smmu_iova_ipa"; supported-ids = <0x003e>; wlan_vregs = "vdd-wlan"; qcom,vdd-wlan-info = <0 0 0 10>; qcom,smmu-s1-enable; qcom,wlan-ramdump-dynamic = <0x200000>; }; chip_cfg@1 { reg = <0xa0000000 0x10000000>, <0xb0000000 0x10000>; reg-names = "smmu_iova_base", "smmu_iova_ipa"; supported-ids = <0x1101>; wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1", "vdd-wlan-rfa2", "vdd-wlan-rfa3"; qcom,vdd-wlan-aon-info = <1055000 1055000 0 0>; qcom,vdd-wlan-rfa1-info = <1350000 1350000 0 0>; qcom,vdd-wlan-rfa2-info = <2040000 2040000 0 0>; qcom,vdd-wlan-rfa3-info = <1900000 1900000 0 0>; qcom,wlan-ramdump-dynamic = <0x400000>; mhi,max-channels = <30>; mhi,timeout = <10000>; mhi_channels { #address-cells = <1>; #size-cells = <0>; mhi_chan@0 { reg = <0>; label = "LOOPBACK"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@1 { reg = <1>; label = "LOOPBACK"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@4 { reg = <4>; label = "DIAG"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@5 { reg = <5>; label = "DIAG"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@20 { reg = <20>; label = "IPCR"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <1>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; mhi,auto-start; }; mhi_chan@21 { reg = <21>; label = "IPCR"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; mhi,auto-queue; mhi,auto-start; }; }; mhi_events { mhi_event@0 { mhi,num-elements = <32>; mhi,intmod = <1>; mhi,msi = <1>; mhi,priority = <1>; mhi,brstmode = <2>; mhi,data-type = <1>; }; mhi_event@1 { mhi,num-elements = <256>; mhi,intmod = <1>; mhi,msi = <2>; mhi,priority = <1>; mhi,brstmode = <2>; }; }; }; chip_cfg@2 { reg = <0xa0000000 0x10000000>, <0xb0000000 0x10000>; reg-names = "smmu_iova_base", "smmu_iova_ipa"; supported-ids = <0x1102>; wlan_vregs = "vdd-wlan-aon", "vdd-wlan-rfa1", "vdd-wlan-rfa2", "vdd-wlan-rfa3"; qcom,vdd-wlan-aon-info = <1055000 1055000 0 0>; qcom,vdd-wlan-rfa1-info = <1370000 1370000 0 0>; qcom,vdd-wlan-rfa2-info = <2040000 2040000 0 0>; qcom,vdd-wlan-rfa3-info = <1900000 1900000 0 0>; qcom,wlan-ramdump-dynamic = <0x300000>; mhi,max-channels = <30>; mhi,timeout = <10000>; mhi,ee = <0x3>, <0x4>; mhi,ee-names = "SBL", "RDDM"; mhi,bhie-offset = <0x0324>; mhi_channels { #address-cells = <1>; #size-cells = <0>; mhi_chan@0 { reg = <0>; label = "LOOPBACK"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@1 { reg = <1>; label = "LOOPBACK"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@4 { reg = <4>; label = "DIAG"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@5 { reg = <5>; label = "DIAG"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; }; mhi_chan@16 { reg = <16>; label = "IPCR"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <1>; mhi,data-type = <1>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; mhi,auto-start; }; mhi_chan@17 { reg = <17>; label = "IPCR"; mhi,num-elements = <32>; mhi,event-ring = <1>; mhi,chan-dir = <2>; mhi,data-type = <0>; mhi,doorbell-mode = <2>; mhi,ee = <0x14>; mhi,auto-queue; mhi,auto-start; }; }; mhi_events { mhi_event@0 { mhi,num-elements = <32>; mhi,intmod = <1>; mhi,msi = <1>; mhi,priority = <1>; mhi,brstmode = <2>; mhi,data-type = <1>; }; mhi_event@1 { mhi,num-elements = <256>; mhi,intmod = <1>; mhi,msi = <2>; mhi,priority = <1>; mhi,brstmode = <2>; }; }; }; }; sdhc_2: sdhci@8804000 { compatible = "qcom,sdhci-msm-v5"; reg = <0x8804000 0x1000>; reg-names = "hc_mem"; interrupts = <0 204 0>, <0 222 0>; interrupt-names = "hc_irq", "pwr_irq"; qcom,bus-width = <4>; qcom,large-address-bus; qcom,msm-bus,name = "sdhc2"; qcom,msm-bus,num-cases = <8>; qcom,msm-bus,num-paths = <2>; qcom,msm-bus,vectors-KBps = /* No vote */ <81 512 0 0>, <1 608 0 0>, /* 400 KB/s*/ <81 512 1046 1600>, <1 608 1600 1600>, /* 20 MB/s */ <81 512 52286 80000>, <1 608 80000 80000>, /* 25 MB/s */ <81 512 65360 100000>, <1 608 100000 100000>, /* 50 MB/s */ <81 512 130718 200000>, <1 608 133320 133320>, /* 100 MB/s */ <81 512 261438 200000>, <1 608 150000 150000>, /* 200 MB/s */ <81 512 261438 400000>, <1 608 300000 300000>, /* Max. bandwidth */ <81 512 1338562 4096000>, <1 608 1338562 4096000>; qcom,bus-bw-vectors-bps = <0 400000 20000000 25000000 50000000 100750000 200000000 4294967295>; qcom,restore-after-cx-collapse; qcom,clk-rates = <400000 20000000 25000000 50000000 100000000 201500000>; qcom,bus-speed-mode = "SDR12", "SDR25", "SDR50", "DDR50", "SDR104"; qcom,devfreq,freq-table = <50000000 201500000>; clocks = <&clock_virt GCC_SDCC2_AHB_CLK>, <&clock_virt GCC_SDCC2_APPS_CLK>; clock-names = "iface_clk", "core_clk"; /* PM QoS */ qcom,pm-qos-irq-type = "affine_irq"; qcom,pm-qos-irq-latency = <44 44>; qcom,pm-qos-cpu-groups = <0x3f 0xc0>; qcom,pm-qos-legacy-latency-us = <44 44>, <44 44>; vdd-supply = <&pm8150_1_l17>; qcom,vdd-voltage-level = <2950000 2960000>; qcom,vdd-current-level = <200 800000>; vdd-io-supply = <&pm8150_2_l13>; qcom,vdd-io-voltage-level = <1808000 2960000>; qcom,vdd-io-current-level = <200 22000>; pinctrl-names = "active", "sleep"; pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &storage_cd_default>; pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &storage_cd_default>; broken-cd; qcom,nonhotplug; status = "disabled"; }; subsys_notif_virt: qcom,subsys_notif_virt@2D000000 { compatible = "qcom,subsys-notif-virt"; reg = <0x2D000000 0x400>; reg-names = "vdev_base"; adsp { subsys-name = "adsp"; interrupts = <0 43 0>; interrupt-names = "state-irq"; type = "virtual"; offset = <0>; }; wlan { subsys-name = "wlan"; type = "native"; offset = <512>; }; }; qcom_rng: qrng@793000 { compatible = "qcom,msm-rng"; reg = <0x793000 0x1000>; qcom,msm-rng-iface-clk; qcom,no-qrng-config; qcom,msm-bus,name = "msm-rng-noc"; qcom,msm-bus,num-cases = <2>; qcom,msm-bus,num-paths = <1>; qcom,msm-bus,vectors-KBps = <1 618 0 0>, /* No vote */ <1 618 0 300000>; /* 75 MHz */ clocks = <&clock_virt GCC_PRNG_AHB_CLK>; clock-names = "iface_clk"; }; tcsr_compute_signal_glb: syscon@0x1fd8000 { compatible = "syscon"; reg = <0x1fd8000 0x1000>; }; tcsr_compute_signal_sender0: syscon@0x1fd9000 { compatible = "syscon"; reg = <0x1fd9000 0x1000>; }; tcsr_compute_signal_sender1: syscon@0x1fdd000 { compatible = "syscon"; reg = <0x1fdd000 0x1000>; }; tcsr_compute_signal_receiver0: syscon@0x1fdb000 { compatible = "syscon"; reg = <0x1fdb000 0x1000>; }; tcsr_compute_signal_receiver1: syscon@0x1fdf000 { compatible = "syscon"; reg = <0x1fdf000 0x1000>; }; hgsl_tcsr_sender0: hgsl_tcsr_sender0 { compatible = "qcom,hgsl-tcsr-sender"; syscon = <&tcsr_compute_signal_sender0>; syscon-glb = <&tcsr_compute_signal_glb>; }; hgsl_tcsr_sender1: hgsl_tcsr_sender1 { compatible = "qcom,hgsl-tcsr-sender"; syscon = <&tcsr_compute_signal_sender1>; syscon-glb = <&tcsr_compute_signal_glb>; }; hgsl_tcsr_receiver0: hgsl_tcsr_receiver0 { compatible = "qcom,hgsl-tcsr-receiver"; syscon = <&tcsr_compute_signal_receiver0>; interrupts = <0 238 0>; }; hgsl_tcsr_receiver1: hgsl_tcsr_receiver1 { compatible = "qcom,hgsl-tcsr-receiver"; syscon = <&tcsr_compute_signal_receiver1>; interrupts = <0 239 0>; }; msm_gpu_hyp: qcom,hgsl@0x2c00000 { compatible = "qcom,hgsl"; reg = <0x2c00000 0x8>, <0x2c8f000 0x4>; reg-names = "hgsl_reg_hwinf", "hgsl_reg_gmucx"; qcom,glb-db-senders = <&hgsl_tcsr_sender0 &hgsl_tcsr_sender1>; qcom,glb-db-receivers = <&hgsl_tcsr_receiver0 &hgsl_tcsr_receiver1>; }; tcsr_mutex_block: syscon@1f40000 { compatible = "syscon"; reg = <0x1f40000 0x20000>; }; tcsr_mutex: hwlock@1f40000 { compatible = "qcom,tcsr-mutex"; syscon = <&tcsr_mutex_block 0 0x1000>; #hwlock-cells = <1>; mutex-id = <11>; }; smem: qcom,smem@8600000 { compatible = "qcom,smem"; memory-region = <&smem_region>; hwlocks = <&tcsr_mutex 3>; smem-host-id = <12>; }; gvm_intr: mailbox@17c00000 { compatible = "qcom,sm8150-apcs-hmss-global"; reg = <0x1c900000 0x100>; #mbox-cells = <1>; }; qcom,glink { compatible = "qcom,glink"; #address-cells = <1>; #size-cells = <1>; ranges; glink_cdsp: cdsp { qcom,remote-pid = <5>; transport = "smem"; mboxes = <&gvm_intr 4>; mbox-names = "cdsp_smem"; interrupts = <0 51 0>; vm-support; label = "cdsp"; qcom,glink-label = "cdsp"; qcom,cdsp_qrtr { qcom,glink-channels = "IPCRTR"; qcom,intents = <0x800 5 0x2000 3 0x4400 2>; }; }; }; }; #include "sm8150-pinctrl.dtsi" #include "sm8150-slpi-pinctrl.dtsi" #include "sa8155-vm-qupv3.dtsi" #include "sa8155-vm-usb.dtsi" #include "sa8155-vm-audio.dtsi" #include "sa8155-vm-pcie.dtsi" #include "sa8155-vm-mhi.dtsi" #include "pm8150-vm.dtsi" &tlmm { dirconn-list = <37 216 1>; }; &iommu_qupv3_0_geni_se_cb { iommus = <&apps_smmu 0xd8 0x0>; }; &iommu_qupv3_1_geni_se_cb { iommus = <&apps_smmu 0x618 0x0>; }; &iommu_qupv3_2_geni_se_cb { iommus = <&apps_smmu 0x7b8 0x0>; }; &iommu_qupv3_3_geni_se_cb { iommus = <&apps_smmu 0x4f8 0x0>; };