&soc { msm_npu: qcom,msm_npu@9800000 { compatible = "qcom,msm-npu"; status = "ok"; reg = <0x9800000 0x15000>, <0x9900000 0x10000>, <0x9960200 0x600>; reg-names = "tcm", "core", "bwmon"; interrupts = , , ; interrupt-names = "error_irq", "wdg_bite_irq", "ipc_irq"; iommus = <&apps_smmu 0x1461 0x0>, <&apps_smmu 0x2061 0x0>; memory-region = <&pil_npu_mem>; clocks = <&aoss_qmp>, <&gcc GCC_NPU_AT_CLK>, <&gcc GCC_NPU_TRIG_CLK>, <&npucc NPU_CC_ARMWIC_CORE_CLK>, <&npucc NPU_CC_CAL_DP_CLK>, <&npucc NPU_CC_CAL_DP_CDC_CLK>, <&npucc NPU_CC_CONF_NOC_AHB_CLK>, <&npucc NPU_CC_COMP_NOC_AXI_CLK>, <&npucc NPU_CC_NPU_CORE_CLK>, <&npucc NPU_CC_NPU_CORE_CTI_CLK>, <&npucc NPU_CC_NPU_CORE_APB_CLK>, <&npucc NPU_CC_NPU_CORE_ATB_CLK>, <&npucc NPU_CC_NPU_CPC_CLK>, <&npucc NPU_CC_NPU_CPC_TIMER_CLK>, <&npucc NPU_CC_QTIMER_CORE_CLK>, <&npucc NPU_CC_SLEEP_CLK>, <&npucc NPU_CC_BWMON_CLK>, <&npucc NPU_CC_PERF_CNT_CLK>, <&npucc NPU_CC_BTO_CORE_CLK>; clock-names = "qdss_clk", "at_clk", "trig_clk", "armwic_core_clk", "cal_dp_clk", "cal_dp_cdc_clk", "conf_noc_ahb_clk", "comp_noc_axi_clk", "npu_core_clk", "npu_core_cti_clk", "npu_core_apb_clk", "npu_core_atb_clk", "npu_cpc_clk", "npu_cpc_timer_clk", "qtimer_core_clk", "sleep_clk", "bwmon_clk", "perf_cnt_clk", "bto_core_clk"; vdd-supply = <&npu_core_gdsc>; vdd_cx-supply = <&VDD_CX_LEVEL>; qcom,proxy-reg-names ="vdd", "vdd_cx"; qcom,vdd_cx-uV-uA = ; mboxes = <&qmp_aop 0>; mbox-names = "aop"; #cooling-cells = <2>; interconnects = <&compute_noc MASTER_NPU &compute_noc SLAVE_CDSP_MEM_NOC>, <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_IMEM_CFG>; interconnect-names = "icc-npu-cdspmem", "icc-cpu-imemcfg"; // qcom,npubw-dev = <&npu_npu_ddr_bw>; qcom,npu-pwrlevels { #address-cells = <1>; #size-cells = <0>; compatible = "qcom,npu-pwrlevels"; initial-pwrlevel = <4>; qcom,npu-pwrlevel@0 { reg = <0>; vreg = <1>; clk-freq = <0 0 0 100000000 300000000 300000000 19200000 150000000 100000000 37500000 19200000 60000000 100000000 19200000 19200000 0 19200000 300000000 19200000 19200000>; }; qcom,npu-pwrlevel@1 { reg = <1>; vreg = <2>; clk-freq = <0 0 0 150000000 350000000 350000000 37500000 200000000 150000000 75000000 19200000 120000000 150000000 19200000 19200000 0 19200000 350000000 19200000 19200000>; }; qcom,npu-pwrlevel@2 { reg = <2>; vreg = <3>; clk-freq = <0 0 0 200000000 400000000 400000000 37500000 300000000 200000000 75000000 19200000 120000000 200000000 19200000 19200000 0 19200000 400000000 19200000 19200000>; }; qcom,npu-pwrlevel@3 { reg = <3>; vreg = <4>; clk-freq = <0 0 0 300000000 600000000 600000000 75000000 403000000 300000000 150000000 19200000 240000000 300000000 19200000 19200000 0 19200000 600000000 19200000 19200000>; }; qcom,npu-pwrlevel@4 { reg = <4>; vreg = <6>; clk-freq = <0 0 0 350000000 715000000 715000000 75000000 533000000 350000000 150000000 19200000 240000000 350000000 19200000 19200000 0 19200000 715000000 19200000 19200000>; }; }; }; };