162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * Copyright (c) 2020, The Linux Foundation. All rights reserved. 462306a36Sopenharmony_ci * 562306a36Sopenharmony_ci */ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#include <linux/device.h> 862306a36Sopenharmony_ci#include <linux/interconnect.h> 962306a36Sopenharmony_ci#include <linux/interconnect-provider.h> 1062306a36Sopenharmony_ci#include <linux/mod_devicetable.h> 1162306a36Sopenharmony_ci#include <linux/module.h> 1262306a36Sopenharmony_ci#include <linux/platform_device.h> 1362306a36Sopenharmony_ci#include <dt-bindings/interconnect/qcom,sm8250.h> 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#include "bcm-voter.h" 1662306a36Sopenharmony_ci#include "icc-rpmh.h" 1762306a36Sopenharmony_ci#include "sm8250.h" 1862306a36Sopenharmony_ci 1962306a36Sopenharmony_cistatic struct qcom_icc_node qhm_a1noc_cfg = { 2062306a36Sopenharmony_ci .name = "qhm_a1noc_cfg", 2162306a36Sopenharmony_ci .id = SM8250_MASTER_A1NOC_CFG, 2262306a36Sopenharmony_ci .channels = 1, 2362306a36Sopenharmony_ci .buswidth = 4, 2462306a36Sopenharmony_ci .num_links = 1, 2562306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_A1NOC }, 2662306a36Sopenharmony_ci}; 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_cistatic struct qcom_icc_node qhm_qspi = { 2962306a36Sopenharmony_ci .name = "qhm_qspi", 3062306a36Sopenharmony_ci .id = SM8250_MASTER_QSPI_0, 3162306a36Sopenharmony_ci .channels = 1, 3262306a36Sopenharmony_ci .buswidth = 4, 3362306a36Sopenharmony_ci .num_links = 1, 3462306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 3562306a36Sopenharmony_ci}; 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_cistatic struct qcom_icc_node qhm_qup1 = { 3862306a36Sopenharmony_ci .name = "qhm_qup1", 3962306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_1, 4062306a36Sopenharmony_ci .channels = 1, 4162306a36Sopenharmony_ci .buswidth = 4, 4262306a36Sopenharmony_ci .num_links = 1, 4362306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 4462306a36Sopenharmony_ci}; 4562306a36Sopenharmony_ci 4662306a36Sopenharmony_cistatic struct qcom_icc_node qhm_qup2 = { 4762306a36Sopenharmony_ci .name = "qhm_qup2", 4862306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_2, 4962306a36Sopenharmony_ci .channels = 1, 5062306a36Sopenharmony_ci .buswidth = 4, 5162306a36Sopenharmony_ci .num_links = 1, 5262306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 5362306a36Sopenharmony_ci}; 5462306a36Sopenharmony_ci 5562306a36Sopenharmony_cistatic struct qcom_icc_node qhm_tsif = { 5662306a36Sopenharmony_ci .name = "qhm_tsif", 5762306a36Sopenharmony_ci .id = SM8250_MASTER_TSIF, 5862306a36Sopenharmony_ci .channels = 1, 5962306a36Sopenharmony_ci .buswidth = 4, 6062306a36Sopenharmony_ci .num_links = 1, 6162306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 6262306a36Sopenharmony_ci}; 6362306a36Sopenharmony_ci 6462306a36Sopenharmony_cistatic struct qcom_icc_node xm_pcie3_modem = { 6562306a36Sopenharmony_ci .name = "xm_pcie3_modem", 6662306a36Sopenharmony_ci .id = SM8250_MASTER_PCIE_2, 6762306a36Sopenharmony_ci .channels = 1, 6862306a36Sopenharmony_ci .buswidth = 8, 6962306a36Sopenharmony_ci .num_links = 1, 7062306a36Sopenharmony_ci .links = { SM8250_SLAVE_ANOC_PCIE_GEM_NOC_1 }, 7162306a36Sopenharmony_ci}; 7262306a36Sopenharmony_ci 7362306a36Sopenharmony_cistatic struct qcom_icc_node xm_sdc4 = { 7462306a36Sopenharmony_ci .name = "xm_sdc4", 7562306a36Sopenharmony_ci .id = SM8250_MASTER_SDCC_4, 7662306a36Sopenharmony_ci .channels = 1, 7762306a36Sopenharmony_ci .buswidth = 8, 7862306a36Sopenharmony_ci .num_links = 1, 7962306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 8062306a36Sopenharmony_ci}; 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_cistatic struct qcom_icc_node xm_ufs_mem = { 8362306a36Sopenharmony_ci .name = "xm_ufs_mem", 8462306a36Sopenharmony_ci .id = SM8250_MASTER_UFS_MEM, 8562306a36Sopenharmony_ci .channels = 1, 8662306a36Sopenharmony_ci .buswidth = 8, 8762306a36Sopenharmony_ci .num_links = 1, 8862306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 8962306a36Sopenharmony_ci}; 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_cistatic struct qcom_icc_node xm_usb3_0 = { 9262306a36Sopenharmony_ci .name = "xm_usb3_0", 9362306a36Sopenharmony_ci .id = SM8250_MASTER_USB3, 9462306a36Sopenharmony_ci .channels = 1, 9562306a36Sopenharmony_ci .buswidth = 8, 9662306a36Sopenharmony_ci .num_links = 1, 9762306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 9862306a36Sopenharmony_ci}; 9962306a36Sopenharmony_ci 10062306a36Sopenharmony_cistatic struct qcom_icc_node xm_usb3_1 = { 10162306a36Sopenharmony_ci .name = "xm_usb3_1", 10262306a36Sopenharmony_ci .id = SM8250_MASTER_USB3_1, 10362306a36Sopenharmony_ci .channels = 1, 10462306a36Sopenharmony_ci .buswidth = 8, 10562306a36Sopenharmony_ci .num_links = 1, 10662306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_SLV }, 10762306a36Sopenharmony_ci}; 10862306a36Sopenharmony_ci 10962306a36Sopenharmony_cistatic struct qcom_icc_node qhm_a2noc_cfg = { 11062306a36Sopenharmony_ci .name = "qhm_a2noc_cfg", 11162306a36Sopenharmony_ci .id = SM8250_MASTER_A2NOC_CFG, 11262306a36Sopenharmony_ci .channels = 1, 11362306a36Sopenharmony_ci .buswidth = 4, 11462306a36Sopenharmony_ci .num_links = 1, 11562306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_A2NOC }, 11662306a36Sopenharmony_ci}; 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_cistatic struct qcom_icc_node qhm_qdss_bam = { 11962306a36Sopenharmony_ci .name = "qhm_qdss_bam", 12062306a36Sopenharmony_ci .id = SM8250_MASTER_QDSS_BAM, 12162306a36Sopenharmony_ci .channels = 1, 12262306a36Sopenharmony_ci .buswidth = 4, 12362306a36Sopenharmony_ci .num_links = 1, 12462306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 12562306a36Sopenharmony_ci}; 12662306a36Sopenharmony_ci 12762306a36Sopenharmony_cistatic struct qcom_icc_node qhm_qup0 = { 12862306a36Sopenharmony_ci .name = "qhm_qup0", 12962306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_0, 13062306a36Sopenharmony_ci .channels = 1, 13162306a36Sopenharmony_ci .buswidth = 4, 13262306a36Sopenharmony_ci .num_links = 1, 13362306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 13462306a36Sopenharmony_ci}; 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_cistatic struct qcom_icc_node qnm_cnoc = { 13762306a36Sopenharmony_ci .name = "qnm_cnoc", 13862306a36Sopenharmony_ci .id = SM8250_MASTER_CNOC_A2NOC, 13962306a36Sopenharmony_ci .channels = 1, 14062306a36Sopenharmony_ci .buswidth = 8, 14162306a36Sopenharmony_ci .num_links = 1, 14262306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 14362306a36Sopenharmony_ci}; 14462306a36Sopenharmony_ci 14562306a36Sopenharmony_cistatic struct qcom_icc_node qxm_crypto = { 14662306a36Sopenharmony_ci .name = "qxm_crypto", 14762306a36Sopenharmony_ci .id = SM8250_MASTER_CRYPTO_CORE_0, 14862306a36Sopenharmony_ci .channels = 1, 14962306a36Sopenharmony_ci .buswidth = 8, 15062306a36Sopenharmony_ci .num_links = 1, 15162306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 15262306a36Sopenharmony_ci}; 15362306a36Sopenharmony_ci 15462306a36Sopenharmony_cistatic struct qcom_icc_node qxm_ipa = { 15562306a36Sopenharmony_ci .name = "qxm_ipa", 15662306a36Sopenharmony_ci .id = SM8250_MASTER_IPA, 15762306a36Sopenharmony_ci .channels = 1, 15862306a36Sopenharmony_ci .buswidth = 8, 15962306a36Sopenharmony_ci .num_links = 1, 16062306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 16162306a36Sopenharmony_ci}; 16262306a36Sopenharmony_ci 16362306a36Sopenharmony_cistatic struct qcom_icc_node xm_pcie3_0 = { 16462306a36Sopenharmony_ci .name = "xm_pcie3_0", 16562306a36Sopenharmony_ci .id = SM8250_MASTER_PCIE, 16662306a36Sopenharmony_ci .channels = 1, 16762306a36Sopenharmony_ci .buswidth = 8, 16862306a36Sopenharmony_ci .num_links = 1, 16962306a36Sopenharmony_ci .links = { SM8250_SLAVE_ANOC_PCIE_GEM_NOC }, 17062306a36Sopenharmony_ci}; 17162306a36Sopenharmony_ci 17262306a36Sopenharmony_cistatic struct qcom_icc_node xm_pcie3_1 = { 17362306a36Sopenharmony_ci .name = "xm_pcie3_1", 17462306a36Sopenharmony_ci .id = SM8250_MASTER_PCIE_1, 17562306a36Sopenharmony_ci .channels = 1, 17662306a36Sopenharmony_ci .buswidth = 8, 17762306a36Sopenharmony_ci .num_links = 1, 17862306a36Sopenharmony_ci .links = { SM8250_SLAVE_ANOC_PCIE_GEM_NOC }, 17962306a36Sopenharmony_ci}; 18062306a36Sopenharmony_ci 18162306a36Sopenharmony_cistatic struct qcom_icc_node xm_qdss_etr = { 18262306a36Sopenharmony_ci .name = "xm_qdss_etr", 18362306a36Sopenharmony_ci .id = SM8250_MASTER_QDSS_ETR, 18462306a36Sopenharmony_ci .channels = 1, 18562306a36Sopenharmony_ci .buswidth = 8, 18662306a36Sopenharmony_ci .num_links = 1, 18762306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 18862306a36Sopenharmony_ci}; 18962306a36Sopenharmony_ci 19062306a36Sopenharmony_cistatic struct qcom_icc_node xm_sdc2 = { 19162306a36Sopenharmony_ci .name = "xm_sdc2", 19262306a36Sopenharmony_ci .id = SM8250_MASTER_SDCC_2, 19362306a36Sopenharmony_ci .channels = 1, 19462306a36Sopenharmony_ci .buswidth = 8, 19562306a36Sopenharmony_ci .num_links = 1, 19662306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 19762306a36Sopenharmony_ci}; 19862306a36Sopenharmony_ci 19962306a36Sopenharmony_cistatic struct qcom_icc_node xm_ufs_card = { 20062306a36Sopenharmony_ci .name = "xm_ufs_card", 20162306a36Sopenharmony_ci .id = SM8250_MASTER_UFS_CARD, 20262306a36Sopenharmony_ci .channels = 1, 20362306a36Sopenharmony_ci .buswidth = 8, 20462306a36Sopenharmony_ci .num_links = 1, 20562306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_SLV }, 20662306a36Sopenharmony_ci}; 20762306a36Sopenharmony_ci 20862306a36Sopenharmony_cistatic struct qcom_icc_node qnm_npu = { 20962306a36Sopenharmony_ci .name = "qnm_npu", 21062306a36Sopenharmony_ci .id = SM8250_MASTER_NPU, 21162306a36Sopenharmony_ci .channels = 2, 21262306a36Sopenharmony_ci .buswidth = 32, 21362306a36Sopenharmony_ci .num_links = 1, 21462306a36Sopenharmony_ci .links = { SM8250_SLAVE_CDSP_MEM_NOC }, 21562306a36Sopenharmony_ci}; 21662306a36Sopenharmony_ci 21762306a36Sopenharmony_cistatic struct qcom_icc_node qnm_snoc = { 21862306a36Sopenharmony_ci .name = "qnm_snoc", 21962306a36Sopenharmony_ci .id = SM8250_SNOC_CNOC_MAS, 22062306a36Sopenharmony_ci .channels = 1, 22162306a36Sopenharmony_ci .buswidth = 8, 22262306a36Sopenharmony_ci .num_links = 49, 22362306a36Sopenharmony_ci .links = { SM8250_SLAVE_CDSP_CFG, 22462306a36Sopenharmony_ci SM8250_SLAVE_CAMERA_CFG, 22562306a36Sopenharmony_ci SM8250_SLAVE_TLMM_SOUTH, 22662306a36Sopenharmony_ci SM8250_SLAVE_TLMM_NORTH, 22762306a36Sopenharmony_ci SM8250_SLAVE_SDCC_4, 22862306a36Sopenharmony_ci SM8250_SLAVE_TLMM_WEST, 22962306a36Sopenharmony_ci SM8250_SLAVE_SDCC_2, 23062306a36Sopenharmony_ci SM8250_SLAVE_CNOC_MNOC_CFG, 23162306a36Sopenharmony_ci SM8250_SLAVE_UFS_MEM_CFG, 23262306a36Sopenharmony_ci SM8250_SLAVE_SNOC_CFG, 23362306a36Sopenharmony_ci SM8250_SLAVE_PDM, 23462306a36Sopenharmony_ci SM8250_SLAVE_CX_RDPM, 23562306a36Sopenharmony_ci SM8250_SLAVE_PCIE_1_CFG, 23662306a36Sopenharmony_ci SM8250_SLAVE_A2NOC_CFG, 23762306a36Sopenharmony_ci SM8250_SLAVE_QDSS_CFG, 23862306a36Sopenharmony_ci SM8250_SLAVE_DISPLAY_CFG, 23962306a36Sopenharmony_ci SM8250_SLAVE_PCIE_2_CFG, 24062306a36Sopenharmony_ci SM8250_SLAVE_TCSR, 24162306a36Sopenharmony_ci SM8250_SLAVE_DCC_CFG, 24262306a36Sopenharmony_ci SM8250_SLAVE_CNOC_DDRSS, 24362306a36Sopenharmony_ci SM8250_SLAVE_IPC_ROUTER_CFG, 24462306a36Sopenharmony_ci SM8250_SLAVE_PCIE_0_CFG, 24562306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_MMCX_CFG, 24662306a36Sopenharmony_ci SM8250_SLAVE_NPU_CFG, 24762306a36Sopenharmony_ci SM8250_SLAVE_AHB2PHY_SOUTH, 24862306a36Sopenharmony_ci SM8250_SLAVE_AHB2PHY_NORTH, 24962306a36Sopenharmony_ci SM8250_SLAVE_GRAPHICS_3D_CFG, 25062306a36Sopenharmony_ci SM8250_SLAVE_VENUS_CFG, 25162306a36Sopenharmony_ci SM8250_SLAVE_TSIF, 25262306a36Sopenharmony_ci SM8250_SLAVE_IPA_CFG, 25362306a36Sopenharmony_ci SM8250_SLAVE_IMEM_CFG, 25462306a36Sopenharmony_ci SM8250_SLAVE_USB3, 25562306a36Sopenharmony_ci SM8250_SLAVE_SERVICE_CNOC, 25662306a36Sopenharmony_ci SM8250_SLAVE_UFS_CARD_CFG, 25762306a36Sopenharmony_ci SM8250_SLAVE_USB3_1, 25862306a36Sopenharmony_ci SM8250_SLAVE_LPASS, 25962306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_CX_CFG, 26062306a36Sopenharmony_ci SM8250_SLAVE_A1NOC_CFG, 26162306a36Sopenharmony_ci SM8250_SLAVE_AOSS, 26262306a36Sopenharmony_ci SM8250_SLAVE_PRNG, 26362306a36Sopenharmony_ci SM8250_SLAVE_VSENSE_CTRL_CFG, 26462306a36Sopenharmony_ci SM8250_SLAVE_QSPI_0, 26562306a36Sopenharmony_ci SM8250_SLAVE_CRYPTO_0_CFG, 26662306a36Sopenharmony_ci SM8250_SLAVE_PIMEM_CFG, 26762306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_MX_CFG, 26862306a36Sopenharmony_ci SM8250_SLAVE_QUP_0, 26962306a36Sopenharmony_ci SM8250_SLAVE_QUP_1, 27062306a36Sopenharmony_ci SM8250_SLAVE_QUP_2, 27162306a36Sopenharmony_ci SM8250_SLAVE_CLK_CTL 27262306a36Sopenharmony_ci }, 27362306a36Sopenharmony_ci}; 27462306a36Sopenharmony_ci 27562306a36Sopenharmony_cistatic struct qcom_icc_node xm_qdss_dap = { 27662306a36Sopenharmony_ci .name = "xm_qdss_dap", 27762306a36Sopenharmony_ci .id = SM8250_MASTER_QDSS_DAP, 27862306a36Sopenharmony_ci .channels = 1, 27962306a36Sopenharmony_ci .buswidth = 8, 28062306a36Sopenharmony_ci .num_links = 50, 28162306a36Sopenharmony_ci .links = { SM8250_SLAVE_CDSP_CFG, 28262306a36Sopenharmony_ci SM8250_SLAVE_CAMERA_CFG, 28362306a36Sopenharmony_ci SM8250_SLAVE_TLMM_SOUTH, 28462306a36Sopenharmony_ci SM8250_SLAVE_TLMM_NORTH, 28562306a36Sopenharmony_ci SM8250_SLAVE_SDCC_4, 28662306a36Sopenharmony_ci SM8250_SLAVE_TLMM_WEST, 28762306a36Sopenharmony_ci SM8250_SLAVE_SDCC_2, 28862306a36Sopenharmony_ci SM8250_SLAVE_CNOC_MNOC_CFG, 28962306a36Sopenharmony_ci SM8250_SLAVE_UFS_MEM_CFG, 29062306a36Sopenharmony_ci SM8250_SLAVE_SNOC_CFG, 29162306a36Sopenharmony_ci SM8250_SLAVE_PDM, 29262306a36Sopenharmony_ci SM8250_SLAVE_CX_RDPM, 29362306a36Sopenharmony_ci SM8250_SLAVE_PCIE_1_CFG, 29462306a36Sopenharmony_ci SM8250_SLAVE_A2NOC_CFG, 29562306a36Sopenharmony_ci SM8250_SLAVE_QDSS_CFG, 29662306a36Sopenharmony_ci SM8250_SLAVE_DISPLAY_CFG, 29762306a36Sopenharmony_ci SM8250_SLAVE_PCIE_2_CFG, 29862306a36Sopenharmony_ci SM8250_SLAVE_TCSR, 29962306a36Sopenharmony_ci SM8250_SLAVE_DCC_CFG, 30062306a36Sopenharmony_ci SM8250_SLAVE_CNOC_DDRSS, 30162306a36Sopenharmony_ci SM8250_SLAVE_IPC_ROUTER_CFG, 30262306a36Sopenharmony_ci SM8250_SLAVE_CNOC_A2NOC, 30362306a36Sopenharmony_ci SM8250_SLAVE_PCIE_0_CFG, 30462306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_MMCX_CFG, 30562306a36Sopenharmony_ci SM8250_SLAVE_NPU_CFG, 30662306a36Sopenharmony_ci SM8250_SLAVE_AHB2PHY_SOUTH, 30762306a36Sopenharmony_ci SM8250_SLAVE_AHB2PHY_NORTH, 30862306a36Sopenharmony_ci SM8250_SLAVE_GRAPHICS_3D_CFG, 30962306a36Sopenharmony_ci SM8250_SLAVE_VENUS_CFG, 31062306a36Sopenharmony_ci SM8250_SLAVE_TSIF, 31162306a36Sopenharmony_ci SM8250_SLAVE_IPA_CFG, 31262306a36Sopenharmony_ci SM8250_SLAVE_IMEM_CFG, 31362306a36Sopenharmony_ci SM8250_SLAVE_USB3, 31462306a36Sopenharmony_ci SM8250_SLAVE_SERVICE_CNOC, 31562306a36Sopenharmony_ci SM8250_SLAVE_UFS_CARD_CFG, 31662306a36Sopenharmony_ci SM8250_SLAVE_USB3_1, 31762306a36Sopenharmony_ci SM8250_SLAVE_LPASS, 31862306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_CX_CFG, 31962306a36Sopenharmony_ci SM8250_SLAVE_A1NOC_CFG, 32062306a36Sopenharmony_ci SM8250_SLAVE_AOSS, 32162306a36Sopenharmony_ci SM8250_SLAVE_PRNG, 32262306a36Sopenharmony_ci SM8250_SLAVE_VSENSE_CTRL_CFG, 32362306a36Sopenharmony_ci SM8250_SLAVE_QSPI_0, 32462306a36Sopenharmony_ci SM8250_SLAVE_CRYPTO_0_CFG, 32562306a36Sopenharmony_ci SM8250_SLAVE_PIMEM_CFG, 32662306a36Sopenharmony_ci SM8250_SLAVE_RBCPR_MX_CFG, 32762306a36Sopenharmony_ci SM8250_SLAVE_QUP_0, 32862306a36Sopenharmony_ci SM8250_SLAVE_QUP_1, 32962306a36Sopenharmony_ci SM8250_SLAVE_QUP_2, 33062306a36Sopenharmony_ci SM8250_SLAVE_CLK_CTL 33162306a36Sopenharmony_ci }, 33262306a36Sopenharmony_ci}; 33362306a36Sopenharmony_ci 33462306a36Sopenharmony_cistatic struct qcom_icc_node qhm_cnoc_dc_noc = { 33562306a36Sopenharmony_ci .name = "qhm_cnoc_dc_noc", 33662306a36Sopenharmony_ci .id = SM8250_MASTER_CNOC_DC_NOC, 33762306a36Sopenharmony_ci .channels = 1, 33862306a36Sopenharmony_ci .buswidth = 4, 33962306a36Sopenharmony_ci .num_links = 2, 34062306a36Sopenharmony_ci .links = { SM8250_SLAVE_GEM_NOC_CFG, 34162306a36Sopenharmony_ci SM8250_SLAVE_LLCC_CFG 34262306a36Sopenharmony_ci }, 34362306a36Sopenharmony_ci}; 34462306a36Sopenharmony_ci 34562306a36Sopenharmony_cistatic struct qcom_icc_node alm_gpu_tcu = { 34662306a36Sopenharmony_ci .name = "alm_gpu_tcu", 34762306a36Sopenharmony_ci .id = SM8250_MASTER_GPU_TCU, 34862306a36Sopenharmony_ci .channels = 1, 34962306a36Sopenharmony_ci .buswidth = 8, 35062306a36Sopenharmony_ci .num_links = 2, 35162306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 35262306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC 35362306a36Sopenharmony_ci }, 35462306a36Sopenharmony_ci}; 35562306a36Sopenharmony_ci 35662306a36Sopenharmony_cistatic struct qcom_icc_node alm_sys_tcu = { 35762306a36Sopenharmony_ci .name = "alm_sys_tcu", 35862306a36Sopenharmony_ci .id = SM8250_MASTER_SYS_TCU, 35962306a36Sopenharmony_ci .channels = 1, 36062306a36Sopenharmony_ci .buswidth = 8, 36162306a36Sopenharmony_ci .num_links = 2, 36262306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 36362306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC 36462306a36Sopenharmony_ci }, 36562306a36Sopenharmony_ci}; 36662306a36Sopenharmony_ci 36762306a36Sopenharmony_cistatic struct qcom_icc_node chm_apps = { 36862306a36Sopenharmony_ci .name = "chm_apps", 36962306a36Sopenharmony_ci .id = SM8250_MASTER_AMPSS_M0, 37062306a36Sopenharmony_ci .channels = 2, 37162306a36Sopenharmony_ci .buswidth = 32, 37262306a36Sopenharmony_ci .num_links = 3, 37362306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 37462306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC, 37562306a36Sopenharmony_ci SM8250_SLAVE_MEM_NOC_PCIE_SNOC 37662306a36Sopenharmony_ci }, 37762306a36Sopenharmony_ci}; 37862306a36Sopenharmony_ci 37962306a36Sopenharmony_cistatic struct qcom_icc_node qhm_gemnoc_cfg = { 38062306a36Sopenharmony_ci .name = "qhm_gemnoc_cfg", 38162306a36Sopenharmony_ci .id = SM8250_MASTER_GEM_NOC_CFG, 38262306a36Sopenharmony_ci .channels = 1, 38362306a36Sopenharmony_ci .buswidth = 4, 38462306a36Sopenharmony_ci .num_links = 3, 38562306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_GEM_NOC_2, 38662306a36Sopenharmony_ci SM8250_SLAVE_SERVICE_GEM_NOC_1, 38762306a36Sopenharmony_ci SM8250_SLAVE_SERVICE_GEM_NOC 38862306a36Sopenharmony_ci }, 38962306a36Sopenharmony_ci}; 39062306a36Sopenharmony_ci 39162306a36Sopenharmony_cistatic struct qcom_icc_node qnm_cmpnoc = { 39262306a36Sopenharmony_ci .name = "qnm_cmpnoc", 39362306a36Sopenharmony_ci .id = SM8250_MASTER_COMPUTE_NOC, 39462306a36Sopenharmony_ci .channels = 2, 39562306a36Sopenharmony_ci .buswidth = 32, 39662306a36Sopenharmony_ci .num_links = 2, 39762306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 39862306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC 39962306a36Sopenharmony_ci }, 40062306a36Sopenharmony_ci}; 40162306a36Sopenharmony_ci 40262306a36Sopenharmony_cistatic struct qcom_icc_node qnm_gpu = { 40362306a36Sopenharmony_ci .name = "qnm_gpu", 40462306a36Sopenharmony_ci .id = SM8250_MASTER_GRAPHICS_3D, 40562306a36Sopenharmony_ci .channels = 2, 40662306a36Sopenharmony_ci .buswidth = 32, 40762306a36Sopenharmony_ci .num_links = 2, 40862306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 40962306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC }, 41062306a36Sopenharmony_ci}; 41162306a36Sopenharmony_ci 41262306a36Sopenharmony_cistatic struct qcom_icc_node qnm_mnoc_hf = { 41362306a36Sopenharmony_ci .name = "qnm_mnoc_hf", 41462306a36Sopenharmony_ci .id = SM8250_MASTER_MNOC_HF_MEM_NOC, 41562306a36Sopenharmony_ci .channels = 2, 41662306a36Sopenharmony_ci .buswidth = 32, 41762306a36Sopenharmony_ci .num_links = 1, 41862306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC }, 41962306a36Sopenharmony_ci}; 42062306a36Sopenharmony_ci 42162306a36Sopenharmony_cistatic struct qcom_icc_node qnm_mnoc_sf = { 42262306a36Sopenharmony_ci .name = "qnm_mnoc_sf", 42362306a36Sopenharmony_ci .id = SM8250_MASTER_MNOC_SF_MEM_NOC, 42462306a36Sopenharmony_ci .channels = 2, 42562306a36Sopenharmony_ci .buswidth = 32, 42662306a36Sopenharmony_ci .num_links = 2, 42762306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 42862306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC 42962306a36Sopenharmony_ci }, 43062306a36Sopenharmony_ci}; 43162306a36Sopenharmony_ci 43262306a36Sopenharmony_cistatic struct qcom_icc_node qnm_pcie = { 43362306a36Sopenharmony_ci .name = "qnm_pcie", 43462306a36Sopenharmony_ci .id = SM8250_MASTER_ANOC_PCIE_GEM_NOC, 43562306a36Sopenharmony_ci .channels = 1, 43662306a36Sopenharmony_ci .buswidth = 16, 43762306a36Sopenharmony_ci .num_links = 2, 43862306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 43962306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC 44062306a36Sopenharmony_ci }, 44162306a36Sopenharmony_ci}; 44262306a36Sopenharmony_ci 44362306a36Sopenharmony_cistatic struct qcom_icc_node qnm_snoc_gc = { 44462306a36Sopenharmony_ci .name = "qnm_snoc_gc", 44562306a36Sopenharmony_ci .id = SM8250_MASTER_SNOC_GC_MEM_NOC, 44662306a36Sopenharmony_ci .channels = 1, 44762306a36Sopenharmony_ci .buswidth = 8, 44862306a36Sopenharmony_ci .num_links = 1, 44962306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC }, 45062306a36Sopenharmony_ci}; 45162306a36Sopenharmony_ci 45262306a36Sopenharmony_cistatic struct qcom_icc_node qnm_snoc_sf = { 45362306a36Sopenharmony_ci .name = "qnm_snoc_sf", 45462306a36Sopenharmony_ci .id = SM8250_MASTER_SNOC_SF_MEM_NOC, 45562306a36Sopenharmony_ci .channels = 1, 45662306a36Sopenharmony_ci .buswidth = 16, 45762306a36Sopenharmony_ci .num_links = 3, 45862306a36Sopenharmony_ci .links = { SM8250_SLAVE_LLCC, 45962306a36Sopenharmony_ci SM8250_SLAVE_GEM_NOC_SNOC, 46062306a36Sopenharmony_ci SM8250_SLAVE_MEM_NOC_PCIE_SNOC 46162306a36Sopenharmony_ci }, 46262306a36Sopenharmony_ci}; 46362306a36Sopenharmony_ci 46462306a36Sopenharmony_cistatic struct qcom_icc_node llcc_mc = { 46562306a36Sopenharmony_ci .name = "llcc_mc", 46662306a36Sopenharmony_ci .id = SM8250_MASTER_LLCC, 46762306a36Sopenharmony_ci .channels = 4, 46862306a36Sopenharmony_ci .buswidth = 4, 46962306a36Sopenharmony_ci .num_links = 1, 47062306a36Sopenharmony_ci .links = { SM8250_SLAVE_EBI_CH0 }, 47162306a36Sopenharmony_ci}; 47262306a36Sopenharmony_ci 47362306a36Sopenharmony_cistatic struct qcom_icc_node qhm_mnoc_cfg = { 47462306a36Sopenharmony_ci .name = "qhm_mnoc_cfg", 47562306a36Sopenharmony_ci .id = SM8250_MASTER_CNOC_MNOC_CFG, 47662306a36Sopenharmony_ci .channels = 1, 47762306a36Sopenharmony_ci .buswidth = 4, 47862306a36Sopenharmony_ci .num_links = 1, 47962306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_MNOC }, 48062306a36Sopenharmony_ci}; 48162306a36Sopenharmony_ci 48262306a36Sopenharmony_cistatic struct qcom_icc_node qnm_camnoc_hf = { 48362306a36Sopenharmony_ci .name = "qnm_camnoc_hf", 48462306a36Sopenharmony_ci .id = SM8250_MASTER_CAMNOC_HF, 48562306a36Sopenharmony_ci .channels = 2, 48662306a36Sopenharmony_ci .buswidth = 32, 48762306a36Sopenharmony_ci .num_links = 1, 48862306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_HF_MEM_NOC }, 48962306a36Sopenharmony_ci}; 49062306a36Sopenharmony_ci 49162306a36Sopenharmony_cistatic struct qcom_icc_node qnm_camnoc_icp = { 49262306a36Sopenharmony_ci .name = "qnm_camnoc_icp", 49362306a36Sopenharmony_ci .id = SM8250_MASTER_CAMNOC_ICP, 49462306a36Sopenharmony_ci .channels = 1, 49562306a36Sopenharmony_ci .buswidth = 8, 49662306a36Sopenharmony_ci .num_links = 1, 49762306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 49862306a36Sopenharmony_ci}; 49962306a36Sopenharmony_ci 50062306a36Sopenharmony_cistatic struct qcom_icc_node qnm_camnoc_sf = { 50162306a36Sopenharmony_ci .name = "qnm_camnoc_sf", 50262306a36Sopenharmony_ci .id = SM8250_MASTER_CAMNOC_SF, 50362306a36Sopenharmony_ci .channels = 2, 50462306a36Sopenharmony_ci .buswidth = 32, 50562306a36Sopenharmony_ci .num_links = 1, 50662306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 50762306a36Sopenharmony_ci}; 50862306a36Sopenharmony_ci 50962306a36Sopenharmony_cistatic struct qcom_icc_node qnm_video0 = { 51062306a36Sopenharmony_ci .name = "qnm_video0", 51162306a36Sopenharmony_ci .id = SM8250_MASTER_VIDEO_P0, 51262306a36Sopenharmony_ci .channels = 1, 51362306a36Sopenharmony_ci .buswidth = 32, 51462306a36Sopenharmony_ci .num_links = 1, 51562306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 51662306a36Sopenharmony_ci}; 51762306a36Sopenharmony_ci 51862306a36Sopenharmony_cistatic struct qcom_icc_node qnm_video1 = { 51962306a36Sopenharmony_ci .name = "qnm_video1", 52062306a36Sopenharmony_ci .id = SM8250_MASTER_VIDEO_P1, 52162306a36Sopenharmony_ci .channels = 1, 52262306a36Sopenharmony_ci .buswidth = 32, 52362306a36Sopenharmony_ci .num_links = 1, 52462306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 52562306a36Sopenharmony_ci}; 52662306a36Sopenharmony_ci 52762306a36Sopenharmony_cistatic struct qcom_icc_node qnm_video_cvp = { 52862306a36Sopenharmony_ci .name = "qnm_video_cvp", 52962306a36Sopenharmony_ci .id = SM8250_MASTER_VIDEO_PROC, 53062306a36Sopenharmony_ci .channels = 1, 53162306a36Sopenharmony_ci .buswidth = 32, 53262306a36Sopenharmony_ci .num_links = 1, 53362306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 53462306a36Sopenharmony_ci}; 53562306a36Sopenharmony_ci 53662306a36Sopenharmony_cistatic struct qcom_icc_node qxm_mdp0 = { 53762306a36Sopenharmony_ci .name = "qxm_mdp0", 53862306a36Sopenharmony_ci .id = SM8250_MASTER_MDP_PORT0, 53962306a36Sopenharmony_ci .channels = 1, 54062306a36Sopenharmony_ci .buswidth = 32, 54162306a36Sopenharmony_ci .num_links = 1, 54262306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_HF_MEM_NOC }, 54362306a36Sopenharmony_ci}; 54462306a36Sopenharmony_ci 54562306a36Sopenharmony_cistatic struct qcom_icc_node qxm_mdp1 = { 54662306a36Sopenharmony_ci .name = "qxm_mdp1", 54762306a36Sopenharmony_ci .id = SM8250_MASTER_MDP_PORT1, 54862306a36Sopenharmony_ci .channels = 1, 54962306a36Sopenharmony_ci .buswidth = 32, 55062306a36Sopenharmony_ci .num_links = 1, 55162306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_HF_MEM_NOC }, 55262306a36Sopenharmony_ci}; 55362306a36Sopenharmony_ci 55462306a36Sopenharmony_cistatic struct qcom_icc_node qxm_rot = { 55562306a36Sopenharmony_ci .name = "qxm_rot", 55662306a36Sopenharmony_ci .id = SM8250_MASTER_ROTATOR, 55762306a36Sopenharmony_ci .channels = 1, 55862306a36Sopenharmony_ci .buswidth = 32, 55962306a36Sopenharmony_ci .num_links = 1, 56062306a36Sopenharmony_ci .links = { SM8250_SLAVE_MNOC_SF_MEM_NOC }, 56162306a36Sopenharmony_ci}; 56262306a36Sopenharmony_ci 56362306a36Sopenharmony_cistatic struct qcom_icc_node amm_npu_sys = { 56462306a36Sopenharmony_ci .name = "amm_npu_sys", 56562306a36Sopenharmony_ci .id = SM8250_MASTER_NPU_SYS, 56662306a36Sopenharmony_ci .channels = 4, 56762306a36Sopenharmony_ci .buswidth = 32, 56862306a36Sopenharmony_ci .num_links = 1, 56962306a36Sopenharmony_ci .links = { SM8250_SLAVE_NPU_COMPUTE_NOC }, 57062306a36Sopenharmony_ci}; 57162306a36Sopenharmony_ci 57262306a36Sopenharmony_cistatic struct qcom_icc_node amm_npu_sys_cdp_w = { 57362306a36Sopenharmony_ci .name = "amm_npu_sys_cdp_w", 57462306a36Sopenharmony_ci .id = SM8250_MASTER_NPU_CDP, 57562306a36Sopenharmony_ci .channels = 2, 57662306a36Sopenharmony_ci .buswidth = 16, 57762306a36Sopenharmony_ci .num_links = 1, 57862306a36Sopenharmony_ci .links = { SM8250_SLAVE_NPU_COMPUTE_NOC }, 57962306a36Sopenharmony_ci}; 58062306a36Sopenharmony_ci 58162306a36Sopenharmony_cistatic struct qcom_icc_node qhm_cfg = { 58262306a36Sopenharmony_ci .name = "qhm_cfg", 58362306a36Sopenharmony_ci .id = SM8250_MASTER_NPU_NOC_CFG, 58462306a36Sopenharmony_ci .channels = 1, 58562306a36Sopenharmony_ci .buswidth = 4, 58662306a36Sopenharmony_ci .num_links = 9, 58762306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_NPU_NOC, 58862306a36Sopenharmony_ci SM8250_SLAVE_ISENSE_CFG, 58962306a36Sopenharmony_ci SM8250_SLAVE_NPU_LLM_CFG, 59062306a36Sopenharmony_ci SM8250_SLAVE_NPU_INT_DMA_BWMON_CFG, 59162306a36Sopenharmony_ci SM8250_SLAVE_NPU_CP, 59262306a36Sopenharmony_ci SM8250_SLAVE_NPU_TCM, 59362306a36Sopenharmony_ci SM8250_SLAVE_NPU_CAL_DP0, 59462306a36Sopenharmony_ci SM8250_SLAVE_NPU_CAL_DP1, 59562306a36Sopenharmony_ci SM8250_SLAVE_NPU_DPM 59662306a36Sopenharmony_ci }, 59762306a36Sopenharmony_ci}; 59862306a36Sopenharmony_ci 59962306a36Sopenharmony_cistatic struct qcom_icc_node qhm_snoc_cfg = { 60062306a36Sopenharmony_ci .name = "qhm_snoc_cfg", 60162306a36Sopenharmony_ci .id = SM8250_MASTER_SNOC_CFG, 60262306a36Sopenharmony_ci .channels = 1, 60362306a36Sopenharmony_ci .buswidth = 4, 60462306a36Sopenharmony_ci .num_links = 1, 60562306a36Sopenharmony_ci .links = { SM8250_SLAVE_SERVICE_SNOC }, 60662306a36Sopenharmony_ci}; 60762306a36Sopenharmony_ci 60862306a36Sopenharmony_cistatic struct qcom_icc_node qnm_aggre1_noc = { 60962306a36Sopenharmony_ci .name = "qnm_aggre1_noc", 61062306a36Sopenharmony_ci .id = SM8250_A1NOC_SNOC_MAS, 61162306a36Sopenharmony_ci .channels = 1, 61262306a36Sopenharmony_ci .buswidth = 16, 61362306a36Sopenharmony_ci .num_links = 1, 61462306a36Sopenharmony_ci .links = { SM8250_SLAVE_SNOC_GEM_NOC_SF }, 61562306a36Sopenharmony_ci}; 61662306a36Sopenharmony_ci 61762306a36Sopenharmony_cistatic struct qcom_icc_node qnm_aggre2_noc = { 61862306a36Sopenharmony_ci .name = "qnm_aggre2_noc", 61962306a36Sopenharmony_ci .id = SM8250_A2NOC_SNOC_MAS, 62062306a36Sopenharmony_ci .channels = 1, 62162306a36Sopenharmony_ci .buswidth = 16, 62262306a36Sopenharmony_ci .num_links = 1, 62362306a36Sopenharmony_ci .links = { SM8250_SLAVE_SNOC_GEM_NOC_SF }, 62462306a36Sopenharmony_ci}; 62562306a36Sopenharmony_ci 62662306a36Sopenharmony_cistatic struct qcom_icc_node qnm_gemnoc = { 62762306a36Sopenharmony_ci .name = "qnm_gemnoc", 62862306a36Sopenharmony_ci .id = SM8250_MASTER_GEM_NOC_SNOC, 62962306a36Sopenharmony_ci .channels = 1, 63062306a36Sopenharmony_ci .buswidth = 16, 63162306a36Sopenharmony_ci .num_links = 6, 63262306a36Sopenharmony_ci .links = { SM8250_SLAVE_PIMEM, 63362306a36Sopenharmony_ci SM8250_SLAVE_OCIMEM, 63462306a36Sopenharmony_ci SM8250_SLAVE_APPSS, 63562306a36Sopenharmony_ci SM8250_SNOC_CNOC_SLV, 63662306a36Sopenharmony_ci SM8250_SLAVE_TCU, 63762306a36Sopenharmony_ci SM8250_SLAVE_QDSS_STM 63862306a36Sopenharmony_ci }, 63962306a36Sopenharmony_ci}; 64062306a36Sopenharmony_ci 64162306a36Sopenharmony_cistatic struct qcom_icc_node qnm_gemnoc_pcie = { 64262306a36Sopenharmony_ci .name = "qnm_gemnoc_pcie", 64362306a36Sopenharmony_ci .id = SM8250_MASTER_GEM_NOC_PCIE_SNOC, 64462306a36Sopenharmony_ci .channels = 1, 64562306a36Sopenharmony_ci .buswidth = 8, 64662306a36Sopenharmony_ci .num_links = 3, 64762306a36Sopenharmony_ci .links = { SM8250_SLAVE_PCIE_2, 64862306a36Sopenharmony_ci SM8250_SLAVE_PCIE_0, 64962306a36Sopenharmony_ci SM8250_SLAVE_PCIE_1 65062306a36Sopenharmony_ci }, 65162306a36Sopenharmony_ci}; 65262306a36Sopenharmony_ci 65362306a36Sopenharmony_cistatic struct qcom_icc_node qxm_pimem = { 65462306a36Sopenharmony_ci .name = "qxm_pimem", 65562306a36Sopenharmony_ci .id = SM8250_MASTER_PIMEM, 65662306a36Sopenharmony_ci .channels = 1, 65762306a36Sopenharmony_ci .buswidth = 8, 65862306a36Sopenharmony_ci .num_links = 1, 65962306a36Sopenharmony_ci .links = { SM8250_SLAVE_SNOC_GEM_NOC_GC }, 66062306a36Sopenharmony_ci}; 66162306a36Sopenharmony_ci 66262306a36Sopenharmony_cistatic struct qcom_icc_node xm_gic = { 66362306a36Sopenharmony_ci .name = "xm_gic", 66462306a36Sopenharmony_ci .id = SM8250_MASTER_GIC, 66562306a36Sopenharmony_ci .channels = 1, 66662306a36Sopenharmony_ci .buswidth = 8, 66762306a36Sopenharmony_ci .num_links = 1, 66862306a36Sopenharmony_ci .links = { SM8250_SLAVE_SNOC_GEM_NOC_GC }, 66962306a36Sopenharmony_ci}; 67062306a36Sopenharmony_ci 67162306a36Sopenharmony_cistatic struct qcom_icc_node qns_a1noc_snoc = { 67262306a36Sopenharmony_ci .name = "qns_a1noc_snoc", 67362306a36Sopenharmony_ci .id = SM8250_A1NOC_SNOC_SLV, 67462306a36Sopenharmony_ci .channels = 1, 67562306a36Sopenharmony_ci .buswidth = 16, 67662306a36Sopenharmony_ci .num_links = 1, 67762306a36Sopenharmony_ci .links = { SM8250_A1NOC_SNOC_MAS }, 67862306a36Sopenharmony_ci}; 67962306a36Sopenharmony_ci 68062306a36Sopenharmony_cistatic struct qcom_icc_node qns_pcie_modem_mem_noc = { 68162306a36Sopenharmony_ci .name = "qns_pcie_modem_mem_noc", 68262306a36Sopenharmony_ci .id = SM8250_SLAVE_ANOC_PCIE_GEM_NOC_1, 68362306a36Sopenharmony_ci .channels = 1, 68462306a36Sopenharmony_ci .buswidth = 16, 68562306a36Sopenharmony_ci .num_links = 1, 68662306a36Sopenharmony_ci .links = { SM8250_MASTER_ANOC_PCIE_GEM_NOC }, 68762306a36Sopenharmony_ci}; 68862306a36Sopenharmony_ci 68962306a36Sopenharmony_cistatic struct qcom_icc_node srvc_aggre1_noc = { 69062306a36Sopenharmony_ci .name = "srvc_aggre1_noc", 69162306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_A1NOC, 69262306a36Sopenharmony_ci .channels = 1, 69362306a36Sopenharmony_ci .buswidth = 4, 69462306a36Sopenharmony_ci}; 69562306a36Sopenharmony_ci 69662306a36Sopenharmony_cistatic struct qcom_icc_node qns_a2noc_snoc = { 69762306a36Sopenharmony_ci .name = "qns_a2noc_snoc", 69862306a36Sopenharmony_ci .id = SM8250_A2NOC_SNOC_SLV, 69962306a36Sopenharmony_ci .channels = 1, 70062306a36Sopenharmony_ci .buswidth = 16, 70162306a36Sopenharmony_ci .num_links = 1, 70262306a36Sopenharmony_ci .links = { SM8250_A2NOC_SNOC_MAS }, 70362306a36Sopenharmony_ci}; 70462306a36Sopenharmony_ci 70562306a36Sopenharmony_cistatic struct qcom_icc_node qns_pcie_mem_noc = { 70662306a36Sopenharmony_ci .name = "qns_pcie_mem_noc", 70762306a36Sopenharmony_ci .id = SM8250_SLAVE_ANOC_PCIE_GEM_NOC, 70862306a36Sopenharmony_ci .channels = 1, 70962306a36Sopenharmony_ci .buswidth = 16, 71062306a36Sopenharmony_ci .num_links = 1, 71162306a36Sopenharmony_ci .links = { SM8250_MASTER_ANOC_PCIE_GEM_NOC }, 71262306a36Sopenharmony_ci}; 71362306a36Sopenharmony_ci 71462306a36Sopenharmony_cistatic struct qcom_icc_node srvc_aggre2_noc = { 71562306a36Sopenharmony_ci .name = "srvc_aggre2_noc", 71662306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_A2NOC, 71762306a36Sopenharmony_ci .channels = 1, 71862306a36Sopenharmony_ci .buswidth = 4, 71962306a36Sopenharmony_ci}; 72062306a36Sopenharmony_ci 72162306a36Sopenharmony_cistatic struct qcom_icc_node qns_cdsp_mem_noc = { 72262306a36Sopenharmony_ci .name = "qns_cdsp_mem_noc", 72362306a36Sopenharmony_ci .id = SM8250_SLAVE_CDSP_MEM_NOC, 72462306a36Sopenharmony_ci .channels = 2, 72562306a36Sopenharmony_ci .buswidth = 32, 72662306a36Sopenharmony_ci .num_links = 1, 72762306a36Sopenharmony_ci .links = { SM8250_MASTER_COMPUTE_NOC }, 72862306a36Sopenharmony_ci}; 72962306a36Sopenharmony_ci 73062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_a1_noc_cfg = { 73162306a36Sopenharmony_ci .name = "qhs_a1_noc_cfg", 73262306a36Sopenharmony_ci .id = SM8250_SLAVE_A1NOC_CFG, 73362306a36Sopenharmony_ci .channels = 1, 73462306a36Sopenharmony_ci .buswidth = 4, 73562306a36Sopenharmony_ci .num_links = 1, 73662306a36Sopenharmony_ci .links = { SM8250_MASTER_A1NOC_CFG }, 73762306a36Sopenharmony_ci}; 73862306a36Sopenharmony_ci 73962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_a2_noc_cfg = { 74062306a36Sopenharmony_ci .name = "qhs_a2_noc_cfg", 74162306a36Sopenharmony_ci .id = SM8250_SLAVE_A2NOC_CFG, 74262306a36Sopenharmony_ci .channels = 1, 74362306a36Sopenharmony_ci .buswidth = 4, 74462306a36Sopenharmony_ci .num_links = 1, 74562306a36Sopenharmony_ci .links = { SM8250_MASTER_A2NOC_CFG }, 74662306a36Sopenharmony_ci}; 74762306a36Sopenharmony_ci 74862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ahb2phy0 = { 74962306a36Sopenharmony_ci .name = "qhs_ahb2phy0", 75062306a36Sopenharmony_ci .id = SM8250_SLAVE_AHB2PHY_SOUTH, 75162306a36Sopenharmony_ci .channels = 1, 75262306a36Sopenharmony_ci .buswidth = 4, 75362306a36Sopenharmony_ci}; 75462306a36Sopenharmony_ci 75562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ahb2phy1 = { 75662306a36Sopenharmony_ci .name = "qhs_ahb2phy1", 75762306a36Sopenharmony_ci .id = SM8250_SLAVE_AHB2PHY_NORTH, 75862306a36Sopenharmony_ci .channels = 1, 75962306a36Sopenharmony_ci .buswidth = 4, 76062306a36Sopenharmony_ci}; 76162306a36Sopenharmony_ci 76262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_aoss = { 76362306a36Sopenharmony_ci .name = "qhs_aoss", 76462306a36Sopenharmony_ci .id = SM8250_SLAVE_AOSS, 76562306a36Sopenharmony_ci .channels = 1, 76662306a36Sopenharmony_ci .buswidth = 4, 76762306a36Sopenharmony_ci}; 76862306a36Sopenharmony_ci 76962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_camera_cfg = { 77062306a36Sopenharmony_ci .name = "qhs_camera_cfg", 77162306a36Sopenharmony_ci .id = SM8250_SLAVE_CAMERA_CFG, 77262306a36Sopenharmony_ci .channels = 1, 77362306a36Sopenharmony_ci .buswidth = 4, 77462306a36Sopenharmony_ci}; 77562306a36Sopenharmony_ci 77662306a36Sopenharmony_cistatic struct qcom_icc_node qhs_clk_ctl = { 77762306a36Sopenharmony_ci .name = "qhs_clk_ctl", 77862306a36Sopenharmony_ci .id = SM8250_SLAVE_CLK_CTL, 77962306a36Sopenharmony_ci .channels = 1, 78062306a36Sopenharmony_ci .buswidth = 4, 78162306a36Sopenharmony_ci}; 78262306a36Sopenharmony_ci 78362306a36Sopenharmony_cistatic struct qcom_icc_node qhs_compute_dsp = { 78462306a36Sopenharmony_ci .name = "qhs_compute_dsp", 78562306a36Sopenharmony_ci .id = SM8250_SLAVE_CDSP_CFG, 78662306a36Sopenharmony_ci .channels = 1, 78762306a36Sopenharmony_ci .buswidth = 4, 78862306a36Sopenharmony_ci}; 78962306a36Sopenharmony_ci 79062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cpr_cx = { 79162306a36Sopenharmony_ci .name = "qhs_cpr_cx", 79262306a36Sopenharmony_ci .id = SM8250_SLAVE_RBCPR_CX_CFG, 79362306a36Sopenharmony_ci .channels = 1, 79462306a36Sopenharmony_ci .buswidth = 4, 79562306a36Sopenharmony_ci}; 79662306a36Sopenharmony_ci 79762306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cpr_mmcx = { 79862306a36Sopenharmony_ci .name = "qhs_cpr_mmcx", 79962306a36Sopenharmony_ci .id = SM8250_SLAVE_RBCPR_MMCX_CFG, 80062306a36Sopenharmony_ci .channels = 1, 80162306a36Sopenharmony_ci .buswidth = 4, 80262306a36Sopenharmony_ci}; 80362306a36Sopenharmony_ci 80462306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cpr_mx = { 80562306a36Sopenharmony_ci .name = "qhs_cpr_mx", 80662306a36Sopenharmony_ci .id = SM8250_SLAVE_RBCPR_MX_CFG, 80762306a36Sopenharmony_ci .channels = 1, 80862306a36Sopenharmony_ci .buswidth = 4, 80962306a36Sopenharmony_ci}; 81062306a36Sopenharmony_ci 81162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_crypto0_cfg = { 81262306a36Sopenharmony_ci .name = "qhs_crypto0_cfg", 81362306a36Sopenharmony_ci .id = SM8250_SLAVE_CRYPTO_0_CFG, 81462306a36Sopenharmony_ci .channels = 1, 81562306a36Sopenharmony_ci .buswidth = 4, 81662306a36Sopenharmony_ci}; 81762306a36Sopenharmony_ci 81862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cx_rdpm = { 81962306a36Sopenharmony_ci .name = "qhs_cx_rdpm", 82062306a36Sopenharmony_ci .id = SM8250_SLAVE_CX_RDPM, 82162306a36Sopenharmony_ci .channels = 1, 82262306a36Sopenharmony_ci .buswidth = 4, 82362306a36Sopenharmony_ci}; 82462306a36Sopenharmony_ci 82562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_dcc_cfg = { 82662306a36Sopenharmony_ci .name = "qhs_dcc_cfg", 82762306a36Sopenharmony_ci .id = SM8250_SLAVE_DCC_CFG, 82862306a36Sopenharmony_ci .channels = 1, 82962306a36Sopenharmony_ci .buswidth = 4, 83062306a36Sopenharmony_ci}; 83162306a36Sopenharmony_ci 83262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ddrss_cfg = { 83362306a36Sopenharmony_ci .name = "qhs_ddrss_cfg", 83462306a36Sopenharmony_ci .id = SM8250_SLAVE_CNOC_DDRSS, 83562306a36Sopenharmony_ci .channels = 1, 83662306a36Sopenharmony_ci .buswidth = 4, 83762306a36Sopenharmony_ci .num_links = 1, 83862306a36Sopenharmony_ci .links = { SM8250_MASTER_CNOC_DC_NOC }, 83962306a36Sopenharmony_ci}; 84062306a36Sopenharmony_ci 84162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_display_cfg = { 84262306a36Sopenharmony_ci .name = "qhs_display_cfg", 84362306a36Sopenharmony_ci .id = SM8250_SLAVE_DISPLAY_CFG, 84462306a36Sopenharmony_ci .channels = 1, 84562306a36Sopenharmony_ci .buswidth = 4, 84662306a36Sopenharmony_ci}; 84762306a36Sopenharmony_ci 84862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_gpuss_cfg = { 84962306a36Sopenharmony_ci .name = "qhs_gpuss_cfg", 85062306a36Sopenharmony_ci .id = SM8250_SLAVE_GRAPHICS_3D_CFG, 85162306a36Sopenharmony_ci .channels = 1, 85262306a36Sopenharmony_ci .buswidth = 8, 85362306a36Sopenharmony_ci}; 85462306a36Sopenharmony_ci 85562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_imem_cfg = { 85662306a36Sopenharmony_ci .name = "qhs_imem_cfg", 85762306a36Sopenharmony_ci .id = SM8250_SLAVE_IMEM_CFG, 85862306a36Sopenharmony_ci .channels = 1, 85962306a36Sopenharmony_ci .buswidth = 4, 86062306a36Sopenharmony_ci}; 86162306a36Sopenharmony_ci 86262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ipa = { 86362306a36Sopenharmony_ci .name = "qhs_ipa", 86462306a36Sopenharmony_ci .id = SM8250_SLAVE_IPA_CFG, 86562306a36Sopenharmony_ci .channels = 1, 86662306a36Sopenharmony_ci .buswidth = 4, 86762306a36Sopenharmony_ci}; 86862306a36Sopenharmony_ci 86962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ipc_router = { 87062306a36Sopenharmony_ci .name = "qhs_ipc_router", 87162306a36Sopenharmony_ci .id = SM8250_SLAVE_IPC_ROUTER_CFG, 87262306a36Sopenharmony_ci .channels = 1, 87362306a36Sopenharmony_ci .buswidth = 4, 87462306a36Sopenharmony_ci}; 87562306a36Sopenharmony_ci 87662306a36Sopenharmony_cistatic struct qcom_icc_node qhs_lpass_cfg = { 87762306a36Sopenharmony_ci .name = "qhs_lpass_cfg", 87862306a36Sopenharmony_ci .id = SM8250_SLAVE_LPASS, 87962306a36Sopenharmony_ci .channels = 1, 88062306a36Sopenharmony_ci .buswidth = 4, 88162306a36Sopenharmony_ci}; 88262306a36Sopenharmony_ci 88362306a36Sopenharmony_cistatic struct qcom_icc_node qhs_mnoc_cfg = { 88462306a36Sopenharmony_ci .name = "qhs_mnoc_cfg", 88562306a36Sopenharmony_ci .id = SM8250_SLAVE_CNOC_MNOC_CFG, 88662306a36Sopenharmony_ci .channels = 1, 88762306a36Sopenharmony_ci .buswidth = 4, 88862306a36Sopenharmony_ci .num_links = 1, 88962306a36Sopenharmony_ci .links = { SM8250_MASTER_CNOC_MNOC_CFG }, 89062306a36Sopenharmony_ci}; 89162306a36Sopenharmony_ci 89262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_npu_cfg = { 89362306a36Sopenharmony_ci .name = "qhs_npu_cfg", 89462306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_CFG, 89562306a36Sopenharmony_ci .channels = 1, 89662306a36Sopenharmony_ci .buswidth = 4, 89762306a36Sopenharmony_ci .num_links = 1, 89862306a36Sopenharmony_ci .links = { SM8250_MASTER_NPU_NOC_CFG }, 89962306a36Sopenharmony_ci}; 90062306a36Sopenharmony_ci 90162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_pcie0_cfg = { 90262306a36Sopenharmony_ci .name = "qhs_pcie0_cfg", 90362306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_0_CFG, 90462306a36Sopenharmony_ci .channels = 1, 90562306a36Sopenharmony_ci .buswidth = 4, 90662306a36Sopenharmony_ci}; 90762306a36Sopenharmony_ci 90862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_pcie1_cfg = { 90962306a36Sopenharmony_ci .name = "qhs_pcie1_cfg", 91062306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_1_CFG, 91162306a36Sopenharmony_ci .channels = 1, 91262306a36Sopenharmony_ci .buswidth = 4, 91362306a36Sopenharmony_ci}; 91462306a36Sopenharmony_ci 91562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_pcie_modem_cfg = { 91662306a36Sopenharmony_ci .name = "qhs_pcie_modem_cfg", 91762306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_2_CFG, 91862306a36Sopenharmony_ci .channels = 1, 91962306a36Sopenharmony_ci .buswidth = 4, 92062306a36Sopenharmony_ci}; 92162306a36Sopenharmony_ci 92262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_pdm = { 92362306a36Sopenharmony_ci .name = "qhs_pdm", 92462306a36Sopenharmony_ci .id = SM8250_SLAVE_PDM, 92562306a36Sopenharmony_ci .channels = 1, 92662306a36Sopenharmony_ci .buswidth = 4, 92762306a36Sopenharmony_ci}; 92862306a36Sopenharmony_ci 92962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_pimem_cfg = { 93062306a36Sopenharmony_ci .name = "qhs_pimem_cfg", 93162306a36Sopenharmony_ci .id = SM8250_SLAVE_PIMEM_CFG, 93262306a36Sopenharmony_ci .channels = 1, 93362306a36Sopenharmony_ci .buswidth = 4, 93462306a36Sopenharmony_ci}; 93562306a36Sopenharmony_ci 93662306a36Sopenharmony_cistatic struct qcom_icc_node qhs_prng = { 93762306a36Sopenharmony_ci .name = "qhs_prng", 93862306a36Sopenharmony_ci .id = SM8250_SLAVE_PRNG, 93962306a36Sopenharmony_ci .channels = 1, 94062306a36Sopenharmony_ci .buswidth = 4, 94162306a36Sopenharmony_ci}; 94262306a36Sopenharmony_ci 94362306a36Sopenharmony_cistatic struct qcom_icc_node qhs_qdss_cfg = { 94462306a36Sopenharmony_ci .name = "qhs_qdss_cfg", 94562306a36Sopenharmony_ci .id = SM8250_SLAVE_QDSS_CFG, 94662306a36Sopenharmony_ci .channels = 1, 94762306a36Sopenharmony_ci .buswidth = 4, 94862306a36Sopenharmony_ci}; 94962306a36Sopenharmony_ci 95062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_qspi = { 95162306a36Sopenharmony_ci .name = "qhs_qspi", 95262306a36Sopenharmony_ci .id = SM8250_SLAVE_QSPI_0, 95362306a36Sopenharmony_ci .channels = 1, 95462306a36Sopenharmony_ci .buswidth = 4, 95562306a36Sopenharmony_ci}; 95662306a36Sopenharmony_ci 95762306a36Sopenharmony_cistatic struct qcom_icc_node qhs_qup0 = { 95862306a36Sopenharmony_ci .name = "qhs_qup0", 95962306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_0, 96062306a36Sopenharmony_ci .channels = 1, 96162306a36Sopenharmony_ci .buswidth = 4, 96262306a36Sopenharmony_ci}; 96362306a36Sopenharmony_ci 96462306a36Sopenharmony_cistatic struct qcom_icc_node qhs_qup1 = { 96562306a36Sopenharmony_ci .name = "qhs_qup1", 96662306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_1, 96762306a36Sopenharmony_ci .channels = 1, 96862306a36Sopenharmony_ci .buswidth = 4, 96962306a36Sopenharmony_ci}; 97062306a36Sopenharmony_ci 97162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_qup2 = { 97262306a36Sopenharmony_ci .name = "qhs_qup2", 97362306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_2, 97462306a36Sopenharmony_ci .channels = 1, 97562306a36Sopenharmony_ci .buswidth = 4, 97662306a36Sopenharmony_ci}; 97762306a36Sopenharmony_ci 97862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_sdc2 = { 97962306a36Sopenharmony_ci .name = "qhs_sdc2", 98062306a36Sopenharmony_ci .id = SM8250_SLAVE_SDCC_2, 98162306a36Sopenharmony_ci .channels = 1, 98262306a36Sopenharmony_ci .buswidth = 4, 98362306a36Sopenharmony_ci}; 98462306a36Sopenharmony_ci 98562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_sdc4 = { 98662306a36Sopenharmony_ci .name = "qhs_sdc4", 98762306a36Sopenharmony_ci .id = SM8250_SLAVE_SDCC_4, 98862306a36Sopenharmony_ci .channels = 1, 98962306a36Sopenharmony_ci .buswidth = 4, 99062306a36Sopenharmony_ci}; 99162306a36Sopenharmony_ci 99262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_snoc_cfg = { 99362306a36Sopenharmony_ci .name = "qhs_snoc_cfg", 99462306a36Sopenharmony_ci .id = SM8250_SLAVE_SNOC_CFG, 99562306a36Sopenharmony_ci .channels = 1, 99662306a36Sopenharmony_ci .buswidth = 4, 99762306a36Sopenharmony_ci .num_links = 1, 99862306a36Sopenharmony_ci .links = { SM8250_MASTER_SNOC_CFG }, 99962306a36Sopenharmony_ci}; 100062306a36Sopenharmony_ci 100162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tcsr = { 100262306a36Sopenharmony_ci .name = "qhs_tcsr", 100362306a36Sopenharmony_ci .id = SM8250_SLAVE_TCSR, 100462306a36Sopenharmony_ci .channels = 1, 100562306a36Sopenharmony_ci .buswidth = 4, 100662306a36Sopenharmony_ci}; 100762306a36Sopenharmony_ci 100862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tlmm0 = { 100962306a36Sopenharmony_ci .name = "qhs_tlmm0", 101062306a36Sopenharmony_ci .id = SM8250_SLAVE_TLMM_NORTH, 101162306a36Sopenharmony_ci .channels = 1, 101262306a36Sopenharmony_ci .buswidth = 4, 101362306a36Sopenharmony_ci}; 101462306a36Sopenharmony_ci 101562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tlmm1 = { 101662306a36Sopenharmony_ci .name = "qhs_tlmm1", 101762306a36Sopenharmony_ci .id = SM8250_SLAVE_TLMM_SOUTH, 101862306a36Sopenharmony_ci .channels = 1, 101962306a36Sopenharmony_ci .buswidth = 4, 102062306a36Sopenharmony_ci}; 102162306a36Sopenharmony_ci 102262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tlmm2 = { 102362306a36Sopenharmony_ci .name = "qhs_tlmm2", 102462306a36Sopenharmony_ci .id = SM8250_SLAVE_TLMM_WEST, 102562306a36Sopenharmony_ci .channels = 1, 102662306a36Sopenharmony_ci .buswidth = 4, 102762306a36Sopenharmony_ci}; 102862306a36Sopenharmony_ci 102962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tsif = { 103062306a36Sopenharmony_ci .name = "qhs_tsif", 103162306a36Sopenharmony_ci .id = SM8250_SLAVE_TSIF, 103262306a36Sopenharmony_ci .channels = 1, 103362306a36Sopenharmony_ci .buswidth = 4, 103462306a36Sopenharmony_ci}; 103562306a36Sopenharmony_ci 103662306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ufs_card_cfg = { 103762306a36Sopenharmony_ci .name = "qhs_ufs_card_cfg", 103862306a36Sopenharmony_ci .id = SM8250_SLAVE_UFS_CARD_CFG, 103962306a36Sopenharmony_ci .channels = 1, 104062306a36Sopenharmony_ci .buswidth = 4, 104162306a36Sopenharmony_ci}; 104262306a36Sopenharmony_ci 104362306a36Sopenharmony_cistatic struct qcom_icc_node qhs_ufs_mem_cfg = { 104462306a36Sopenharmony_ci .name = "qhs_ufs_mem_cfg", 104562306a36Sopenharmony_ci .id = SM8250_SLAVE_UFS_MEM_CFG, 104662306a36Sopenharmony_ci .channels = 1, 104762306a36Sopenharmony_ci .buswidth = 4, 104862306a36Sopenharmony_ci}; 104962306a36Sopenharmony_ci 105062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_usb3_0 = { 105162306a36Sopenharmony_ci .name = "qhs_usb3_0", 105262306a36Sopenharmony_ci .id = SM8250_SLAVE_USB3, 105362306a36Sopenharmony_ci .channels = 1, 105462306a36Sopenharmony_ci .buswidth = 4, 105562306a36Sopenharmony_ci}; 105662306a36Sopenharmony_ci 105762306a36Sopenharmony_cistatic struct qcom_icc_node qhs_usb3_1 = { 105862306a36Sopenharmony_ci .name = "qhs_usb3_1", 105962306a36Sopenharmony_ci .id = SM8250_SLAVE_USB3_1, 106062306a36Sopenharmony_ci .channels = 1, 106162306a36Sopenharmony_ci .buswidth = 4, 106262306a36Sopenharmony_ci}; 106362306a36Sopenharmony_ci 106462306a36Sopenharmony_cistatic struct qcom_icc_node qhs_venus_cfg = { 106562306a36Sopenharmony_ci .name = "qhs_venus_cfg", 106662306a36Sopenharmony_ci .id = SM8250_SLAVE_VENUS_CFG, 106762306a36Sopenharmony_ci .channels = 1, 106862306a36Sopenharmony_ci .buswidth = 4, 106962306a36Sopenharmony_ci}; 107062306a36Sopenharmony_ci 107162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_vsense_ctrl_cfg = { 107262306a36Sopenharmony_ci .name = "qhs_vsense_ctrl_cfg", 107362306a36Sopenharmony_ci .id = SM8250_SLAVE_VSENSE_CTRL_CFG, 107462306a36Sopenharmony_ci .channels = 1, 107562306a36Sopenharmony_ci .buswidth = 4, 107662306a36Sopenharmony_ci}; 107762306a36Sopenharmony_ci 107862306a36Sopenharmony_cistatic struct qcom_icc_node qns_cnoc_a2noc = { 107962306a36Sopenharmony_ci .name = "qns_cnoc_a2noc", 108062306a36Sopenharmony_ci .id = SM8250_SLAVE_CNOC_A2NOC, 108162306a36Sopenharmony_ci .channels = 1, 108262306a36Sopenharmony_ci .buswidth = 8, 108362306a36Sopenharmony_ci .num_links = 1, 108462306a36Sopenharmony_ci .links = { SM8250_MASTER_CNOC_A2NOC }, 108562306a36Sopenharmony_ci}; 108662306a36Sopenharmony_ci 108762306a36Sopenharmony_cistatic struct qcom_icc_node srvc_cnoc = { 108862306a36Sopenharmony_ci .name = "srvc_cnoc", 108962306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_CNOC, 109062306a36Sopenharmony_ci .channels = 1, 109162306a36Sopenharmony_ci .buswidth = 4, 109262306a36Sopenharmony_ci}; 109362306a36Sopenharmony_ci 109462306a36Sopenharmony_cistatic struct qcom_icc_node qhs_llcc = { 109562306a36Sopenharmony_ci .name = "qhs_llcc", 109662306a36Sopenharmony_ci .id = SM8250_SLAVE_LLCC_CFG, 109762306a36Sopenharmony_ci .channels = 1, 109862306a36Sopenharmony_ci .buswidth = 4, 109962306a36Sopenharmony_ci}; 110062306a36Sopenharmony_ci 110162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_memnoc = { 110262306a36Sopenharmony_ci .name = "qhs_memnoc", 110362306a36Sopenharmony_ci .id = SM8250_SLAVE_GEM_NOC_CFG, 110462306a36Sopenharmony_ci .channels = 1, 110562306a36Sopenharmony_ci .buswidth = 4, 110662306a36Sopenharmony_ci .num_links = 1, 110762306a36Sopenharmony_ci .links = { SM8250_MASTER_GEM_NOC_CFG }, 110862306a36Sopenharmony_ci}; 110962306a36Sopenharmony_ci 111062306a36Sopenharmony_cistatic struct qcom_icc_node qns_gem_noc_snoc = { 111162306a36Sopenharmony_ci .name = "qns_gem_noc_snoc", 111262306a36Sopenharmony_ci .id = SM8250_SLAVE_GEM_NOC_SNOC, 111362306a36Sopenharmony_ci .channels = 1, 111462306a36Sopenharmony_ci .buswidth = 16, 111562306a36Sopenharmony_ci .num_links = 1, 111662306a36Sopenharmony_ci .links = { SM8250_MASTER_GEM_NOC_SNOC }, 111762306a36Sopenharmony_ci}; 111862306a36Sopenharmony_ci 111962306a36Sopenharmony_cistatic struct qcom_icc_node qns_llcc = { 112062306a36Sopenharmony_ci .name = "qns_llcc", 112162306a36Sopenharmony_ci .id = SM8250_SLAVE_LLCC, 112262306a36Sopenharmony_ci .channels = 4, 112362306a36Sopenharmony_ci .buswidth = 16, 112462306a36Sopenharmony_ci .num_links = 1, 112562306a36Sopenharmony_ci .links = { SM8250_MASTER_LLCC }, 112662306a36Sopenharmony_ci}; 112762306a36Sopenharmony_ci 112862306a36Sopenharmony_cistatic struct qcom_icc_node qns_sys_pcie = { 112962306a36Sopenharmony_ci .name = "qns_sys_pcie", 113062306a36Sopenharmony_ci .id = SM8250_SLAVE_MEM_NOC_PCIE_SNOC, 113162306a36Sopenharmony_ci .channels = 1, 113262306a36Sopenharmony_ci .buswidth = 8, 113362306a36Sopenharmony_ci .num_links = 1, 113462306a36Sopenharmony_ci .links = { SM8250_MASTER_GEM_NOC_PCIE_SNOC }, 113562306a36Sopenharmony_ci}; 113662306a36Sopenharmony_ci 113762306a36Sopenharmony_cistatic struct qcom_icc_node srvc_even_gemnoc = { 113862306a36Sopenharmony_ci .name = "srvc_even_gemnoc", 113962306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_GEM_NOC_1, 114062306a36Sopenharmony_ci .channels = 1, 114162306a36Sopenharmony_ci .buswidth = 4, 114262306a36Sopenharmony_ci}; 114362306a36Sopenharmony_ci 114462306a36Sopenharmony_cistatic struct qcom_icc_node srvc_odd_gemnoc = { 114562306a36Sopenharmony_ci .name = "srvc_odd_gemnoc", 114662306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_GEM_NOC_2, 114762306a36Sopenharmony_ci .channels = 1, 114862306a36Sopenharmony_ci .buswidth = 4, 114962306a36Sopenharmony_ci}; 115062306a36Sopenharmony_ci 115162306a36Sopenharmony_cistatic struct qcom_icc_node srvc_sys_gemnoc = { 115262306a36Sopenharmony_ci .name = "srvc_sys_gemnoc", 115362306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_GEM_NOC, 115462306a36Sopenharmony_ci .channels = 1, 115562306a36Sopenharmony_ci .buswidth = 4, 115662306a36Sopenharmony_ci}; 115762306a36Sopenharmony_ci 115862306a36Sopenharmony_cistatic struct qcom_icc_node ebi = { 115962306a36Sopenharmony_ci .name = "ebi", 116062306a36Sopenharmony_ci .id = SM8250_SLAVE_EBI_CH0, 116162306a36Sopenharmony_ci .channels = 4, 116262306a36Sopenharmony_ci .buswidth = 4, 116362306a36Sopenharmony_ci}; 116462306a36Sopenharmony_ci 116562306a36Sopenharmony_cistatic struct qcom_icc_node qns_mem_noc_hf = { 116662306a36Sopenharmony_ci .name = "qns_mem_noc_hf", 116762306a36Sopenharmony_ci .id = SM8250_SLAVE_MNOC_HF_MEM_NOC, 116862306a36Sopenharmony_ci .channels = 2, 116962306a36Sopenharmony_ci .buswidth = 32, 117062306a36Sopenharmony_ci .num_links = 1, 117162306a36Sopenharmony_ci .links = { SM8250_MASTER_MNOC_HF_MEM_NOC }, 117262306a36Sopenharmony_ci}; 117362306a36Sopenharmony_ci 117462306a36Sopenharmony_cistatic struct qcom_icc_node qns_mem_noc_sf = { 117562306a36Sopenharmony_ci .name = "qns_mem_noc_sf", 117662306a36Sopenharmony_ci .id = SM8250_SLAVE_MNOC_SF_MEM_NOC, 117762306a36Sopenharmony_ci .channels = 2, 117862306a36Sopenharmony_ci .buswidth = 32, 117962306a36Sopenharmony_ci .num_links = 1, 118062306a36Sopenharmony_ci .links = { SM8250_MASTER_MNOC_SF_MEM_NOC }, 118162306a36Sopenharmony_ci}; 118262306a36Sopenharmony_ci 118362306a36Sopenharmony_cistatic struct qcom_icc_node srvc_mnoc = { 118462306a36Sopenharmony_ci .name = "srvc_mnoc", 118562306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_MNOC, 118662306a36Sopenharmony_ci .channels = 1, 118762306a36Sopenharmony_ci .buswidth = 4, 118862306a36Sopenharmony_ci}; 118962306a36Sopenharmony_ci 119062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cal_dp0 = { 119162306a36Sopenharmony_ci .name = "qhs_cal_dp0", 119262306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_CAL_DP0, 119362306a36Sopenharmony_ci .channels = 1, 119462306a36Sopenharmony_ci .buswidth = 4, 119562306a36Sopenharmony_ci}; 119662306a36Sopenharmony_ci 119762306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cal_dp1 = { 119862306a36Sopenharmony_ci .name = "qhs_cal_dp1", 119962306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_CAL_DP1, 120062306a36Sopenharmony_ci .channels = 1, 120162306a36Sopenharmony_ci .buswidth = 4, 120262306a36Sopenharmony_ci}; 120362306a36Sopenharmony_ci 120462306a36Sopenharmony_cistatic struct qcom_icc_node qhs_cp = { 120562306a36Sopenharmony_ci .name = "qhs_cp", 120662306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_CP, 120762306a36Sopenharmony_ci .channels = 1, 120862306a36Sopenharmony_ci .buswidth = 4, 120962306a36Sopenharmony_ci}; 121062306a36Sopenharmony_ci 121162306a36Sopenharmony_cistatic struct qcom_icc_node qhs_dma_bwmon = { 121262306a36Sopenharmony_ci .name = "qhs_dma_bwmon", 121362306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_INT_DMA_BWMON_CFG, 121462306a36Sopenharmony_ci .channels = 1, 121562306a36Sopenharmony_ci .buswidth = 4, 121662306a36Sopenharmony_ci}; 121762306a36Sopenharmony_ci 121862306a36Sopenharmony_cistatic struct qcom_icc_node qhs_dpm = { 121962306a36Sopenharmony_ci .name = "qhs_dpm", 122062306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_DPM, 122162306a36Sopenharmony_ci .channels = 1, 122262306a36Sopenharmony_ci .buswidth = 4, 122362306a36Sopenharmony_ci}; 122462306a36Sopenharmony_ci 122562306a36Sopenharmony_cistatic struct qcom_icc_node qhs_isense = { 122662306a36Sopenharmony_ci .name = "qhs_isense", 122762306a36Sopenharmony_ci .id = SM8250_SLAVE_ISENSE_CFG, 122862306a36Sopenharmony_ci .channels = 1, 122962306a36Sopenharmony_ci .buswidth = 4, 123062306a36Sopenharmony_ci}; 123162306a36Sopenharmony_ci 123262306a36Sopenharmony_cistatic struct qcom_icc_node qhs_llm = { 123362306a36Sopenharmony_ci .name = "qhs_llm", 123462306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_LLM_CFG, 123562306a36Sopenharmony_ci .channels = 1, 123662306a36Sopenharmony_ci .buswidth = 4, 123762306a36Sopenharmony_ci}; 123862306a36Sopenharmony_ci 123962306a36Sopenharmony_cistatic struct qcom_icc_node qhs_tcm = { 124062306a36Sopenharmony_ci .name = "qhs_tcm", 124162306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_TCM, 124262306a36Sopenharmony_ci .channels = 1, 124362306a36Sopenharmony_ci .buswidth = 4, 124462306a36Sopenharmony_ci}; 124562306a36Sopenharmony_ci 124662306a36Sopenharmony_cistatic struct qcom_icc_node qns_npu_sys = { 124762306a36Sopenharmony_ci .name = "qns_npu_sys", 124862306a36Sopenharmony_ci .id = SM8250_SLAVE_NPU_COMPUTE_NOC, 124962306a36Sopenharmony_ci .channels = 2, 125062306a36Sopenharmony_ci .buswidth = 32, 125162306a36Sopenharmony_ci}; 125262306a36Sopenharmony_ci 125362306a36Sopenharmony_cistatic struct qcom_icc_node srvc_noc = { 125462306a36Sopenharmony_ci .name = "srvc_noc", 125562306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_NPU_NOC, 125662306a36Sopenharmony_ci .channels = 1, 125762306a36Sopenharmony_ci .buswidth = 4, 125862306a36Sopenharmony_ci}; 125962306a36Sopenharmony_ci 126062306a36Sopenharmony_cistatic struct qcom_icc_node qhs_apss = { 126162306a36Sopenharmony_ci .name = "qhs_apss", 126262306a36Sopenharmony_ci .id = SM8250_SLAVE_APPSS, 126362306a36Sopenharmony_ci .channels = 1, 126462306a36Sopenharmony_ci .buswidth = 8, 126562306a36Sopenharmony_ci}; 126662306a36Sopenharmony_ci 126762306a36Sopenharmony_cistatic struct qcom_icc_node qns_cnoc = { 126862306a36Sopenharmony_ci .name = "qns_cnoc", 126962306a36Sopenharmony_ci .id = SM8250_SNOC_CNOC_SLV, 127062306a36Sopenharmony_ci .channels = 1, 127162306a36Sopenharmony_ci .buswidth = 8, 127262306a36Sopenharmony_ci .num_links = 1, 127362306a36Sopenharmony_ci .links = { SM8250_SNOC_CNOC_MAS }, 127462306a36Sopenharmony_ci}; 127562306a36Sopenharmony_ci 127662306a36Sopenharmony_cistatic struct qcom_icc_node qns_gemnoc_gc = { 127762306a36Sopenharmony_ci .name = "qns_gemnoc_gc", 127862306a36Sopenharmony_ci .id = SM8250_SLAVE_SNOC_GEM_NOC_GC, 127962306a36Sopenharmony_ci .channels = 1, 128062306a36Sopenharmony_ci .buswidth = 8, 128162306a36Sopenharmony_ci .num_links = 1, 128262306a36Sopenharmony_ci .links = { SM8250_MASTER_SNOC_GC_MEM_NOC }, 128362306a36Sopenharmony_ci}; 128462306a36Sopenharmony_ci 128562306a36Sopenharmony_cistatic struct qcom_icc_node qns_gemnoc_sf = { 128662306a36Sopenharmony_ci .name = "qns_gemnoc_sf", 128762306a36Sopenharmony_ci .id = SM8250_SLAVE_SNOC_GEM_NOC_SF, 128862306a36Sopenharmony_ci .channels = 1, 128962306a36Sopenharmony_ci .buswidth = 16, 129062306a36Sopenharmony_ci .num_links = 1, 129162306a36Sopenharmony_ci .links = { SM8250_MASTER_SNOC_SF_MEM_NOC }, 129262306a36Sopenharmony_ci}; 129362306a36Sopenharmony_ci 129462306a36Sopenharmony_cistatic struct qcom_icc_node qxs_imem = { 129562306a36Sopenharmony_ci .name = "qxs_imem", 129662306a36Sopenharmony_ci .id = SM8250_SLAVE_OCIMEM, 129762306a36Sopenharmony_ci .channels = 1, 129862306a36Sopenharmony_ci .buswidth = 8, 129962306a36Sopenharmony_ci}; 130062306a36Sopenharmony_ci 130162306a36Sopenharmony_cistatic struct qcom_icc_node qxs_pimem = { 130262306a36Sopenharmony_ci .name = "qxs_pimem", 130362306a36Sopenharmony_ci .id = SM8250_SLAVE_PIMEM, 130462306a36Sopenharmony_ci .channels = 1, 130562306a36Sopenharmony_ci .buswidth = 8, 130662306a36Sopenharmony_ci}; 130762306a36Sopenharmony_ci 130862306a36Sopenharmony_cistatic struct qcom_icc_node srvc_snoc = { 130962306a36Sopenharmony_ci .name = "srvc_snoc", 131062306a36Sopenharmony_ci .id = SM8250_SLAVE_SERVICE_SNOC, 131162306a36Sopenharmony_ci .channels = 1, 131262306a36Sopenharmony_ci .buswidth = 4, 131362306a36Sopenharmony_ci}; 131462306a36Sopenharmony_ci 131562306a36Sopenharmony_cistatic struct qcom_icc_node xs_pcie_0 = { 131662306a36Sopenharmony_ci .name = "xs_pcie_0", 131762306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_0, 131862306a36Sopenharmony_ci .channels = 1, 131962306a36Sopenharmony_ci .buswidth = 8, 132062306a36Sopenharmony_ci}; 132162306a36Sopenharmony_ci 132262306a36Sopenharmony_cistatic struct qcom_icc_node xs_pcie_1 = { 132362306a36Sopenharmony_ci .name = "xs_pcie_1", 132462306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_1, 132562306a36Sopenharmony_ci .channels = 1, 132662306a36Sopenharmony_ci .buswidth = 8, 132762306a36Sopenharmony_ci}; 132862306a36Sopenharmony_ci 132962306a36Sopenharmony_cistatic struct qcom_icc_node xs_pcie_modem = { 133062306a36Sopenharmony_ci .name = "xs_pcie_modem", 133162306a36Sopenharmony_ci .id = SM8250_SLAVE_PCIE_2, 133262306a36Sopenharmony_ci .channels = 1, 133362306a36Sopenharmony_ci .buswidth = 8, 133462306a36Sopenharmony_ci}; 133562306a36Sopenharmony_ci 133662306a36Sopenharmony_cistatic struct qcom_icc_node xs_qdss_stm = { 133762306a36Sopenharmony_ci .name = "xs_qdss_stm", 133862306a36Sopenharmony_ci .id = SM8250_SLAVE_QDSS_STM, 133962306a36Sopenharmony_ci .channels = 1, 134062306a36Sopenharmony_ci .buswidth = 4, 134162306a36Sopenharmony_ci}; 134262306a36Sopenharmony_ci 134362306a36Sopenharmony_cistatic struct qcom_icc_node xs_sys_tcu_cfg = { 134462306a36Sopenharmony_ci .name = "xs_sys_tcu_cfg", 134562306a36Sopenharmony_ci .id = SM8250_SLAVE_TCU, 134662306a36Sopenharmony_ci .channels = 1, 134762306a36Sopenharmony_ci .buswidth = 8, 134862306a36Sopenharmony_ci}; 134962306a36Sopenharmony_ci 135062306a36Sopenharmony_cistatic struct qcom_icc_node qup0_core_master = { 135162306a36Sopenharmony_ci .name = "qup0_core_master", 135262306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_CORE_0, 135362306a36Sopenharmony_ci .channels = 1, 135462306a36Sopenharmony_ci .buswidth = 4, 135562306a36Sopenharmony_ci .num_links = 1, 135662306a36Sopenharmony_ci .links = { SM8250_SLAVE_QUP_CORE_0 }, 135762306a36Sopenharmony_ci}; 135862306a36Sopenharmony_ci 135962306a36Sopenharmony_cistatic struct qcom_icc_node qup1_core_master = { 136062306a36Sopenharmony_ci .name = "qup1_core_master", 136162306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_CORE_1, 136262306a36Sopenharmony_ci .channels = 1, 136362306a36Sopenharmony_ci .buswidth = 4, 136462306a36Sopenharmony_ci .num_links = 1, 136562306a36Sopenharmony_ci .links = { SM8250_SLAVE_QUP_CORE_1 }, 136662306a36Sopenharmony_ci}; 136762306a36Sopenharmony_ci 136862306a36Sopenharmony_cistatic struct qcom_icc_node qup2_core_master = { 136962306a36Sopenharmony_ci .name = "qup2_core_master", 137062306a36Sopenharmony_ci .id = SM8250_MASTER_QUP_CORE_2, 137162306a36Sopenharmony_ci .channels = 1, 137262306a36Sopenharmony_ci .buswidth = 4, 137362306a36Sopenharmony_ci .num_links = 1, 137462306a36Sopenharmony_ci .links = { SM8250_SLAVE_QUP_CORE_2 }, 137562306a36Sopenharmony_ci}; 137662306a36Sopenharmony_ci 137762306a36Sopenharmony_cistatic struct qcom_icc_node qup0_core_slave = { 137862306a36Sopenharmony_ci .name = "qup0_core_slave", 137962306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_CORE_0, 138062306a36Sopenharmony_ci .channels = 1, 138162306a36Sopenharmony_ci .buswidth = 4, 138262306a36Sopenharmony_ci}; 138362306a36Sopenharmony_ci 138462306a36Sopenharmony_cistatic struct qcom_icc_node qup1_core_slave = { 138562306a36Sopenharmony_ci .name = "qup1_core_slave", 138662306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_CORE_1, 138762306a36Sopenharmony_ci .channels = 1, 138862306a36Sopenharmony_ci .buswidth = 4, 138962306a36Sopenharmony_ci}; 139062306a36Sopenharmony_ci 139162306a36Sopenharmony_cistatic struct qcom_icc_node qup2_core_slave = { 139262306a36Sopenharmony_ci .name = "qup2_core_slave", 139362306a36Sopenharmony_ci .id = SM8250_SLAVE_QUP_CORE_2, 139462306a36Sopenharmony_ci .channels = 1, 139562306a36Sopenharmony_ci .buswidth = 4, 139662306a36Sopenharmony_ci}; 139762306a36Sopenharmony_ci 139862306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_acv = { 139962306a36Sopenharmony_ci .name = "ACV", 140062306a36Sopenharmony_ci .enable_mask = BIT(3), 140162306a36Sopenharmony_ci .keepalive = false, 140262306a36Sopenharmony_ci .num_nodes = 1, 140362306a36Sopenharmony_ci .nodes = { &ebi }, 140462306a36Sopenharmony_ci}; 140562306a36Sopenharmony_ci 140662306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_mc0 = { 140762306a36Sopenharmony_ci .name = "MC0", 140862306a36Sopenharmony_ci .keepalive = true, 140962306a36Sopenharmony_ci .num_nodes = 1, 141062306a36Sopenharmony_ci .nodes = { &ebi }, 141162306a36Sopenharmony_ci}; 141262306a36Sopenharmony_ci 141362306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sh0 = { 141462306a36Sopenharmony_ci .name = "SH0", 141562306a36Sopenharmony_ci .keepalive = true, 141662306a36Sopenharmony_ci .num_nodes = 1, 141762306a36Sopenharmony_ci .nodes = { &qns_llcc }, 141862306a36Sopenharmony_ci}; 141962306a36Sopenharmony_ci 142062306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_mm0 = { 142162306a36Sopenharmony_ci .name = "MM0", 142262306a36Sopenharmony_ci .keepalive = true, 142362306a36Sopenharmony_ci .num_nodes = 1, 142462306a36Sopenharmony_ci .nodes = { &qns_mem_noc_hf }, 142562306a36Sopenharmony_ci}; 142662306a36Sopenharmony_ci 142762306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_ce0 = { 142862306a36Sopenharmony_ci .name = "CE0", 142962306a36Sopenharmony_ci .keepalive = false, 143062306a36Sopenharmony_ci .num_nodes = 1, 143162306a36Sopenharmony_ci .nodes = { &qxm_crypto }, 143262306a36Sopenharmony_ci}; 143362306a36Sopenharmony_ci 143462306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_mm1 = { 143562306a36Sopenharmony_ci .name = "MM1", 143662306a36Sopenharmony_ci .keepalive = false, 143762306a36Sopenharmony_ci .num_nodes = 3, 143862306a36Sopenharmony_ci .nodes = { &qnm_camnoc_hf, &qxm_mdp0, &qxm_mdp1 }, 143962306a36Sopenharmony_ci}; 144062306a36Sopenharmony_ci 144162306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sh2 = { 144262306a36Sopenharmony_ci .name = "SH2", 144362306a36Sopenharmony_ci .keepalive = false, 144462306a36Sopenharmony_ci .num_nodes = 2, 144562306a36Sopenharmony_ci .nodes = { &alm_gpu_tcu, &alm_sys_tcu }, 144662306a36Sopenharmony_ci}; 144762306a36Sopenharmony_ci 144862306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_mm2 = { 144962306a36Sopenharmony_ci .name = "MM2", 145062306a36Sopenharmony_ci .keepalive = false, 145162306a36Sopenharmony_ci .num_nodes = 1, 145262306a36Sopenharmony_ci .nodes = { &qns_mem_noc_sf }, 145362306a36Sopenharmony_ci}; 145462306a36Sopenharmony_ci 145562306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_qup0 = { 145662306a36Sopenharmony_ci .name = "QUP0", 145762306a36Sopenharmony_ci .keepalive = false, 145862306a36Sopenharmony_ci .num_nodes = 3, 145962306a36Sopenharmony_ci .nodes = { &qup0_core_master, &qup1_core_master, &qup2_core_master }, 146062306a36Sopenharmony_ci}; 146162306a36Sopenharmony_ci 146262306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sh3 = { 146362306a36Sopenharmony_ci .name = "SH3", 146462306a36Sopenharmony_ci .keepalive = false, 146562306a36Sopenharmony_ci .num_nodes = 1, 146662306a36Sopenharmony_ci .nodes = { &qnm_cmpnoc }, 146762306a36Sopenharmony_ci}; 146862306a36Sopenharmony_ci 146962306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_mm3 = { 147062306a36Sopenharmony_ci .name = "MM3", 147162306a36Sopenharmony_ci .keepalive = false, 147262306a36Sopenharmony_ci .num_nodes = 5, 147362306a36Sopenharmony_ci .nodes = { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video1, &qnm_video_cvp }, 147462306a36Sopenharmony_ci}; 147562306a36Sopenharmony_ci 147662306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sh4 = { 147762306a36Sopenharmony_ci .name = "SH4", 147862306a36Sopenharmony_ci .keepalive = false, 147962306a36Sopenharmony_ci .num_nodes = 1, 148062306a36Sopenharmony_ci .nodes = { &chm_apps }, 148162306a36Sopenharmony_ci}; 148262306a36Sopenharmony_ci 148362306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn0 = { 148462306a36Sopenharmony_ci .name = "SN0", 148562306a36Sopenharmony_ci .keepalive = true, 148662306a36Sopenharmony_ci .num_nodes = 1, 148762306a36Sopenharmony_ci .nodes = { &qns_gemnoc_sf }, 148862306a36Sopenharmony_ci}; 148962306a36Sopenharmony_ci 149062306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_co0 = { 149162306a36Sopenharmony_ci .name = "CO0", 149262306a36Sopenharmony_ci .keepalive = false, 149362306a36Sopenharmony_ci .num_nodes = 1, 149462306a36Sopenharmony_ci .nodes = { &qns_cdsp_mem_noc }, 149562306a36Sopenharmony_ci}; 149662306a36Sopenharmony_ci 149762306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_cn0 = { 149862306a36Sopenharmony_ci .name = "CN0", 149962306a36Sopenharmony_ci .keepalive = true, 150062306a36Sopenharmony_ci .num_nodes = 52, 150162306a36Sopenharmony_ci .nodes = { &qnm_snoc, 150262306a36Sopenharmony_ci &xm_qdss_dap, 150362306a36Sopenharmony_ci &qhs_a1_noc_cfg, 150462306a36Sopenharmony_ci &qhs_a2_noc_cfg, 150562306a36Sopenharmony_ci &qhs_ahb2phy0, 150662306a36Sopenharmony_ci &qhs_ahb2phy1, 150762306a36Sopenharmony_ci &qhs_aoss, 150862306a36Sopenharmony_ci &qhs_camera_cfg, 150962306a36Sopenharmony_ci &qhs_clk_ctl, 151062306a36Sopenharmony_ci &qhs_compute_dsp, 151162306a36Sopenharmony_ci &qhs_cpr_cx, 151262306a36Sopenharmony_ci &qhs_cpr_mmcx, 151362306a36Sopenharmony_ci &qhs_cpr_mx, 151462306a36Sopenharmony_ci &qhs_crypto0_cfg, 151562306a36Sopenharmony_ci &qhs_cx_rdpm, 151662306a36Sopenharmony_ci &qhs_dcc_cfg, 151762306a36Sopenharmony_ci &qhs_ddrss_cfg, 151862306a36Sopenharmony_ci &qhs_display_cfg, 151962306a36Sopenharmony_ci &qhs_gpuss_cfg, 152062306a36Sopenharmony_ci &qhs_imem_cfg, 152162306a36Sopenharmony_ci &qhs_ipa, 152262306a36Sopenharmony_ci &qhs_ipc_router, 152362306a36Sopenharmony_ci &qhs_lpass_cfg, 152462306a36Sopenharmony_ci &qhs_mnoc_cfg, 152562306a36Sopenharmony_ci &qhs_npu_cfg, 152662306a36Sopenharmony_ci &qhs_pcie0_cfg, 152762306a36Sopenharmony_ci &qhs_pcie1_cfg, 152862306a36Sopenharmony_ci &qhs_pcie_modem_cfg, 152962306a36Sopenharmony_ci &qhs_pdm, 153062306a36Sopenharmony_ci &qhs_pimem_cfg, 153162306a36Sopenharmony_ci &qhs_prng, 153262306a36Sopenharmony_ci &qhs_qdss_cfg, 153362306a36Sopenharmony_ci &qhs_qspi, 153462306a36Sopenharmony_ci &qhs_qup0, 153562306a36Sopenharmony_ci &qhs_qup1, 153662306a36Sopenharmony_ci &qhs_qup2, 153762306a36Sopenharmony_ci &qhs_sdc2, 153862306a36Sopenharmony_ci &qhs_sdc4, 153962306a36Sopenharmony_ci &qhs_snoc_cfg, 154062306a36Sopenharmony_ci &qhs_tcsr, 154162306a36Sopenharmony_ci &qhs_tlmm0, 154262306a36Sopenharmony_ci &qhs_tlmm1, 154362306a36Sopenharmony_ci &qhs_tlmm2, 154462306a36Sopenharmony_ci &qhs_tsif, 154562306a36Sopenharmony_ci &qhs_ufs_card_cfg, 154662306a36Sopenharmony_ci &qhs_ufs_mem_cfg, 154762306a36Sopenharmony_ci &qhs_usb3_0, 154862306a36Sopenharmony_ci &qhs_usb3_1, 154962306a36Sopenharmony_ci &qhs_venus_cfg, 155062306a36Sopenharmony_ci &qhs_vsense_ctrl_cfg, 155162306a36Sopenharmony_ci &qns_cnoc_a2noc, 155262306a36Sopenharmony_ci &srvc_cnoc 155362306a36Sopenharmony_ci }, 155462306a36Sopenharmony_ci}; 155562306a36Sopenharmony_ci 155662306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn1 = { 155762306a36Sopenharmony_ci .name = "SN1", 155862306a36Sopenharmony_ci .keepalive = false, 155962306a36Sopenharmony_ci .num_nodes = 1, 156062306a36Sopenharmony_ci .nodes = { &qxs_imem }, 156162306a36Sopenharmony_ci}; 156262306a36Sopenharmony_ci 156362306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn2 = { 156462306a36Sopenharmony_ci .name = "SN2", 156562306a36Sopenharmony_ci .keepalive = false, 156662306a36Sopenharmony_ci .num_nodes = 1, 156762306a36Sopenharmony_ci .nodes = { &qns_gemnoc_gc }, 156862306a36Sopenharmony_ci}; 156962306a36Sopenharmony_ci 157062306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_co2 = { 157162306a36Sopenharmony_ci .name = "CO2", 157262306a36Sopenharmony_ci .keepalive = false, 157362306a36Sopenharmony_ci .num_nodes = 1, 157462306a36Sopenharmony_ci .nodes = { &qnm_npu }, 157562306a36Sopenharmony_ci}; 157662306a36Sopenharmony_ci 157762306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn3 = { 157862306a36Sopenharmony_ci .name = "SN3", 157962306a36Sopenharmony_ci .keepalive = false, 158062306a36Sopenharmony_ci .num_nodes = 1, 158162306a36Sopenharmony_ci .nodes = { &qxs_pimem }, 158262306a36Sopenharmony_ci}; 158362306a36Sopenharmony_ci 158462306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn4 = { 158562306a36Sopenharmony_ci .name = "SN4", 158662306a36Sopenharmony_ci .keepalive = false, 158762306a36Sopenharmony_ci .num_nodes = 1, 158862306a36Sopenharmony_ci .nodes = { &xs_qdss_stm }, 158962306a36Sopenharmony_ci}; 159062306a36Sopenharmony_ci 159162306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn5 = { 159262306a36Sopenharmony_ci .name = "SN5", 159362306a36Sopenharmony_ci .keepalive = false, 159462306a36Sopenharmony_ci .num_nodes = 1, 159562306a36Sopenharmony_ci .nodes = { &xs_pcie_modem }, 159662306a36Sopenharmony_ci}; 159762306a36Sopenharmony_ci 159862306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn6 = { 159962306a36Sopenharmony_ci .name = "SN6", 160062306a36Sopenharmony_ci .keepalive = false, 160162306a36Sopenharmony_ci .num_nodes = 2, 160262306a36Sopenharmony_ci .nodes = { &xs_pcie_0, &xs_pcie_1 }, 160362306a36Sopenharmony_ci}; 160462306a36Sopenharmony_ci 160562306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn7 = { 160662306a36Sopenharmony_ci .name = "SN7", 160762306a36Sopenharmony_ci .keepalive = false, 160862306a36Sopenharmony_ci .num_nodes = 1, 160962306a36Sopenharmony_ci .nodes = { &qnm_aggre1_noc }, 161062306a36Sopenharmony_ci}; 161162306a36Sopenharmony_ci 161262306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn8 = { 161362306a36Sopenharmony_ci .name = "SN8", 161462306a36Sopenharmony_ci .keepalive = false, 161562306a36Sopenharmony_ci .num_nodes = 1, 161662306a36Sopenharmony_ci .nodes = { &qnm_aggre2_noc }, 161762306a36Sopenharmony_ci}; 161862306a36Sopenharmony_ci 161962306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn9 = { 162062306a36Sopenharmony_ci .name = "SN9", 162162306a36Sopenharmony_ci .keepalive = false, 162262306a36Sopenharmony_ci .num_nodes = 1, 162362306a36Sopenharmony_ci .nodes = { &qnm_gemnoc_pcie }, 162462306a36Sopenharmony_ci}; 162562306a36Sopenharmony_ci 162662306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn11 = { 162762306a36Sopenharmony_ci .name = "SN11", 162862306a36Sopenharmony_ci .keepalive = false, 162962306a36Sopenharmony_ci .num_nodes = 1, 163062306a36Sopenharmony_ci .nodes = { &qnm_gemnoc }, 163162306a36Sopenharmony_ci}; 163262306a36Sopenharmony_ci 163362306a36Sopenharmony_cistatic struct qcom_icc_bcm bcm_sn12 = { 163462306a36Sopenharmony_ci .name = "SN12", 163562306a36Sopenharmony_ci .keepalive = false, 163662306a36Sopenharmony_ci .num_nodes = 2, 163762306a36Sopenharmony_ci .nodes = { &qns_pcie_modem_mem_noc, &qns_pcie_mem_noc }, 163862306a36Sopenharmony_ci}; 163962306a36Sopenharmony_ci 164062306a36Sopenharmony_cistatic struct qcom_icc_bcm * const aggre1_noc_bcms[] = { 164162306a36Sopenharmony_ci &bcm_sn12, 164262306a36Sopenharmony_ci}; 164362306a36Sopenharmony_ci 164462306a36Sopenharmony_cistatic struct qcom_icc_node * const aggre1_noc_nodes[] = { 164562306a36Sopenharmony_ci [MASTER_A1NOC_CFG] = &qhm_a1noc_cfg, 164662306a36Sopenharmony_ci [MASTER_QSPI_0] = &qhm_qspi, 164762306a36Sopenharmony_ci [MASTER_QUP_1] = &qhm_qup1, 164862306a36Sopenharmony_ci [MASTER_QUP_2] = &qhm_qup2, 164962306a36Sopenharmony_ci [MASTER_TSIF] = &qhm_tsif, 165062306a36Sopenharmony_ci [MASTER_PCIE_2] = &xm_pcie3_modem, 165162306a36Sopenharmony_ci [MASTER_SDCC_4] = &xm_sdc4, 165262306a36Sopenharmony_ci [MASTER_UFS_MEM] = &xm_ufs_mem, 165362306a36Sopenharmony_ci [MASTER_USB3] = &xm_usb3_0, 165462306a36Sopenharmony_ci [MASTER_USB3_1] = &xm_usb3_1, 165562306a36Sopenharmony_ci [A1NOC_SNOC_SLV] = &qns_a1noc_snoc, 165662306a36Sopenharmony_ci [SLAVE_ANOC_PCIE_GEM_NOC_1] = &qns_pcie_modem_mem_noc, 165762306a36Sopenharmony_ci [SLAVE_SERVICE_A1NOC] = &srvc_aggre1_noc, 165862306a36Sopenharmony_ci}; 165962306a36Sopenharmony_ci 166062306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_aggre1_noc = { 166162306a36Sopenharmony_ci .nodes = aggre1_noc_nodes, 166262306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(aggre1_noc_nodes), 166362306a36Sopenharmony_ci .bcms = aggre1_noc_bcms, 166462306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(aggre1_noc_bcms), 166562306a36Sopenharmony_ci}; 166662306a36Sopenharmony_ci 166762306a36Sopenharmony_cistatic struct qcom_icc_bcm * const aggre2_noc_bcms[] = { 166862306a36Sopenharmony_ci &bcm_ce0, 166962306a36Sopenharmony_ci &bcm_sn12, 167062306a36Sopenharmony_ci}; 167162306a36Sopenharmony_ci 167262306a36Sopenharmony_cistatic struct qcom_icc_bcm * const qup_virt_bcms[] = { 167362306a36Sopenharmony_ci &bcm_qup0, 167462306a36Sopenharmony_ci}; 167562306a36Sopenharmony_ci 167662306a36Sopenharmony_cistatic struct qcom_icc_node *qup_virt_nodes[] = { 167762306a36Sopenharmony_ci [MASTER_QUP_CORE_0] = &qup0_core_master, 167862306a36Sopenharmony_ci [MASTER_QUP_CORE_1] = &qup1_core_master, 167962306a36Sopenharmony_ci [MASTER_QUP_CORE_2] = &qup2_core_master, 168062306a36Sopenharmony_ci [SLAVE_QUP_CORE_0] = &qup0_core_slave, 168162306a36Sopenharmony_ci [SLAVE_QUP_CORE_1] = &qup1_core_slave, 168262306a36Sopenharmony_ci [SLAVE_QUP_CORE_2] = &qup2_core_slave, 168362306a36Sopenharmony_ci}; 168462306a36Sopenharmony_ci 168562306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_qup_virt = { 168662306a36Sopenharmony_ci .nodes = qup_virt_nodes, 168762306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(qup_virt_nodes), 168862306a36Sopenharmony_ci .bcms = qup_virt_bcms, 168962306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(qup_virt_bcms), 169062306a36Sopenharmony_ci}; 169162306a36Sopenharmony_ci 169262306a36Sopenharmony_cistatic struct qcom_icc_node * const aggre2_noc_nodes[] = { 169362306a36Sopenharmony_ci [MASTER_A2NOC_CFG] = &qhm_a2noc_cfg, 169462306a36Sopenharmony_ci [MASTER_QDSS_BAM] = &qhm_qdss_bam, 169562306a36Sopenharmony_ci [MASTER_QUP_0] = &qhm_qup0, 169662306a36Sopenharmony_ci [MASTER_CNOC_A2NOC] = &qnm_cnoc, 169762306a36Sopenharmony_ci [MASTER_CRYPTO_CORE_0] = &qxm_crypto, 169862306a36Sopenharmony_ci [MASTER_IPA] = &qxm_ipa, 169962306a36Sopenharmony_ci [MASTER_PCIE] = &xm_pcie3_0, 170062306a36Sopenharmony_ci [MASTER_PCIE_1] = &xm_pcie3_1, 170162306a36Sopenharmony_ci [MASTER_QDSS_ETR] = &xm_qdss_etr, 170262306a36Sopenharmony_ci [MASTER_SDCC_2] = &xm_sdc2, 170362306a36Sopenharmony_ci [MASTER_UFS_CARD] = &xm_ufs_card, 170462306a36Sopenharmony_ci [A2NOC_SNOC_SLV] = &qns_a2noc_snoc, 170562306a36Sopenharmony_ci [SLAVE_ANOC_PCIE_GEM_NOC] = &qns_pcie_mem_noc, 170662306a36Sopenharmony_ci [SLAVE_SERVICE_A2NOC] = &srvc_aggre2_noc, 170762306a36Sopenharmony_ci}; 170862306a36Sopenharmony_ci 170962306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_aggre2_noc = { 171062306a36Sopenharmony_ci .nodes = aggre2_noc_nodes, 171162306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(aggre2_noc_nodes), 171262306a36Sopenharmony_ci .bcms = aggre2_noc_bcms, 171362306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(aggre2_noc_bcms), 171462306a36Sopenharmony_ci}; 171562306a36Sopenharmony_ci 171662306a36Sopenharmony_cistatic struct qcom_icc_bcm * const compute_noc_bcms[] = { 171762306a36Sopenharmony_ci &bcm_co0, 171862306a36Sopenharmony_ci &bcm_co2, 171962306a36Sopenharmony_ci}; 172062306a36Sopenharmony_ci 172162306a36Sopenharmony_cistatic struct qcom_icc_node * const compute_noc_nodes[] = { 172262306a36Sopenharmony_ci [MASTER_NPU] = &qnm_npu, 172362306a36Sopenharmony_ci [SLAVE_CDSP_MEM_NOC] = &qns_cdsp_mem_noc, 172462306a36Sopenharmony_ci}; 172562306a36Sopenharmony_ci 172662306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_compute_noc = { 172762306a36Sopenharmony_ci .nodes = compute_noc_nodes, 172862306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(compute_noc_nodes), 172962306a36Sopenharmony_ci .bcms = compute_noc_bcms, 173062306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(compute_noc_bcms), 173162306a36Sopenharmony_ci}; 173262306a36Sopenharmony_ci 173362306a36Sopenharmony_cistatic struct qcom_icc_bcm * const config_noc_bcms[] = { 173462306a36Sopenharmony_ci &bcm_cn0, 173562306a36Sopenharmony_ci}; 173662306a36Sopenharmony_ci 173762306a36Sopenharmony_cistatic struct qcom_icc_node * const config_noc_nodes[] = { 173862306a36Sopenharmony_ci [SNOC_CNOC_MAS] = &qnm_snoc, 173962306a36Sopenharmony_ci [MASTER_QDSS_DAP] = &xm_qdss_dap, 174062306a36Sopenharmony_ci [SLAVE_A1NOC_CFG] = &qhs_a1_noc_cfg, 174162306a36Sopenharmony_ci [SLAVE_A2NOC_CFG] = &qhs_a2_noc_cfg, 174262306a36Sopenharmony_ci [SLAVE_AHB2PHY_SOUTH] = &qhs_ahb2phy0, 174362306a36Sopenharmony_ci [SLAVE_AHB2PHY_NORTH] = &qhs_ahb2phy1, 174462306a36Sopenharmony_ci [SLAVE_AOSS] = &qhs_aoss, 174562306a36Sopenharmony_ci [SLAVE_CAMERA_CFG] = &qhs_camera_cfg, 174662306a36Sopenharmony_ci [SLAVE_CLK_CTL] = &qhs_clk_ctl, 174762306a36Sopenharmony_ci [SLAVE_CDSP_CFG] = &qhs_compute_dsp, 174862306a36Sopenharmony_ci [SLAVE_RBCPR_CX_CFG] = &qhs_cpr_cx, 174962306a36Sopenharmony_ci [SLAVE_RBCPR_MMCX_CFG] = &qhs_cpr_mmcx, 175062306a36Sopenharmony_ci [SLAVE_RBCPR_MX_CFG] = &qhs_cpr_mx, 175162306a36Sopenharmony_ci [SLAVE_CRYPTO_0_CFG] = &qhs_crypto0_cfg, 175262306a36Sopenharmony_ci [SLAVE_CX_RDPM] = &qhs_cx_rdpm, 175362306a36Sopenharmony_ci [SLAVE_DCC_CFG] = &qhs_dcc_cfg, 175462306a36Sopenharmony_ci [SLAVE_CNOC_DDRSS] = &qhs_ddrss_cfg, 175562306a36Sopenharmony_ci [SLAVE_DISPLAY_CFG] = &qhs_display_cfg, 175662306a36Sopenharmony_ci [SLAVE_GRAPHICS_3D_CFG] = &qhs_gpuss_cfg, 175762306a36Sopenharmony_ci [SLAVE_IMEM_CFG] = &qhs_imem_cfg, 175862306a36Sopenharmony_ci [SLAVE_IPA_CFG] = &qhs_ipa, 175962306a36Sopenharmony_ci [SLAVE_IPC_ROUTER_CFG] = &qhs_ipc_router, 176062306a36Sopenharmony_ci [SLAVE_LPASS] = &qhs_lpass_cfg, 176162306a36Sopenharmony_ci [SLAVE_CNOC_MNOC_CFG] = &qhs_mnoc_cfg, 176262306a36Sopenharmony_ci [SLAVE_NPU_CFG] = &qhs_npu_cfg, 176362306a36Sopenharmony_ci [SLAVE_PCIE_0_CFG] = &qhs_pcie0_cfg, 176462306a36Sopenharmony_ci [SLAVE_PCIE_1_CFG] = &qhs_pcie1_cfg, 176562306a36Sopenharmony_ci [SLAVE_PCIE_2_CFG] = &qhs_pcie_modem_cfg, 176662306a36Sopenharmony_ci [SLAVE_PDM] = &qhs_pdm, 176762306a36Sopenharmony_ci [SLAVE_PIMEM_CFG] = &qhs_pimem_cfg, 176862306a36Sopenharmony_ci [SLAVE_PRNG] = &qhs_prng, 176962306a36Sopenharmony_ci [SLAVE_QDSS_CFG] = &qhs_qdss_cfg, 177062306a36Sopenharmony_ci [SLAVE_QSPI_0] = &qhs_qspi, 177162306a36Sopenharmony_ci [SLAVE_QUP_0] = &qhs_qup0, 177262306a36Sopenharmony_ci [SLAVE_QUP_1] = &qhs_qup1, 177362306a36Sopenharmony_ci [SLAVE_QUP_2] = &qhs_qup2, 177462306a36Sopenharmony_ci [SLAVE_SDCC_2] = &qhs_sdc2, 177562306a36Sopenharmony_ci [SLAVE_SDCC_4] = &qhs_sdc4, 177662306a36Sopenharmony_ci [SLAVE_SNOC_CFG] = &qhs_snoc_cfg, 177762306a36Sopenharmony_ci [SLAVE_TCSR] = &qhs_tcsr, 177862306a36Sopenharmony_ci [SLAVE_TLMM_NORTH] = &qhs_tlmm0, 177962306a36Sopenharmony_ci [SLAVE_TLMM_SOUTH] = &qhs_tlmm1, 178062306a36Sopenharmony_ci [SLAVE_TLMM_WEST] = &qhs_tlmm2, 178162306a36Sopenharmony_ci [SLAVE_TSIF] = &qhs_tsif, 178262306a36Sopenharmony_ci [SLAVE_UFS_CARD_CFG] = &qhs_ufs_card_cfg, 178362306a36Sopenharmony_ci [SLAVE_UFS_MEM_CFG] = &qhs_ufs_mem_cfg, 178462306a36Sopenharmony_ci [SLAVE_USB3] = &qhs_usb3_0, 178562306a36Sopenharmony_ci [SLAVE_USB3_1] = &qhs_usb3_1, 178662306a36Sopenharmony_ci [SLAVE_VENUS_CFG] = &qhs_venus_cfg, 178762306a36Sopenharmony_ci [SLAVE_VSENSE_CTRL_CFG] = &qhs_vsense_ctrl_cfg, 178862306a36Sopenharmony_ci [SLAVE_CNOC_A2NOC] = &qns_cnoc_a2noc, 178962306a36Sopenharmony_ci [SLAVE_SERVICE_CNOC] = &srvc_cnoc, 179062306a36Sopenharmony_ci}; 179162306a36Sopenharmony_ci 179262306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_config_noc = { 179362306a36Sopenharmony_ci .nodes = config_noc_nodes, 179462306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(config_noc_nodes), 179562306a36Sopenharmony_ci .bcms = config_noc_bcms, 179662306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(config_noc_bcms), 179762306a36Sopenharmony_ci}; 179862306a36Sopenharmony_ci 179962306a36Sopenharmony_cistatic struct qcom_icc_bcm * const dc_noc_bcms[] = { 180062306a36Sopenharmony_ci}; 180162306a36Sopenharmony_ci 180262306a36Sopenharmony_cistatic struct qcom_icc_node * const dc_noc_nodes[] = { 180362306a36Sopenharmony_ci [MASTER_CNOC_DC_NOC] = &qhm_cnoc_dc_noc, 180462306a36Sopenharmony_ci [SLAVE_LLCC_CFG] = &qhs_llcc, 180562306a36Sopenharmony_ci [SLAVE_GEM_NOC_CFG] = &qhs_memnoc, 180662306a36Sopenharmony_ci}; 180762306a36Sopenharmony_ci 180862306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_dc_noc = { 180962306a36Sopenharmony_ci .nodes = dc_noc_nodes, 181062306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(dc_noc_nodes), 181162306a36Sopenharmony_ci .bcms = dc_noc_bcms, 181262306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(dc_noc_bcms), 181362306a36Sopenharmony_ci}; 181462306a36Sopenharmony_ci 181562306a36Sopenharmony_cistatic struct qcom_icc_bcm * const gem_noc_bcms[] = { 181662306a36Sopenharmony_ci &bcm_sh0, 181762306a36Sopenharmony_ci &bcm_sh2, 181862306a36Sopenharmony_ci &bcm_sh3, 181962306a36Sopenharmony_ci &bcm_sh4, 182062306a36Sopenharmony_ci}; 182162306a36Sopenharmony_ci 182262306a36Sopenharmony_cistatic struct qcom_icc_node * const gem_noc_nodes[] = { 182362306a36Sopenharmony_ci [MASTER_GPU_TCU] = &alm_gpu_tcu, 182462306a36Sopenharmony_ci [MASTER_SYS_TCU] = &alm_sys_tcu, 182562306a36Sopenharmony_ci [MASTER_AMPSS_M0] = &chm_apps, 182662306a36Sopenharmony_ci [MASTER_GEM_NOC_CFG] = &qhm_gemnoc_cfg, 182762306a36Sopenharmony_ci [MASTER_COMPUTE_NOC] = &qnm_cmpnoc, 182862306a36Sopenharmony_ci [MASTER_GRAPHICS_3D] = &qnm_gpu, 182962306a36Sopenharmony_ci [MASTER_MNOC_HF_MEM_NOC] = &qnm_mnoc_hf, 183062306a36Sopenharmony_ci [MASTER_MNOC_SF_MEM_NOC] = &qnm_mnoc_sf, 183162306a36Sopenharmony_ci [MASTER_ANOC_PCIE_GEM_NOC] = &qnm_pcie, 183262306a36Sopenharmony_ci [MASTER_SNOC_GC_MEM_NOC] = &qnm_snoc_gc, 183362306a36Sopenharmony_ci [MASTER_SNOC_SF_MEM_NOC] = &qnm_snoc_sf, 183462306a36Sopenharmony_ci [SLAVE_GEM_NOC_SNOC] = &qns_gem_noc_snoc, 183562306a36Sopenharmony_ci [SLAVE_LLCC] = &qns_llcc, 183662306a36Sopenharmony_ci [SLAVE_MEM_NOC_PCIE_SNOC] = &qns_sys_pcie, 183762306a36Sopenharmony_ci [SLAVE_SERVICE_GEM_NOC_1] = &srvc_even_gemnoc, 183862306a36Sopenharmony_ci [SLAVE_SERVICE_GEM_NOC_2] = &srvc_odd_gemnoc, 183962306a36Sopenharmony_ci [SLAVE_SERVICE_GEM_NOC] = &srvc_sys_gemnoc, 184062306a36Sopenharmony_ci}; 184162306a36Sopenharmony_ci 184262306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_gem_noc = { 184362306a36Sopenharmony_ci .nodes = gem_noc_nodes, 184462306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(gem_noc_nodes), 184562306a36Sopenharmony_ci .bcms = gem_noc_bcms, 184662306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(gem_noc_bcms), 184762306a36Sopenharmony_ci}; 184862306a36Sopenharmony_ci 184962306a36Sopenharmony_cistatic struct qcom_icc_bcm * const mc_virt_bcms[] = { 185062306a36Sopenharmony_ci &bcm_acv, 185162306a36Sopenharmony_ci &bcm_mc0, 185262306a36Sopenharmony_ci}; 185362306a36Sopenharmony_ci 185462306a36Sopenharmony_cistatic struct qcom_icc_node * const mc_virt_nodes[] = { 185562306a36Sopenharmony_ci [MASTER_LLCC] = &llcc_mc, 185662306a36Sopenharmony_ci [SLAVE_EBI_CH0] = &ebi, 185762306a36Sopenharmony_ci}; 185862306a36Sopenharmony_ci 185962306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_mc_virt = { 186062306a36Sopenharmony_ci .nodes = mc_virt_nodes, 186162306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(mc_virt_nodes), 186262306a36Sopenharmony_ci .bcms = mc_virt_bcms, 186362306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(mc_virt_bcms), 186462306a36Sopenharmony_ci}; 186562306a36Sopenharmony_ci 186662306a36Sopenharmony_cistatic struct qcom_icc_bcm * const mmss_noc_bcms[] = { 186762306a36Sopenharmony_ci &bcm_mm0, 186862306a36Sopenharmony_ci &bcm_mm1, 186962306a36Sopenharmony_ci &bcm_mm2, 187062306a36Sopenharmony_ci &bcm_mm3, 187162306a36Sopenharmony_ci}; 187262306a36Sopenharmony_ci 187362306a36Sopenharmony_cistatic struct qcom_icc_node * const mmss_noc_nodes[] = { 187462306a36Sopenharmony_ci [MASTER_CNOC_MNOC_CFG] = &qhm_mnoc_cfg, 187562306a36Sopenharmony_ci [MASTER_CAMNOC_HF] = &qnm_camnoc_hf, 187662306a36Sopenharmony_ci [MASTER_CAMNOC_ICP] = &qnm_camnoc_icp, 187762306a36Sopenharmony_ci [MASTER_CAMNOC_SF] = &qnm_camnoc_sf, 187862306a36Sopenharmony_ci [MASTER_VIDEO_P0] = &qnm_video0, 187962306a36Sopenharmony_ci [MASTER_VIDEO_P1] = &qnm_video1, 188062306a36Sopenharmony_ci [MASTER_VIDEO_PROC] = &qnm_video_cvp, 188162306a36Sopenharmony_ci [MASTER_MDP_PORT0] = &qxm_mdp0, 188262306a36Sopenharmony_ci [MASTER_MDP_PORT1] = &qxm_mdp1, 188362306a36Sopenharmony_ci [MASTER_ROTATOR] = &qxm_rot, 188462306a36Sopenharmony_ci [SLAVE_MNOC_HF_MEM_NOC] = &qns_mem_noc_hf, 188562306a36Sopenharmony_ci [SLAVE_MNOC_SF_MEM_NOC] = &qns_mem_noc_sf, 188662306a36Sopenharmony_ci [SLAVE_SERVICE_MNOC] = &srvc_mnoc, 188762306a36Sopenharmony_ci}; 188862306a36Sopenharmony_ci 188962306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_mmss_noc = { 189062306a36Sopenharmony_ci .nodes = mmss_noc_nodes, 189162306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(mmss_noc_nodes), 189262306a36Sopenharmony_ci .bcms = mmss_noc_bcms, 189362306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(mmss_noc_bcms), 189462306a36Sopenharmony_ci}; 189562306a36Sopenharmony_ci 189662306a36Sopenharmony_cistatic struct qcom_icc_bcm * const npu_noc_bcms[] = { 189762306a36Sopenharmony_ci}; 189862306a36Sopenharmony_ci 189962306a36Sopenharmony_cistatic struct qcom_icc_node * const npu_noc_nodes[] = { 190062306a36Sopenharmony_ci [MASTER_NPU_SYS] = &amm_npu_sys, 190162306a36Sopenharmony_ci [MASTER_NPU_CDP] = &amm_npu_sys_cdp_w, 190262306a36Sopenharmony_ci [MASTER_NPU_NOC_CFG] = &qhm_cfg, 190362306a36Sopenharmony_ci [SLAVE_NPU_CAL_DP0] = &qhs_cal_dp0, 190462306a36Sopenharmony_ci [SLAVE_NPU_CAL_DP1] = &qhs_cal_dp1, 190562306a36Sopenharmony_ci [SLAVE_NPU_CP] = &qhs_cp, 190662306a36Sopenharmony_ci [SLAVE_NPU_INT_DMA_BWMON_CFG] = &qhs_dma_bwmon, 190762306a36Sopenharmony_ci [SLAVE_NPU_DPM] = &qhs_dpm, 190862306a36Sopenharmony_ci [SLAVE_ISENSE_CFG] = &qhs_isense, 190962306a36Sopenharmony_ci [SLAVE_NPU_LLM_CFG] = &qhs_llm, 191062306a36Sopenharmony_ci [SLAVE_NPU_TCM] = &qhs_tcm, 191162306a36Sopenharmony_ci [SLAVE_NPU_COMPUTE_NOC] = &qns_npu_sys, 191262306a36Sopenharmony_ci [SLAVE_SERVICE_NPU_NOC] = &srvc_noc, 191362306a36Sopenharmony_ci}; 191462306a36Sopenharmony_ci 191562306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_npu_noc = { 191662306a36Sopenharmony_ci .nodes = npu_noc_nodes, 191762306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(npu_noc_nodes), 191862306a36Sopenharmony_ci .bcms = npu_noc_bcms, 191962306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(npu_noc_bcms), 192062306a36Sopenharmony_ci}; 192162306a36Sopenharmony_ci 192262306a36Sopenharmony_cistatic struct qcom_icc_bcm * const system_noc_bcms[] = { 192362306a36Sopenharmony_ci &bcm_sn0, 192462306a36Sopenharmony_ci &bcm_sn1, 192562306a36Sopenharmony_ci &bcm_sn11, 192662306a36Sopenharmony_ci &bcm_sn2, 192762306a36Sopenharmony_ci &bcm_sn3, 192862306a36Sopenharmony_ci &bcm_sn4, 192962306a36Sopenharmony_ci &bcm_sn5, 193062306a36Sopenharmony_ci &bcm_sn6, 193162306a36Sopenharmony_ci &bcm_sn7, 193262306a36Sopenharmony_ci &bcm_sn8, 193362306a36Sopenharmony_ci &bcm_sn9, 193462306a36Sopenharmony_ci}; 193562306a36Sopenharmony_ci 193662306a36Sopenharmony_cistatic struct qcom_icc_node * const system_noc_nodes[] = { 193762306a36Sopenharmony_ci [MASTER_SNOC_CFG] = &qhm_snoc_cfg, 193862306a36Sopenharmony_ci [A1NOC_SNOC_MAS] = &qnm_aggre1_noc, 193962306a36Sopenharmony_ci [A2NOC_SNOC_MAS] = &qnm_aggre2_noc, 194062306a36Sopenharmony_ci [MASTER_GEM_NOC_SNOC] = &qnm_gemnoc, 194162306a36Sopenharmony_ci [MASTER_GEM_NOC_PCIE_SNOC] = &qnm_gemnoc_pcie, 194262306a36Sopenharmony_ci [MASTER_PIMEM] = &qxm_pimem, 194362306a36Sopenharmony_ci [MASTER_GIC] = &xm_gic, 194462306a36Sopenharmony_ci [SLAVE_APPSS] = &qhs_apss, 194562306a36Sopenharmony_ci [SNOC_CNOC_SLV] = &qns_cnoc, 194662306a36Sopenharmony_ci [SLAVE_SNOC_GEM_NOC_GC] = &qns_gemnoc_gc, 194762306a36Sopenharmony_ci [SLAVE_SNOC_GEM_NOC_SF] = &qns_gemnoc_sf, 194862306a36Sopenharmony_ci [SLAVE_OCIMEM] = &qxs_imem, 194962306a36Sopenharmony_ci [SLAVE_PIMEM] = &qxs_pimem, 195062306a36Sopenharmony_ci [SLAVE_SERVICE_SNOC] = &srvc_snoc, 195162306a36Sopenharmony_ci [SLAVE_PCIE_0] = &xs_pcie_0, 195262306a36Sopenharmony_ci [SLAVE_PCIE_1] = &xs_pcie_1, 195362306a36Sopenharmony_ci [SLAVE_PCIE_2] = &xs_pcie_modem, 195462306a36Sopenharmony_ci [SLAVE_QDSS_STM] = &xs_qdss_stm, 195562306a36Sopenharmony_ci [SLAVE_TCU] = &xs_sys_tcu_cfg, 195662306a36Sopenharmony_ci}; 195762306a36Sopenharmony_ci 195862306a36Sopenharmony_cistatic const struct qcom_icc_desc sm8250_system_noc = { 195962306a36Sopenharmony_ci .nodes = system_noc_nodes, 196062306a36Sopenharmony_ci .num_nodes = ARRAY_SIZE(system_noc_nodes), 196162306a36Sopenharmony_ci .bcms = system_noc_bcms, 196262306a36Sopenharmony_ci .num_bcms = ARRAY_SIZE(system_noc_bcms), 196362306a36Sopenharmony_ci}; 196462306a36Sopenharmony_ci 196562306a36Sopenharmony_cistatic const struct of_device_id qnoc_of_match[] = { 196662306a36Sopenharmony_ci { .compatible = "qcom,sm8250-aggre1-noc", 196762306a36Sopenharmony_ci .data = &sm8250_aggre1_noc}, 196862306a36Sopenharmony_ci { .compatible = "qcom,sm8250-aggre2-noc", 196962306a36Sopenharmony_ci .data = &sm8250_aggre2_noc}, 197062306a36Sopenharmony_ci { .compatible = "qcom,sm8250-compute-noc", 197162306a36Sopenharmony_ci .data = &sm8250_compute_noc}, 197262306a36Sopenharmony_ci { .compatible = "qcom,sm8250-config-noc", 197362306a36Sopenharmony_ci .data = &sm8250_config_noc}, 197462306a36Sopenharmony_ci { .compatible = "qcom,sm8250-dc-noc", 197562306a36Sopenharmony_ci .data = &sm8250_dc_noc}, 197662306a36Sopenharmony_ci { .compatible = "qcom,sm8250-gem-noc", 197762306a36Sopenharmony_ci .data = &sm8250_gem_noc}, 197862306a36Sopenharmony_ci { .compatible = "qcom,sm8250-mc-virt", 197962306a36Sopenharmony_ci .data = &sm8250_mc_virt}, 198062306a36Sopenharmony_ci { .compatible = "qcom,sm8250-mmss-noc", 198162306a36Sopenharmony_ci .data = &sm8250_mmss_noc}, 198262306a36Sopenharmony_ci { .compatible = "qcom,sm8250-npu-noc", 198362306a36Sopenharmony_ci .data = &sm8250_npu_noc}, 198462306a36Sopenharmony_ci { .compatible = "qcom,sm8250-qup-virt", 198562306a36Sopenharmony_ci .data = &sm8250_qup_virt }, 198662306a36Sopenharmony_ci { .compatible = "qcom,sm8250-system-noc", 198762306a36Sopenharmony_ci .data = &sm8250_system_noc}, 198862306a36Sopenharmony_ci { } 198962306a36Sopenharmony_ci}; 199062306a36Sopenharmony_ciMODULE_DEVICE_TABLE(of, qnoc_of_match); 199162306a36Sopenharmony_ci 199262306a36Sopenharmony_cistatic struct platform_driver qnoc_driver = { 199362306a36Sopenharmony_ci .probe = qcom_icc_rpmh_probe, 199462306a36Sopenharmony_ci .remove = qcom_icc_rpmh_remove, 199562306a36Sopenharmony_ci .driver = { 199662306a36Sopenharmony_ci .name = "qnoc-sm8250", 199762306a36Sopenharmony_ci .of_match_table = qnoc_of_match, 199862306a36Sopenharmony_ci .sync_state = icc_sync_state, 199962306a36Sopenharmony_ci }, 200062306a36Sopenharmony_ci}; 200162306a36Sopenharmony_cimodule_platform_driver(qnoc_driver); 200262306a36Sopenharmony_ci 200362306a36Sopenharmony_ciMODULE_DESCRIPTION("Qualcomm SM8250 NoC driver"); 200462306a36Sopenharmony_ciMODULE_LICENSE("GPL v2"); 2005