M7350/kernel/arch/arm/boot/dts/qcom/msm8909-bus.dtsi

1064 lines
29 KiB
Plaintext
Raw Normal View History

2024-09-09 08:57:42 +00:00
/* Copyright (c) 2014-2016, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#include <dt-bindings/msm/msm-bus-ids.h>
#include <dt-bindings/msm/msm-bus-rule-ops.h>
&soc {
static-rules {
compatible = "qcom,msm-bus-static-bw-rules";
rule0 {
qcom,src-nodes = <&mas_apps_proc>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_LE>;
qcom,thresh = <200000>;
qcom,mode = <THROTTLE_ON>;
qcom,dest-node = <&mas_apps_proc>;
qcom,dest-bw = <600000>;
};
rule1 {
qcom,src-nodes = <&mas_apps_proc>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_LE>;
qcom,thresh = <400000>;
qcom,mode = <THROTTLE_ON>;
qcom,dest-node = <&mas_apps_proc>;
qcom,dest-bw = <1200000>;
};
rule2 {
qcom,src-nodes = <&mas_apps_proc>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_GT>;
qcom,thresh = <400000>;
qcom,mode = <THROTTLE_OFF>;
qcom,dest-node = <&mas_apps_proc>;
};
rule3 {
qcom,src-nodes = <&mas_oxili>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_LE>;
qcom,thresh = <200000>;
qcom,mode = <THROTTLE_ON>;
qcom,dest-node = <&mas_oxili>;
qcom,dest-bw = <600000>;
};
rule4 {
qcom,src-nodes = <&mas_oxili>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_LE>;
qcom,thresh = <400000>;
qcom,mode = <THROTTLE_ON>;
qcom,dest-node = <&mas_oxili>;
qcom,dest-bw = <1200000>;
};
rule5 {
qcom,src-nodes = <&mas_oxili>;
qcom,src-field = <FLD_CLK>;
qcom,src-op = <OP_GT>;
qcom,thresh = <400000>;
qcom,mode = <THROTTLE_OFF>;
qcom,dest-node = <&mas_oxili>;
};
};
/* Version = 2 */
ad_hoc_bus: ad-hoc-bus {
compatible = "qcom,msm-bus-device";
reg = <0x580000 0x13000>,
<0x580000 0x13000>,
<0x400000 0x62000>,
<0x500000 0x11000>;
reg-names = "snoc-base", "snoc-mm-base", "bimc-base", "pcnoc-base";
/*Buses*/
fab_bimc: fab-bimc {
cell-id = <MSM_BUS_FAB_BIMC>;
label = "fab-bimc";
qcom,fab-dev;
qcom,base-name = "bimc-base";
qcom,bus-type = <2>;
qcom,util-fact = <154>;
clock-names = "bus_clk", "bus_a_clk";
clocks = <&clock_rpm clk_bimc_msmbus_clk>,
<&clock_rpm clk_bimc_msmbus_a_clk>;
coresight-id = <55>;
coresight-name = "coresight-bimc";
coresight-nr-inports = <0>;
coresight-outports = <0>;
coresight-child-list = <&funnel_in2>;
coresight-child-ports = <3>;
};
fab_pcnoc: fab-pcnoc {
cell-id = <MSM_BUS_FAB_PERIPH_NOC>;
label = "fab-pcnoc";
qcom,fab-dev;
qcom,base-name = "pcnoc-base";
qcom,base-offset = <0x7000>;
qcom,qos-delta = <0x1000>;
qcom,bus-type = <1>;
clock-names = "bus_clk", "bus_a_clk";
clocks = <&clock_rpm clk_pcnoc_msmbus_clk>,
<&clock_rpm clk_pcnoc_msmbus_a_clk>;
coresight-id = <54>;
coresight-name = "coresight-pcnoc";
coresight-nr-inports = <0>;
coresight-outports = <0>;
coresight-child-list = <&funnel_in2>;
coresight-child-ports = <6>;
};
fab_snoc: fab-snoc {
cell-id = <MSM_BUS_FAB_SYS_NOC>;
label = "fab-snoc";
qcom,fab-dev;
qcom,base-name = "snoc-base";
qcom,base-offset = <0x7000>;
qcom,qos-off = <0x1000>;
qcom,bus-type = <1>;
clock-names = "bus_clk", "bus_a_clk", "bus_qos_clk";
clocks = <&clock_rpm clk_snoc_msmbus_clk>,
<&clock_rpm clk_snoc_msmbus_a_clk>,
<&clock_gcc clk_gcc_snoc_qosgen_clk>;
coresight-id = <50>;
coresight-name = "coresight-snoc";
coresight-nr-inports = <0>;
coresight-outports = <0>;
coresight-child-list = <&funnel_in2>;
coresight-child-ports = <5>;
};
fab_snoc_mm: fab-snoc-mm {
cell-id = <MSM_BUS_FAB_MMSS_NOC>;
label = "fab-snoc-mm";
qcom,fab-dev;
qcom,base-name = "snoc-mm-base";
qcom,base-offset = <0x7000>;
qcom,qos-off = <0x1000>;
qcom,bus-type = <1>;
qcom,util-fact = <167>;
clock-names = "bus_clk", "bus_a_clk";
clocks = <&clock_rpm clk_snoc_mm_msmbus_clk>,
<&clock_rpm clk_snoc_mm_msmbus_a_clk>;
};
/* Masters */
mas_apps_proc: mas-apps-proc {
cell-id = <MSM_BUS_MASTER_AMPSS_M0>;
label = "mas-apps-proc";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <0>;
qcom,qos-mode = "fixed";
qcom,connections = <&slv_bimc_snoc &slv_ebi>;
qcom,prio-lvl = <0>;
qcom,prio-rd = <0>;
qcom,prio-wr = <0>;
qcom,ws = <10000>;
qcom,gp = <5000>;
qcom,thmp = <50>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_APPSS_PROC>;
};
mas_oxili: mas-oxili {
cell-id = <MSM_BUS_MASTER_GRAPHICS_3D>;
label = "mas-oxili";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <2>;
qcom,qos-mode = "fixed";
qcom,connections = <&slv_bimc_snoc &slv_ebi>;
qcom,prio-lvl = <0>;
qcom,prio-rd = <0>;
qcom,prio-wr = <0>;
qcom,ws = <10000>;
qcom,gp = <5000>;
qcom,thmp = <50>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_GFX3D>;
};
mas_snoc_bimc_0: mas-snoc-bimc-0 {
cell-id = <MSM_BUS_SNOC_BIMC_0_MAS>;
label = "mas-snoc-bimc-0";
qcom,buswidth = <8>;
qcom,qport = <3>;
qcom,qos-mode = "bypass";
qcom,connections = <&slv_ebi>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_BIMC_0>;
};
mas_snoc_bimc_1: mas-snoc-bimc-1 {
cell-id = <MSM_BUS_SNOC_BIMC_1_MAS>;
label = "mas-snoc-bimc-1";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <4>;
qcom,qos-mode = "bypass";
qcom,connections = <&slv_ebi>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_BIMC_1>;
};
mas_tcu_0: mas-tcu-0 {
cell-id = <MSM_BUS_MASTER_TCU_0>;
label = "mas-tcu-0";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <5>;
qcom,qos-mode = "fixed";
qcom,connections = <&slv_bimc_snoc &slv_ebi>;
qcom,prio-lvl = <2>;
qcom,prio-rd = <2>;
qcom,prio-wr = <2>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_TCU_0>;
};
mas_tcu_1: mas-tcu-1 {
cell-id = <MSM_BUS_MASTER_TCU_1>;
label = "mas-tcu-1";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <6>;
qcom,qos-mode = "fixed";
qcom,connections = <&slv_bimc_snoc &slv_ebi>;
qcom,prio-lvl = <2>;
qcom,prio-rd = <2>;
qcom,prio-wr = <2>;
qcom,bus-dev = <&fab_bimc>;
qcom,mas-rpm-id = <ICBID_MASTER_TCU_1>;
};
mas_audio: mas-audio {
cell-id = <MSM_BUS_MASTER_AUDIO>;
label = "mas-audio";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_AUDIO>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_spdm: mas-spdm {
cell-id = <MSM_BUS_MASTER_SPDM>;
label = "mas-spdm";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SPDM>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_dehr: mas-dehr {
cell-id = <MSM_BUS_MASTER_DEHR>;
label = "mas-dehr";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_DEHR>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_qpic: mas-qpic {
cell-id = <MSM_BUS_MASTER_QPIC>;
label = "mas-qpic";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_QPIC>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_blsp_1: mas-blsp-1 {
cell-id = <MSM_BUS_MASTER_BLSP_1>;
label = "mas-blsp-1";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_1>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_BLSP_1>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_usb_hs: mas-usb-hs {
cell-id = <MSM_BUS_MASTER_USB_HS>;
label = "mas-usb-hs";
qcom,buswidth = <4>;
qcom,connections = <&pcnoc_m_1>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_USB_HS>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_crypto: mas-crypto {
cell-id = <MSM_BUS_MASTER_CRYPTO_CORE0>;
label = "mas-crypto";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <0>;
qcom,qos-mode = "fixed";
qcom,connections = <&pcnoc_int_1>;
qcom,prio1 = <0>;
qcom,prio0 = <0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_CRYPTO>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_sdcc_1: mas-sdcc-1 {
cell-id = <MSM_BUS_MASTER_SDCC_1>;
label = "mas-sdcc-1";
qcom,buswidth = <8>;
qcom,qport = <7>;
qcom,qos-mode = "fixed";
qcom,connections = <&pcnoc_int_1>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SDCC_1>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_sdcc_2: mas-sdcc-2 {
cell-id = <MSM_BUS_MASTER_SDCC_2>;
label = "mas-sdcc-2";
qcom,buswidth = <8>;
qcom,qport = <8>;
qcom,qos-mode = "fixed";
qcom,connections = <&pcnoc_int_1>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SDCC_2>;
qcom,blacklist = <&slv_blsp_1 &slv_message_ram &slv_usb_hs
&slv_venus_cfg &slv_gpu_cfg &slv_camera_ss_cfg
&slv_crypto_0_cfg &slv_tlmm &slv_tcu
&slv_pdm &slv_snoc_cfg &slv_qpic
&slv_tcsr &slv_prng &slv_sdcc_2
&slv_pmic_arb &slv_disp_ss_cfg &slv_usb_phy
&slv_sdcc_1 &slv_audio>;
};
mas_snoc_pcnoc: mas-snoc-pcnoc {
cell-id = <MSM_BUS_SNOC_PNOC_MAS>;
label = "mas-snoc-pcnoc";
qcom,buswidth = <8>;
qcom,qport = <9>;
qcom,qos-mode = "fixed";
qcom,connections = <&pcnoc_int_0>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_PCNOC>;
};
mas_qdss_bam: mas-qdss-bam {
cell-id = <MSM_BUS_MASTER_QDSS_BAM>;
label = "mas-qdss-bam";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,qport = <11>;
qcom,qos-mode = "fixed";
qcom,connections = <&qdss_int>;
qcom,prio1 = <1>;
qcom,prio0 = <1>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_QDSS_BAM>;
qcom,blacklist = <&slv_kpss_ahb &slv_cats_1 &slv_qdss_stm
&slv_cats_0>;
};
mas_bimc_snoc: mas-bimc-snoc {
cell-id = <MSM_BUS_BIMC_SNOC_MAS>;
label = "mas-bimc-snoc";
qcom,buswidth = <8>;
qcom,connections = <&snoc_int_0 &snoc_int_1>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_BIMC_SNOC>;
};
mas_mdp: mas-mdp {
cell-id = <MSM_BUS_MASTER_MDP_PORT0>;
label = "mas-mdp";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,qport = <7>;
qcom,qos-mode = "bypass";
qcom,connections = <&mm_int_1 &mm_int_2>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_MDP>;
qcom,blacklist = <&slv_kpss_ahb &slv_imem &slv_cats_1
&slv_qdss_stm &slv_cats_0>;
};
mas_pcnoc_snoc: mas-pcnoc-snoc {
cell-id = <MSM_BUS_PNOC_SNOC_MAS>;
label = "mas-pcnoc-snoc";
qcom,buswidth = <8>;
qcom,qport = <5>;
qcom,qos-mode = "fixed";
qcom,connections = <&snoc_int_0 &snoc_int_1 &snoc_int_bimc>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PNOC_SNOC>;
qcom,blacklist = <&slv_cats_1 &slv_cats_0>;
};
mas_venus: mas-venus {
cell-id = <MSM_BUS_MASTER_VIDEO_P0>;
label = "mas-venus";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,qport = <8>;
qcom,qos-mode = "bypass";
qcom,connections = <&mm_int_0 &mm_int_2>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_VIDEO>;
qcom,blacklist = <&slv_kpss_ahb &slv_imem &slv_cats_1
&slv_qdss_stm &slv_cats_0>;
};
mas_vfe: mas-vfe {
cell-id = <MSM_BUS_MASTER_VFE>;
label = "mas-vfe";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,qport = <9>;
qcom,qos-mode = "bypass";
qcom,connections = <&mm_int_1 &mm_int_2>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_VFE>;
qcom,blacklist = <&slv_kpss_ahb &slv_imem &slv_cats_1
&slv_qdss_stm &slv_cats_0>;
};
mas_qdss_etr: mas-qdss-etr {
cell-id = <MSM_BUS_MASTER_QDSS_ETR>;
label = "mas-qdss-etr";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,qport = <10>;
qcom,qos-mode = "fixed";
qcom,connections = <&qdss_int>;
qcom,prio1 = <1>;
qcom,prio0 = <1>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_QDSS_ETR>;
qcom,blacklist = <&slv_kpss_ahb &slv_cats_1 &slv_qdss_stm
&slv_cats_0>;
};
/*Internal nodes*/
pcnoc_m_0: pcnoc-m-0 {
cell-id = <MSM_BUS_PNOC_M_0>;
label = "pcnoc-m-0";
qcom,buswidth = <8>;
qcom,qport = <5>;
qcom,qos-mode = "bypass";
qcom,connections = <&slv_pcnoc_snoc>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_M_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_M_0>;
};
pcnoc_m_1: pcnoc-m-1 {
cell-id = <MSM_BUS_PNOC_M_1>;
label = "pcnoc-m-1";
qcom,buswidth = <8>;
qcom,qport = <6>;
qcom,qos-mode = "fixed";
qcom,connections = <&slv_pcnoc_snoc>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_M_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_M_1>;
};
pcnoc_int_0: pcnoc-int-0 {
cell-id = <MSM_BUS_PNOC_INT_0>;
label = "pcnoc-int-0";
qcom,buswidth = <8>;
qcom,connections = <&pcnoc_s_3 &pcnoc_s_2 &pcnoc_s_1 &pcnoc_s_0 &pcnoc_s_7 &pcnoc_s_5 &pcnoc_s_4 &slv_tcu>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_INT_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_INT_0>;
};
pcnoc_int_1: pcnoc-int-1 {
cell-id = <MSM_BUS_PNOC_INT_1>;
label = "pcnoc-int-1";
qcom,buswidth = <8>;
qcom,connections = <&slv_pcnoc_snoc>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_INT_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_INT_1>;
};
pcnoc_s_0: pcnoc-s-0 {
cell-id = <MSM_BUS_PNOC_SLV_0>;
label = "pcnoc-s-0";
qcom,buswidth = <4>;
qcom,connections = <&slv_sdcc_1 &slv_tcsr &slv_blsp_1>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_0>;
};
pcnoc_s_1: pcnoc-s-1 {
cell-id = <MSM_BUS_PNOC_SLV_1>;
label = "pcnoc-s-1";
qcom,buswidth = <4>;
qcom,connections = <&slv_message_ram &slv_crypto_0_cfg &slv_usb_hs &slv_pdm &slv_prng &slv_qpic>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_1>;
};
pcnoc_s_2: pcnoc-s-2 {
cell-id = <MSM_BUS_PNOC_SLV_2>;
label = "pcnoc-s-2";
qcom,buswidth = <4>;
qcom,connections = <&slv_spdm &slv_sdcc_2 &slv_audio &slv_dehr_cfg>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_2>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_2>;
};
pcnoc_s_3: pcnoc-s-3 {
cell-id = <MSM_BUS_PNOC_SLV_3>;
label = "pcnoc-s-3";
qcom,buswidth = <4>;
qcom,connections = <&slv_qdss_cfg &slv_usb_phy &slv_snoc_cfg>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_3>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_3>;
};
pcnoc_s_4: pcnoc-s-4 {
cell-id = <MSM_BUS_PNOC_SLV_4>;
label = "pcnoc-s-4";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,connections = <&slv_camera_ss_cfg &slv_disp_ss_cfg &slv_venus_cfg>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_4>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_4>;
};
pcnoc_s_5: pcnoc-s-5 {
cell-id = <MSM_BUS_PNOC_SLV_5>;
label = "pcnoc-s-5";
qcom,buswidth = <4>;
qcom,connections = <&slv_tlmm>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_5>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_5>;
};
pcnoc_s_7: pcnoc-s-7 {
cell-id = <MSM_BUS_PNOC_SLV_7>;
label = "pcnoc-s-7";
qcom,buswidth = <4>;
qcom,connections = <&slv_gpu_cfg &slv_imem_cfg &slv_bimc_cfg &slv_pmic_arb>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,mas-rpm-id = <ICBID_MASTER_PCNOC_S_7>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_S_7>;
};
mm_int_0: mm-int-0 {
cell-id = <MSM_BUS_SNOC_MM_INT_0>;
label = "mm-int-0";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,connections = <&mm_int_bimc>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_MM_INT_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_MM_INT_0>;
};
mm_int_1: mm-int-1 {
cell-id = <MSM_BUS_SNOC_MM_INT_1>;
label = "mm-int-1";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,connections = <&mm_int_bimc>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_MM_INT_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_MM_INT_1>;
};
mm_int_2: mm-int-2 {
cell-id = <MSM_BUS_SNOC_MM_INT_2>;
label = "mm-int-2";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,connections = <&snoc_int_0>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_MM_INT_2>;
qcom,slv-rpm-id = <ICBID_SLAVE_MM_INT_2>;
};
mm_int_bimc: mm-int-bimc {
cell-id = <MSM_BUS_SNOC_MM_INT_BIMC>;
label = "mm-int-bimc";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,connections = <&slv_snoc_bimc_1>;
qcom,bus-dev = <&fab_snoc_mm>;
qcom,mas-rpm-id = <ICBID_MASTER_MM_INT_BIMC>;
qcom,slv-rpm-id = <ICBID_SLAVE_MM_INT_BIMC>;
};
qdss_int: qdss-int {
cell-id = <MSM_BUS_SNOC_QDSS_INT>;
label = "qdss-int";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,connections = <&snoc_int_0 &snoc_int_bimc>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_QDSS_INT>;
qcom,slv-rpm-id = <ICBID_SLAVE_QDSS_INT>;
};
snoc_int_0: snoc-int-0 {
cell-id = <MSM_BUS_SNOC_INT_0>;
label = "snoc-int-0";
qcom,buswidth = <8>;
qcom,connections = <&slv_imem &slv_qdss_stm &slv_snoc_pcnoc>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_INT_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_INT_0>;
};
snoc_int_1: snoc-int-1 {
cell-id = <MSM_BUS_SNOC_INT_1>;
label = "snoc-int-1";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,connections = <&slv_cats_0 &slv_kpss_ahb &slv_cats_1>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_INT_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_INT_1>;
};
snoc_int_bimc: snoc-int-bimc {
cell-id = <MSM_BUS_SNOC_INT_BIMC>;
label = "snoc-int-bimc";
qcom,buswidth = <8>;
qcom,connections = <&slv_snoc_bimc_0>;
qcom,bus-dev = <&fab_snoc>;
qcom,mas-rpm-id = <ICBID_MASTER_SNOC_INT_BIMC>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_INT_BIMC>;
};
/*Slaves*/
slv_ebi:slv-ebi {
cell-id = <MSM_BUS_SLAVE_EBI_CH0>;
label = "slv-ebi";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_bimc>;
qcom,slv-rpm-id = <ICBID_SLAVE_EBI1>;
};
slv_bimc_snoc:slv-bimc-snoc {
cell-id = <MSM_BUS_BIMC_SNOC_SLV>;
label = "slv-bimc-snoc";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_bimc>;
qcom,connections = <&mas_bimc_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_BIMC_SNOC>;
};
slv_tcsr:slv-tcsr {
cell-id = <MSM_BUS_SLAVE_TCSR>;
label = "slv-tcsr";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_TCSR>;
};
slv_sdcc_1:slv-sdcc-1 {
cell-id = <MSM_BUS_SLAVE_SDCC_1>;
label = "slv-sdcc-1";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_SDCC_1>;
};
slv_blsp_1:slv-blsp-1 {
cell-id = <MSM_BUS_SLAVE_BLSP_1>;
label = "slv-blsp-1";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_BLSP_1>;
};
slv_crypto_0_cfg:slv-crypto-0-cfg {
cell-id = <MSM_BUS_SLAVE_CRYPTO_0_CFG>;
label = "slv-crypto-0-cfg";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_CRYPTO_0_CFG>;
};
slv_message_ram:slv-message-ram {
cell-id = <MSM_BUS_SLAVE_MESSAGE_RAM>;
label = "slv-message-ram";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_MESSAGE_RAM>;
};
slv_pdm:slv-pdm {
cell-id = <MSM_BUS_SLAVE_PDM>;
label = "slv-pdm";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_PDM>;
};
slv_prng:slv-prng {
cell-id = <MSM_BUS_SLAVE_PRNG>;
label = "slv-prng";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_PRNG>;
};
slv_usb_hs:slv-usb-hs {
cell-id = <MSM_BUS_SLAVE_USB_HS>;
label = "slv-usb-hs";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_USB_HS>;
};
slv_qpic:slv-qpic {
cell-id = <MSM_BUS_SLAVE_QPIC>;
label = "slv-qpic";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_QPIC>;
};
slv_spdm: slv-spdm {
cell-id = <MSM_BUS_SLAVE_SPDM>;
label = "slv-spdm";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_SPDM_WRAPPER>;
};
slv_sdcc_2:slv-sdcc-2 {
cell-id = <MSM_BUS_SLAVE_SDCC_2>;
label = "slv-sdcc-2";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_SDCC_2>;
};
slv_audio:slv-audio {
cell-id = <MSM_BUS_SLAVE_AUDIO>;
label = "slv-audio";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_AUDIO>;
};
slv_dehr_cfg: slv-dehr-cfg {
cell-id = <MSM_BUS_SLAVE_DEHR_CFG>;
label = "slv-dehr-cfg";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_DEHR_CFG>;
};
slv_snoc_cfg:slv-snoc-cfg {
cell-id = <MSM_BUS_SLAVE_SNOC_CFG>;
label = "slv-snoc-cfg";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_CFG>;
};
slv_qdss_cfg: slv-qdss-cfg {
cell-id = <MSM_BUS_SLAVE_QDSS_CFG>;
label = "slv-qdss-cfg";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_QDSS_CFG>;
};
slv_usb_phy:slv-usb-phy {
cell-id = <MSM_BUS_SLAVE_USB_PHYS_CFG>;
label = "slv-usb-phy";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_USB_PHY_CFG>;
};
slv_camera_ss_cfg:slv-camera-ss-cfg {
cell-id = <MSM_BUS_SLAVE_CAMERA_CFG>;
label = "slv-camera-ss-cfg";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_CAMERA_CFG>;
};
slv_disp_ss_cfg:slv-disp-ss-cfg {
cell-id = <MSM_BUS_SLAVE_DISPLAY_CFG>;
label = "slv-disp-ss-cfg";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_DISPLAY_CFG>;
};
slv_venus_cfg:slv-venus-cfg {
cell-id = <MSM_BUS_SLAVE_VENUS_CFG>;
label = "slv-venus-cfg";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_VENUS_CFG>;
};
slv_tlmm:slv-tlmm {
cell-id = <MSM_BUS_SLAVE_TLMM>;
label = "slv-tlmm";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_TLMM>;
};
slv_gpu_cfg:slv-gpu-cfg {
cell-id = <MSM_BUS_SLAVE_GRAPHICS_3D_CFG>;
label = "slv-gpu-cfg";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_GFX3D_CFG>;
};
slv_imem_cfg: slv-imem-cfg {
cell-id = <MSM_BUS_SLAVE_IMEM_CFG>;
label = "slv-imem-cfg";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_IMEM_CFG>;
};
slv_bimc_cfg: slv-bimc-cfg {
cell-id = <MSM_BUS_SLAVE_BIMC_CFG>;
label = "slv-bimc-cfg";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_BIMC_CFG>;
};
slv_pmic_arb:slv-pmic-arb {
cell-id = <MSM_BUS_SLAVE_PMIC_ARB>;
label = "slv-pmic-arb";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_PMIC_ARB>;
};
slv_tcu:slv-tcu {
cell-id = <MSM_BUS_SLAVE_TCU>;
label = "slv-tcu";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,bus-dev = <&fab_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_TCU>;
};
slv_pcnoc_snoc:slv-pcnoc-snoc {
cell-id = <MSM_BUS_PNOC_SNOC_SLV>;
label = "slv-pcnoc-snoc";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_pcnoc>;
qcom,connections = <&mas_pcnoc_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_PCNOC_SNOC>;
};
slv_kpss_ahb:slv-kpss-ahb {
cell-id = <MSM_BUS_SLAVE_APPSS>;
label = "slv-kpss-ahb";
qcom,buswidth = <4>;
qcom,ap-owned;
qcom,bus-dev = <&fab_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_APPSS>;
};
slv_snoc_bimc_0:slv-snoc-bimc-0 {
cell-id = <MSM_BUS_SNOC_BIMC_0_SLV>;
label = "slv-snoc-bimc-0";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_snoc>;
qcom,connections = <&mas_snoc_bimc_0>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_BIMC_0>;
};
slv_snoc_bimc_1:slv-snoc-bimc-1 {
cell-id = <MSM_BUS_SNOC_BIMC_1_SLV>;
label = "slv-snoc-bimc-1";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,bus-dev = <&fab_snoc>;
qcom,connections = <&mas_snoc_bimc_1>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_BIMC_1>;
};
slv_imem:slv-imem {
cell-id = <MSM_BUS_SLAVE_SYSTEM_IMEM>;
label = "slv-imem";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_IMEM>;
};
slv_snoc_pcnoc:slv-snoc-pcnoc {
cell-id = <MSM_BUS_SNOC_PNOC_SLV>;
label = "slv-snoc-pcnoc";
qcom,buswidth = <8>;
qcom,bus-dev = <&fab_snoc>;
qcom,connections = <&mas_snoc_pcnoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_SNOC_PCNOC>;
};
slv_qdss_stm:slv-qdss-stm {
cell-id = <MSM_BUS_SLAVE_QDSS_STM>;
label = "slv-qdss-stm";
qcom,buswidth = <4>;
qcom,bus-dev = <&fab_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_QDSS_STM>;
};
slv_cats_0:slv-cats-0 {
cell-id = <MSM_BUS_SLAVE_CATS_128>;
label = "slv-cats-0";
qcom,buswidth = <16>;
qcom,ap-owned;
qcom,bus-dev = <&fab_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_CATS_0>;
};
slv_cats_1:slv-cats-1 {
cell-id = <MSM_BUS_SLAVE_OCMEM_64>;
label = "slv-cats-1";
qcom,buswidth = <8>;
qcom,ap-owned;
qcom,bus-dev = <&fab_snoc>;
qcom,slv-rpm-id = <ICBID_SLAVE_CATS_1>;
};
};
devfreq_spdm_cpu {
compatible = "qcom,devfreq_spdm";
qcom,msm-bus,name = "devfreq_spdm";
qcom,msm-bus,num-cases = <2>;
qcom,msm-bus,num-paths = <1>;
qcom,msm-bus,vectors-KBps =
<1 512 0 0>,
<1 512 0 0>;
qcom,msm-bus,active-only;
qcom,spdm-client = <0>;
clock-names = "cci_clk";
clocks = <&clock_cpu clk_a7ssmux>;
qcom,bw-upstep = <400>;
qcom,bw-dwnstep = <400>;
qcom,max-vote = <4000>;
qcom,up-step-multp = <3>;
qcom,spdm-interval = <100>;
qcom,ports = <11>;
qcom,alpha-up = <8>;
qcom,alpha-down = <15>;
qcom,bucket-size = <8>;
/*max pl1 freq, max pl2 freq*/
qcom,pl-freqs = <390000000 410000000>;
/* pl1 low, pl1 high, pl2 low, pl2 high, pl3 low, pl3 high */
qcom,reject-rate = <5000 5000 5000 5000 5000 5000>;
/* pl1 low, pl1 high, pl2 low, pl2 high, pl3 low, pl3 high */
qcom,response-time-us = <5000 5000 5000 5000 3000 3000>;
/* pl1 low, pl1 high, pl2 low, pl2 high, pl3 low, pl3 high */
qcom,cci-response-time-us = <5000 5000 5000 5000 1000 1000>;
qcom,max-cci-freq = <1090000000>;
};
devfreq_spdm_gov {
compatible = "qcom,gov_spdm_hyp";
interrupt-names = "spdm-irq";
interrupts = <0 192 0>;
};
};