From nobody Wed Oct 8 00:07:10 2025 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 39F21309A59 for ; Fri, 4 Jul 2025 16:35:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751646939; cv=none; b=eHkTzJgGrP50cWNnUVCvpFWgLOw6gfF8hHzQzBX3k5NzQ+528zMBD/xofZLAWqIkSNp0wC2rcX3fJkKSJTWZun4Zeou0CrpdsXKyqMxHc0JZmwzQv9TFn+NHFel9HKPtT/Ke46M0kpYN2vZgMdl34Rzerj3Oq69GYdQMGP+x5m0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1751646939; c=relaxed/simple; bh=R/Mch3xoI7V7zsDG16gNmanTM4JBNjkNoavrkscFrpw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=Da0KgEzBM5HR4+i/HPxDy6I0zsg4kWGAL2+kD07pVKZkehAqMca27D8ZcMdrPJN8qPFCzzw6tVKqHaLczeSA4WlEKoJ0hlWcRjUDFFMEkpbCoQoXVv6jWIyxJ2bXv14ET+g+Cat0cmo1wJbwNP2Er7KPC868PGb4/8MSEueLzd8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=hmLHNztj; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="hmLHNztj" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 5649AeDh017338 for ; Fri, 4 Jul 2025 16:35:32 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= V8vxkaFbu5s7NHcXybMwNx6fonVKgHvr8hxtrucjM8k=; b=hmLHNztjmdGXLESd dEJEmscghFZgPJGqP0zbLMmEltSXz1mMjpejTDqF8+MpN4FY9vl+Eg/XtqE16upM 5iS82hpARajst9CMqr4C/E0yKlZnRfZW1Hao/DKBb/z+/Bh9LTI8ZRUscXkR0aiT 7UWhKVWW2zlbJbd1j2mLnyKAyfsUtTpSv6tjXap/MrfRDXDRSztyUwVoCnNqXaav MeNAjM6UGNzsYhmagFukpO/weRyE/HP7GFgV+lY83ykKk24DKm1L7iyzefg9aP2s 8ggI99gk+vXr3d1bqGj5CdMMDW9SEu+a7S0Wi5613Sn9qTktw47DS0VljIzb1L+q qJ+qvQ== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 47j8s9vh1j-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Fri, 04 Jul 2025 16:35:31 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-7d3d3f6471cso175244985a.3 for ; Fri, 04 Jul 2025 09:35:31 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1751646930; x=1752251730; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=V8vxkaFbu5s7NHcXybMwNx6fonVKgHvr8hxtrucjM8k=; b=fWP42tXfJ6cslu7DeAHidOCOov7Fa2ITfVzQO3iKm6IP6nZfj3EJIkkTC3z4i9xBXC ql4uChFlx2fRT24u+NhjtT43DAjYzeBgnZSeFwHePwBUe4B1uuG/9Y83AADLluYQPLG6 /WavyB0wK1nU02ji094PuBRUo9CtDT7S/DpCknL7gBwW6cSg/Q0QIiZ1wBMQKn9HJBLt Fq6Sxu8XgTxDbe9e8MLCFKBGyn0J/v6+IyHaJrHRvr49sA2bdR8anA+IKE1RooAq7WyW 5VxpiFOBdiWKBqR5n4ZbBgozxNOAH/gA/iTuSGpMv4Mencl9wkT1fQ3fm1PV4Q14h6MK +Z7w== X-Forwarded-Encrypted: i=1; AJvYcCWaBGBWfjVne+4H8pZO5s4cbmCHLshrGUFssoJ0mvykCa/Wk/8wmScx4/N6jDq9ULeQJM1QBWRp3au/Ado=@vger.kernel.org X-Gm-Message-State: AOJu0Yzkh+zljXHMuKJVTdVPSr/wcPPpeOxlVESIcTS5FTTEFjhrBm44 3K9NzAQshIGlqYaMYXs7POHLHbN2DZGQdCMOouXSl92shw54Nqipk2XiDBFDjbxuqwgpS6R+eym aDrb2GHvTnpJTwF1RWys4COyTkpwgEQHnYYaq32ic360pgiTz1MhSr4aKrUCoQQTixAhkUg3Uvf pYPg== X-Gm-Gg: ASbGncthclrPG/EOJUoD5Q4vBAdQJ2slbzdmyjwilwZN5zQxrjEIj6xCAS49koJheqF IzVA9O2iPW62NFk954MwzIt9yxFQuekRIeIi7TEbcNsDG1XcewMwQw61VyEDokTPjUKFJw/BWC1 aWCuO+Rdl1UlZlhCT2aoB5dNoZvzrqUukUTjuglWletu738JwCnKVPRu30p6M+VK5/gaC3izk4b ByudTjQ5nNvzP0q4WucH0fHbbMysXQpb5vPC1mFl0Rafx7hoLOfGikLCjj7iMhqipuOjs1AOtfG RDXwT4kjES6y0txT5pfQl8hbG4C0XvGGQ32kFt62I9z4lL7SJm5kHoo+nvrcdZ4nvMgy8rOGbhw hO3J3XowerbaaXFQeTJnmbcuLDCB01s1nBAk= X-Received: by 2002:a05:620a:1a28:b0:7d5:dacd:5482 with SMTP id af79cd13be357-7d5dcd0acacmr443724085a.35.1751646929428; Fri, 04 Jul 2025 09:35:29 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGiMItxAwrbV7zs5bFxh83TPtQcVwxGVM9Nj7R9ieQ11mcybRwOwyeIEl2x51Yv/CnqC+WJhg== X-Received: by 2002:a05:620a:1a28:b0:7d5:dacd:5482 with SMTP id af79cd13be357-7d5dcd0acacmr443713485a.35.1751646927850; Fri, 04 Jul 2025 09:35:27 -0700 (PDT) Received: from umbar.lan (2001-14ba-a0c3-3a00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a0c3:3a00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-556383d33f3sm298321e87.68.2025.07.04.09.35.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Jul 2025 09:35:26 -0700 (PDT) From: Dmitry Baryshkov Date: Fri, 04 Jul 2025 19:35:15 +0300 Subject: [PATCH v2 03/28] interconnect: qcom: rpmh: make nodes a NULL_terminated array Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250704-rework-icc-v2-3-875fac996ef5@oss.qualcomm.com> References: <20250704-rework-icc-v2-0-875fac996ef5@oss.qualcomm.com> In-Reply-To: <20250704-rework-icc-v2-0-875fac996ef5@oss.qualcomm.com> To: Georgi Djakov , Bjorn Andersson Cc: linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=120340; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=R/Mch3xoI7V7zsDG16gNmanTM4JBNjkNoavrkscFrpw=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBoaALF+k4O93HBpSS172ZuWODpmcP+3YEKSKrrE 2eMOzZoNgGJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaGgCxQAKCRCLPIo+Aiko 1aptB/0QZfz3FRKL496AUogbUfOWjnoXYgRi+CdhosYeAq68G8tpT0hq/dss58byKA2brtlRBVa 6Nnrf3d+90SpoKQmSQZ3ds2BL6+G6SQKWP8KxItVCgQd4Vs6fOzNypztt3ctkMjpXGKh+exXXcu irjhZ7D0YommSPhWzAJ8j2emut7nggy4VssCHEO6wWl659EOCZYYLST0DZsBAqrNcxJoebQgTC2 9Ml7PJsr79DvFIw1moLvkP1ifyvSlcTckrdq/54rGnAtQNctD/KIe8aCirkFjy7g2zNoZOfK6lq Y5t3nMy8MdJEAhw/Zt9PQccPdivZnPdvyEGGc6gco0ev8fvs X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Authority-Analysis: v=2.4 cv=H/Pbw/Yi c=1 sm=1 tr=0 ts=686802d3 cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Wb1JkmetP80A:10 a=EUspDBNiAAAA:8 a=NY0w9idC-kCSDk-CWXsA:9 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 X-Proofpoint-ORIG-GUID: eV-cxL7ZF1v41c4nzoujPT01Pm1SrI1R X-Proofpoint-GUID: eV-cxL7ZF1v41c4nzoujPT01Pm1SrI1R X-Proofpoint-Spam-Details-Enc: AW1haW4tMjUwNzA0MDEyNiBTYWx0ZWRfX8bTI+Jv8ndbs bumqHji1SI8nBXV3j3G0mDej01cSaAzLlgGUtBXylLmCJ336RU8Kc+QrQ0ubcqniCRXGl0X8V2V DT9s5625jlRZr842E2tB0sRLy6k5MYcBsXzILJ3yiMjNt9+5SUQqMAz9bLIUOyxn31f91wyuy0m JD6tW7wx4uPxaKJCg6pAMgAeb6M4yd8FvW1TzI0gfYsrKsZA40zk4Y3H1ec3y0wLHU75x5w58LI JgfzRTRPZoEJavDaZQ2Rm5ES4XbWZJk5yiE5xHOxSRTFtjsK234ayYMSYE9A+FeyhnJ1Y2Gunqa 4PRpKCUp+TmtbOi0bhAnRKs8DAEUGgJ0nJlF21FTxwmUlaFUI/BISHJE1aik/3P5e+JNpcy8G1S F9kzZ3/VbDkgTFkcsdgr3rB+I5SJi1CxmYsnSPDR9CFD4nllDZ8YpM+OLdyd5s6FjZMrvj4j X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1099,Hydra:6.1.7,FMLib:17.12.80.40 definitions=2025-07-04_06,2025-07-04_01,2025-03-28_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 suspectscore=0 mlxlogscore=999 priorityscore=1501 clxscore=1015 mlxscore=0 lowpriorityscore=0 spamscore=0 adultscore=0 bulkscore=0 phishscore=0 classifier=spam authscore=0 authtc=n/a authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.19.0-2505280000 definitions=main-2507040126 Having the .num_nodes as a separate struct field can provoke errors as it is easy to omit it or to put an incorrect value into that field. Turn .nodes into a NULL-terminated array, removing a need for a separate .num_nodes field. Signed-off-by: Dmitry Baryshkov --- drivers/interconnect/qcom/bcm-voter.c | 4 +- drivers/interconnect/qcom/icc-rpmh.c | 2 +- drivers/interconnect/qcom/icc-rpmh.h | 2 - drivers/interconnect/qcom/qcs615.c | 78 ++++++++++------------------- drivers/interconnect/qcom/qcs8300.c | 75 ++++++++++------------------ drivers/interconnect/qcom/qdu1000.c | 37 +++++--------- drivers/interconnect/qcom/sa8775p.c | 84 +++++++++++-------------------- drivers/interconnect/qcom/sar2130p.c | 48 ++++++------------ drivers/interconnect/qcom/sc7180.c | 75 +++++++++------------------- drivers/interconnect/qcom/sc7280.c | 81 ++++++++++-------------------- drivers/interconnect/qcom/sc8180x.c | 69 +++++++++----------------- drivers/interconnect/qcom/sc8280xp.c | 93 ++++++++++---------------------= ---- drivers/interconnect/qcom/sdm670.c | 74 +++++++++------------------- drivers/interconnect/qcom/sdm845.c | 86 +++++++++++--------------------- drivers/interconnect/qcom/sdx55.c | 60 ++++++++-------------- drivers/interconnect/qcom/sdx65.c | 61 ++++++++--------------- drivers/interconnect/qcom/sdx75.c | 33 +++++-------- drivers/interconnect/qcom/sm6350.c | 78 ++++++++++------------------- drivers/interconnect/qcom/sm7150.c | 80 +++++++++--------------------- drivers/interconnect/qcom/sm8150.c | 86 +++++++++++--------------------- drivers/interconnect/qcom/sm8250.c | 83 +++++++++++-------------------- drivers/interconnect/qcom/sm8350.c | 77 ++++++++++------------------- drivers/interconnect/qcom/sm8450.c | 72 +++++++++------------------ drivers/interconnect/qcom/sm8550.c | 57 +++++++-------------- drivers/interconnect/qcom/sm8650.c | 51 +++++++------------ drivers/interconnect/qcom/sm8750.c | 57 +++++++-------------- drivers/interconnect/qcom/x1e80100.c | 57 +++++++-------------- 27 files changed, 541 insertions(+), 1119 deletions(-) diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/q= com/bcm-voter.c index a2d437a05a11fa7325f944865c81a3ac7dbb203e..4fa960630d28f338f484794d271= a5b52f3e698d3 100644 --- a/drivers/interconnect/qcom/bcm-voter.c +++ b/drivers/interconnect/qcom/bcm-voter.c @@ -68,7 +68,7 @@ static void bcm_aggregate_mask(struct qcom_icc_bcm *bcm) bcm->vote_x[bucket] =3D 0; bcm->vote_y[bucket] =3D 0; =20 - for (i =3D 0; i < bcm->num_nodes; i++) { + for (i =3D 0; bcm->nodes[i]; i++) { node =3D bcm->nodes[i]; =20 /* If any vote in this bucket exists, keep the BCM enabled */ @@ -97,7 +97,7 @@ static void bcm_aggregate(struct qcom_icc_bcm *bcm) u64 temp; =20 for (bucket =3D 0; bucket < QCOM_ICC_NUM_BUCKETS; bucket++) { - for (i =3D 0; i < bcm->num_nodes; i++) { + for (i =3D 0; bcm->nodes[i]; i++) { node =3D bcm->nodes[i]; temp =3D bcm_div(node->sum_avg[bucket] * bcm->aux_data.width, node->buswidth * node->channels); diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qc= om/icc-rpmh.c index 001404e91041597eab7f251606873182e52e360c..7854e3a60d97eb3cdb0a5c1f1b7= 7a96afc104009 100644 --- a/drivers/interconnect/qcom/icc-rpmh.c +++ b/drivers/interconnect/qcom/icc-rpmh.c @@ -184,7 +184,7 @@ int qcom_icc_bcm_init(struct qcom_icc_bcm *bcm, struct = device *dev) bcm->vote_scale =3D 1000; =20 /* Link Qnodes to their respective BCMs */ - for (i =3D 0; i < bcm->num_nodes; i++) { + for (i =3D 0; bcm->nodes[i]; i++) { qn =3D bcm->nodes[i]; qn->bcms[qn->num_bcms] =3D bcm; qn->num_bcms++; diff --git a/drivers/interconnect/qcom/icc-rpmh.h b/drivers/interconnect/qc= om/icc-rpmh.h index bd8d730249b1c9e5b37afbee485b9500a8028c2e..0018aa74187edcac9a0492c7377= 71d957a133cc0 100644 --- a/drivers/interconnect/qcom/icc-rpmh.h +++ b/drivers/interconnect/qcom/icc-rpmh.h @@ -126,7 +126,6 @@ struct qcom_icc_node { * communicating with RPMh * @list: used to link to other bcms when compiling lists for commit * @ws_list: used to keep track of bcms that may transition between wake/s= leep - * @num_nodes: total number of @num_nodes * @nodes: list of qcom_icc_nodes that this BCM encapsulates */ struct qcom_icc_bcm { @@ -142,7 +141,6 @@ struct qcom_icc_bcm { struct bcm_db aux_data; struct list_head list; struct list_head ws_list; - size_t num_nodes; struct qcom_icc_node *nodes[]; }; =20 diff --git a/drivers/interconnect/qcom/qcs615.c b/drivers/interconnect/qcom= /qcs615.c index 7e59e91ce886d641599a780b0f0d56a9e64b7de4..acf452b5ed023b2e42b23f7455e= 57ab124bfa524 100644 --- a/drivers/interconnect/qcom/qcs615.c +++ b/drivers/interconnect/qcom/qcs615.c @@ -1069,20 +1069,17 @@ static struct qcom_icc_node xs_sys_tcu_cfg =3D { =20 static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 37, .nodes =3D { &qhm_spdm, &qnm_snoc, &qhs_a1_noc_cfg, &qhs_aop, &qhs_aoss, &qhs_camera_cfg, @@ -1101,157 +1098,134 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_ufs_mem_cfg, &qhs_usb2, &qhs_usb3, &qhs_venus_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 8, .nodes =3D { &qhm_qspi, &xm_sdc1, &xm_sdc2, &qhs_ahb2phy_east, &qhs_ahb2phy_west, &qhs_qspi, - &qhs_sdc1, &qhs_sdc2 }, + &qhs_sdc1, &qhs_sdc2, NULL }, }; =20 static struct qcom_icc_bcm bcm_ip0 =3D { .name =3D "IP0", - .num_nodes =3D 1, - .nodes =3D { &ipa_core_slave }, + .nodes =3D { &ipa_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 7, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, - &qxm_rot }, + &qxm_rot, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", - .num_nodes =3D 2, - .nodes =3D { &qxm_camnoc_sf, &qns2_mem_noc }, + .nodes =3D { &qxm_camnoc_sf, &qns2_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", - .num_nodes =3D 2, - .nodes =3D { &qxm_venus0, &qxm_venus_arm9 }, + .nodes =3D { &qxm_venus0, &qxm_venus_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 2, - .nodes =3D { &qhm_qup0, &qhm_qup1 }, + .nodes =3D { &qhm_qup0, &qhm_qup1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 1, - .nodes =3D { &acm_apps }, + .nodes =3D { &acm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", - .num_nodes =3D 1, - .nodes =3D { &qns_gem_noc_snoc }, + .nodes =3D { &qns_gem_noc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_gc }, + .nodes =3D { &qns_memnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 2, - .nodes =3D { &srvc_aggre2_noc, &qns_cnoc }, + .nodes =3D { &srvc_aggre2_noc, &qns_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", - .num_nodes =3D 2, - .nodes =3D { &qnm_gemnoc_pcie, &xs_pcie }, + .nodes =3D { &qnm_gemnoc_pcie, &xs_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", - .num_nodes =3D 2, - .nodes =3D { &qxm_pimem, &xm_gic }, + .nodes =3D { &qxm_pimem, &xm_gic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn13 =3D { .name =3D "SN13", - .num_nodes =3D 1, - .nodes =3D { &qnm_lpass_anoc }, + .nodes =3D { &qnm_lpass_anoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_snoc }, + .nodes =3D { &qns_pcie_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn15 =3D { .name =3D "SN15", - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/qcs8300.c b/drivers/interconnect/qco= m/qcs8300.c index e7a1b2fc69babe15b914da8d3a3769bfed110179..0987a7e9dddda298b1afca4ad95= f6d8a909d57e6 100644 --- a/drivers/interconnect/qcom/qcs8300.c +++ b/drivers/interconnect/qcom/qcs8300.c @@ -1477,26 +1477,22 @@ static struct qcom_icc_node srvc_snoc =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 2, - .nodes =3D { &qxm_crypto_0, &qxm_crypto_1 }, + .nodes =3D { &qxm_crypto_0, &qxm_crypto_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 2, - .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie }, + .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 66, .nodes =3D { &qhs_ahb2phy2, &qhs_ahb2phy3, &qhs_anoc_throttle_cfg, &qhs_aoss, &qhs_apss, &qhs_boot_rom, @@ -1529,147 +1525,126 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qns_gpdsp_noc_cfg, &qns_mnoc_hf_cfg, &qns_mnoc_sf_cfg, &qns_pcie_anoc_cfg, &qns_snoc_cfg, &qxs_boot_imem, - &qxs_imem, &xs_sys_tcu_cfg }, + &qxs_imem, &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn2 =3D { .name =3D "CN2", - .num_nodes =3D 3, .nodes =3D { &qhs_qup0, &qhs_qup1, - &qhs_qup3 }, + &qhs_qup3, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn3 =3D { .name =3D "CN3", - .num_nodes =3D 2, - .nodes =3D { &xs_pcie_0, &xs_pcie_1 }, + .nodes =3D { &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_gna0 =3D { .name =3D "GNA0", - .num_nodes =3D 1, - .nodes =3D { &qxm_dsp0 }, + .nodes =3D { &qxm_dsp0, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 4, .nodes =3D { &qnm_camnoc_hf, &qnm_mdp0_0, - &qnm_mdp0_1, &qns_mem_noc_hf }, + &qnm_mdp0_1, &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 6, .nodes =3D { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video_cvp, - &qnm_video_v_cpu, &qns_mem_noc_sf }, + &qnm_video_v_cpu, &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa0 =3D { .name =3D "NSA0", - .num_nodes =3D 2, - .nodes =3D { &qns_hcp, &qns_nsp_gemnoc }, + .nodes =3D { &qns_hcp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa1 =3D { .name =3D "NSA1", - .num_nodes =3D 1, - .nodes =3D { &qxm_nsp }, + .nodes =3D { &qxm_nsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_pci0 =3D { .name =3D "PCI0", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .vote_scale =3D 1, .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .vote_scale =3D 1, .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .vote_scale =3D 1, .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qup3_core_slave }, + .nodes =3D { &qup3_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 2, - .nodes =3D { &qns_a1noc_snoc, &qnm_aggre1_noc }, + .nodes =3D { &qns_a1noc_snoc, &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 2, - .nodes =3D { &qns_a2noc_snoc, &qnm_aggre2_noc }, + .nodes =3D { &qns_a2noc_snoc, &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", - .num_nodes =3D 2, - .nodes =3D { &qns_sysnoc, &qnm_lpass_noc }, + .nodes =3D { &qns_sysnoc, &qnm_lpass_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/qdu1000.c b/drivers/interconnect/qco= m/qdu1000.c index a7392eb73d4a990ec65e9d55f3d0429d05270802..727482c0f7f8f15e32cf508a5f7= 300546e9d2daf 100644 --- a/drivers/interconnect/qcom/qdu1000.c +++ b/drivers/interconnect/qcom/qdu1000.c @@ -770,19 +770,16 @@ static struct qcom_icc_node xs_sys_tcu_cfg =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", - .num_nodes =3D 44, .nodes =3D { &qhm_qpic, &qhm_qspi, &qnm_gemnoc_cnoc, &qnm_gemnoc_modem_slave, &qnm_gemnoc_pcie, &xm_sdc, @@ -804,68 +801,56 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_vsense_ctrl_cfg, &qns_ddrss_cfg, &qns_modem, &qxs_imem, &qxs_pimem, &xs_ethernet_ss, - &xs_qdss_stm, &xs_sys_tcu_cfg - }, + &xs_qdss_stm, &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", - .num_nodes =3D 2, - .nodes =3D { &qup0_core_slave, &qup1_core_slave }, + .nodes =3D { &qup0_core_slave, &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", - .num_nodes =3D 11, .nodes =3D { &alm_sys_tcu, &chm_apps, &qnm_ecpri_dma, &qnm_fec_2_gemnoc, &qnm_pcie, &qnm_snoc_gc, &qnm_snoc_sf, &qxm_mdsp, &qns_gem_noc_cnoc, &qns_modem_slave, - &qns_pcie - }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 6, .nodes =3D { &qhm_gic, &qxm_pimem, &xm_gic, &xm_qdss_etr0, - &xm_qdss_etr1, &qns_gemnoc_gc - }, + &xm_qdss_etr1, &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 5, .nodes =3D { &qnm_aggre_noc, &qxm_ecpri_gsi, &xm_ecpri_dma, &qns_anoc_snoc_gsi, - &qns_ecpri_gemnoc - }, + &qns_ecpri_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", - .num_nodes =3D 2, - .nodes =3D { &qns_pcie_gemnoc, &xs_pcie }, + .nodes =3D { &qns_pcie_gemnoc, &xs_pcie, NULL }, }; =20 static struct qcom_icc_bcm * const clk_virt_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sa8775p.c b/drivers/interconnect/qco= m/sa8775p.c index 04b4abbf44875c767ac67c552b36a8c64a06b2c3..6bbe2fe03f791dd5d3606114d71= d62057ddc52d2 100644 --- a/drivers/interconnect/qcom/sa8775p.c +++ b/drivers/interconnect/qcom/sa8775p.c @@ -1603,26 +1603,22 @@ static struct qcom_icc_node srvc_snoc =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D 0x8, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 2, - .nodes =3D { &qxm_crypto_0, &qxm_crypto_1 }, + .nodes =3D { &qxm_crypto_0, &qxm_crypto_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 2, - .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie }, + .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 76, .nodes =3D { &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_ahb2phy2, &qhs_ahb2phy3, &qhs_anoc_throttle_cfg, &qhs_aoss, @@ -1660,164 +1656,140 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qns_gpdsp_noc_cfg, &qns_mnoc_hf_cfg, &qns_mnoc_sf_cfg, &qns_pcie_anoc_cfg, &qns_snoc_cfg, &qxs_boot_imem, - &qxs_imem, &xs_sys_tcu_cfg }, + &qxs_imem, &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn2 =3D { .name =3D "CN2", - .num_nodes =3D 4, .nodes =3D { &qhs_qup0, &qhs_qup1, - &qhs_qup2, &qhs_qup3 }, + &qhs_qup2, &qhs_qup3, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn3 =3D { .name =3D "CN3", - .num_nodes =3D 2, - .nodes =3D { &xs_pcie_0, &xs_pcie_1 }, + .nodes =3D { &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_gna0 =3D { .name =3D "GNA0", - .num_nodes =3D 1, - .nodes =3D { &qxm_dsp0 }, + .nodes =3D { &qxm_dsp0, NULL }, }; =20 static struct qcom_icc_bcm bcm_gnb0 =3D { .name =3D "GNB0", - .num_nodes =3D 1, - .nodes =3D { &qxm_dsp1 }, + .nodes =3D { &qxm_dsp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 5, .nodes =3D { &qnm_camnoc_hf, &qnm_mdp0_0, &qnm_mdp0_1, &qnm_mdp1_0, - &qns_mem_noc_hf }, + &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 7, .nodes =3D { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video1, &qnm_video_cvp, &qnm_video_v_cpu, - &qns_mem_noc_sf }, + &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa0 =3D { .name =3D "NSA0", - .num_nodes =3D 2, - .nodes =3D { &qns_hcp, &qns_nsp_gemnoc }, + .nodes =3D { &qns_hcp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa1 =3D { .name =3D "NSA1", - .num_nodes =3D 1, - .nodes =3D { &qxm_nsp }, + .nodes =3D { &qxm_nsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsb0 =3D { .name =3D "NSB0", - .num_nodes =3D 2, - .nodes =3D { &qns_nspb_gemnoc, &qns_nspb_hcp }, + .nodes =3D { &qns_nspb_gemnoc, &qns_nspb_hcp, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsb1 =3D { .name =3D "NSB1", - .num_nodes =3D 1, - .nodes =3D { &qxm_nspb }, + .nodes =3D { &qxm_nspb, NULL }, }; =20 static struct qcom_icc_bcm bcm_pci0 =3D { .name =3D "PCI0", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .vote_scale =3D 1, - .num_nodes =3D 2, - .nodes =3D { &qup2_core_slave, &qup3_core_slave }, + .nodes =3D { &qup2_core_slave, &qup3_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 2, - .nodes =3D { &qns_a1noc_snoc, &qnm_aggre1_noc }, + .nodes =3D { &qns_a1noc_snoc, &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 2, - .nodes =3D { &qns_a2noc_snoc, &qnm_aggre2_noc }, + .nodes =3D { &qns_a2noc_snoc, &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", - .num_nodes =3D 2, - .nodes =3D { &qns_sysnoc, &qnm_lpass_noc }, + .nodes =3D { &qns_sysnoc, &qnm_lpass_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sar2130p.c b/drivers/interconnect/qc= om/sar2130p.c index 9eac0ac7681273d6f4350f4431b81ce94dbada3f..cae3601b6789ff38e7bd88c60c4= c8dd8d00e8850 100644 --- a/drivers/interconnect/qcom/sar2130p.c +++ b/drivers/interconnect/qcom/sar2130p.c @@ -1490,21 +1490,18 @@ static struct qcom_icc_node srvc_snoc =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .enable_mask =3D BIT(0), .keepalive =3D true, - .num_nodes =3D 48, .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, &xm_qdss_dap, &qhs_ahb2phy0, &qhs_aoss, &qhs_camera_cfg, @@ -1528,109 +1525,96 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qns_snoc_cfg, &qxs_imem, &qxs_pimem, &srvc_cnoc, &xs_pcie_0, &xs_pcie_1, - &xs_qdss_stm, &xs_sys_tcu_cfg }, + &xs_qdss_stm, &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .enable_mask =3D BIT(0), - .num_nodes =3D 2, - .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .enable_mask =3D BIT(0), - .num_nodes =3D 11, .nodes =3D { &qnm_camnoc_hf, &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_lsr, &qnm_mdp, &qnm_mnoc_cfg, &qnm_video, &qnm_video_cv_cpu, &qnm_video_cvp, &qnm_video_v_cpu, - &qns_mem_noc_sf }, + &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .enable_mask =3D BIT(0), - .num_nodes =3D 13, .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, &chm_apps, &qnm_gpu, &qnm_mnoc_hf, &qnm_mnoc_sf, &qnm_nsp_gemnoc, &qnm_pcie, &qnm_snoc_gc, &qnm_snoc_sf, &qxm_wlan_q6, &qns_gem_noc_cnoc, - &qns_pcie }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .enable_mask =3D BIT(0), - .num_nodes =3D 4, .nodes =3D { &qhm_gic, &qxm_pimem, - &xm_gic, &qns_gemnoc_gc }, + &xm_gic, &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qnm_lpass_noc }, + .nodes =3D { &qnm_lpass_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm * const clk_virt_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sc7180.c b/drivers/interconnect/qcom= /sc7180.c index af2be15438403e4b46fca464b84abd1e0ebebe76..6397d693918b41e35684b180fd6= b8f5cb359386e 100644 --- a/drivers/interconnect/qcom/sc7180.c +++ b/drivers/interconnect/qcom/sc7180.c @@ -1240,42 +1240,36 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 48, .nodes =3D { &qnm_snoc, &xm_qdss_dap, &qhs_a1_noc_cfg, @@ -1323,14 +1317,12 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_venus_throttle_cfg, &qhs_vsense_ctrl_cfg, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D false, - .num_nodes =3D 8, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, @@ -1338,70 +1330,60 @@ static struct qcom_icc_bcm bcm_mm1 =3D { &qxm_mdp0, &qxm_rot, &qxm_venus0, - &qxm_venus_arm9 - }, + &qxm_venus_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_sys_tcu }, + .nodes =3D { &acm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_sf }, + .nodes =3D { &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qup_core_master_1, &qup_core_master_2 }, + .nodes =3D { &qup_core_master_1, &qup_core_master_2, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_apps0 }, + .nodes =3D { &acm_apps0, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cdsp_gemnoc }, + .nodes =3D { &qns_cdsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", .keepalive =3D false, - .num_nodes =3D 8, .nodes =3D { &qhm_qspi, &xm_sdc2, &xm_emmc, @@ -1409,64 +1391,55 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qhs_emmc_cfg, &qhs_pdm, &qhs_qspi, - &qhs_sdc2 - }, + &qhs_sdc2, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qxm_pimem, &qns_gemnoc_gc }, + .nodes =3D { &qxm_pimem, &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_co2 =3D { .name =3D "CO2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_npu }, + .nodes =3D { &qnm_npu, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_co3 =3D { .name =3D "CO3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_npu_dsp }, + .nodes =3D { &qxm_npu_dsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sc7280.c b/drivers/interconnect/qcom= /sc7280.c index 905403a3a930a2e1cd01f62e375e60c6b2d524f7..54e4ce9009bd498a840832e3f63= dd9abfb86f837 100644 --- a/drivers/interconnect/qcom/sc7280.c +++ b/drivers/interconnect/qcom/sc7280.c @@ -1462,26 +1462,22 @@ static struct qcom_icc_node srvc_snoc =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 2, - .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie }, + .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 47, .nodes =3D { &qnm_cnoc3_cnoc2, &xm_qdss_dap, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_camera_cfg, &qhs_clk_ctl, @@ -1504,154 +1500,131 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qns_mnoc_cfg, &qns_snoc_cfg, &qnm_cnoc2_cnoc3, &qhs_aoss, &qhs_apss, &qns_cnoc3_cnoc2, - &qns_cnoc_a2noc, &qns_ddrss_cfg }, + &qns_cnoc_a2noc, &qns_ddrss_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn2 =3D { .name =3D "CN2", - .num_nodes =3D 6, .nodes =3D { &qhs_lpass_cfg, &qhs_pdm, &qhs_qspi, &qhs_sdc1, - &qhs_sdc2, &qhs_sdc4 }, + &qhs_sdc2, &qhs_sdc4, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", - .num_nodes =3D 1, - .nodes =3D { &qns_nsp_gemnoc }, + .nodes =3D { &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_co3 =3D { .name =3D "CO3", - .num_nodes =3D 1, - .nodes =3D { &qxm_nsp }, + .nodes =3D { &qxm_nsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 2, - .nodes =3D { &qxm_camnoc_hf, &qxm_mdp0 }, + .nodes =3D { &qxm_camnoc_hf, &qxm_mdp0, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm4 =3D { .name =3D "MM4", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_sf }, + .nodes =3D { &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm5 =3D { .name =3D "MM5", - .num_nodes =3D 3, .nodes =3D { &qnm_video0, &qxm_camnoc_icp, - &qxm_camnoc_sf }, + &qxm_camnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 2, - .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu }, + .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", - .num_nodes =3D 1, - .nodes =3D { &xm_pcie3_0 }, + .nodes =3D { &xm_pcie3_0, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", - .num_nodes =3D 1, - .nodes =3D { &xm_pcie3_1 }, + .nodes =3D { &xm_pcie3_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sc8180x.c b/drivers/interconnect/qco= m/sc8180x.c index 4dd1d2f2e8216271c15b91b726d4f0c46994ae78..0640ee55220d54fc977dc98f656= 44ecf7f50508f 100644 --- a/drivers/interconnect/qcom/sc8180x.c +++ b/drivers/interconnect/qcom/sc8180x.c @@ -1346,47 +1346,40 @@ static struct qcom_icc_node slv_qup_core_2 =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &slv_ebi } + .nodes =3D { &slv_ebi, NULL } }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &slv_ebi } + .nodes =3D { &slv_ebi, NULL } }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &slv_qns_llcc } + .nodes =3D { &slv_qns_llcc, NULL } }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &slv_qns_mem_noc_hf } + .nodes =3D { &slv_qns_mem_noc_hf, NULL } }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &slv_qns_cdsp_mem_noc } + .nodes =3D { &slv_qns_cdsp_mem_noc, NULL } }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &mas_qxm_crypto } + .nodes =3D { &mas_qxm_crypto, NULL } }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 57, .nodes =3D { &mas_qnm_snoc, &slv_qhs_a1_noc_cfg, &slv_qhs_a2_noc_cfg, @@ -1443,124 +1436,108 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &slv_qhs_usb3_2, &slv_qhs_venus_cfg, &slv_qhs_vsense_ctrl_cfg, - &slv_srvc_cnoc } + &slv_srvc_cnoc, NULL } }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 7, .nodes =3D { &mas_qxm_camnoc_hf0_uncomp, &mas_qxm_camnoc_hf1_uncomp, &mas_qxm_camnoc_sf_uncomp, &mas_qxm_camnoc_hf0, &mas_qxm_camnoc_hf1, &mas_qxm_mdp0, - &mas_qxm_mdp1 } + &mas_qxm_mdp1, NULL } }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", - .num_nodes =3D 3, .nodes =3D { &mas_qup_core_0, &mas_qup_core_1, - &mas_qup_core_2 } + &mas_qup_core_2, NULL } }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 1, - .nodes =3D { &slv_qns_gem_noc_snoc } + .nodes =3D { &slv_qns_gem_noc_snoc, NULL } }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", - .num_nodes =3D 6, .nodes =3D { &mas_qxm_camnoc_sf, &mas_qxm_rot, &mas_qxm_venus0, &mas_qxm_venus1, &mas_qxm_venus_arm9, - &slv_qns2_mem_noc } + &slv_qns2_mem_noc, NULL } }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &mas_acm_apps } + .nodes =3D { &mas_acm_apps, NULL } }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", - .num_nodes =3D 1, - .nodes =3D { &slv_qns_gemnoc_sf } + .nodes =3D { &slv_qns_gemnoc_sf, NULL } }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 1, - .nodes =3D { &slv_qxs_imem } + .nodes =3D { &slv_qxs_imem, NULL } }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &slv_qns_gemnoc_gc } + .nodes =3D { &slv_qns_gemnoc_gc, NULL } }; =20 static struct qcom_icc_bcm bcm_co2 =3D { .name =3D "CO2", - .num_nodes =3D 1, - .nodes =3D { &mas_qnm_npu } + .nodes =3D { &mas_qnm_npu, NULL } }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D true, - .num_nodes =3D 2, .nodes =3D { &slv_srvc_aggre1_noc, - &slv_qns_cnoc } + &slv_qns_cnoc, NULL } }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &slv_qxs_pimem } + .nodes =3D { &slv_qxs_pimem, NULL } }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", - .num_nodes =3D 4, .nodes =3D { &slv_xs_pcie_0, &slv_xs_pcie_1, &slv_xs_pcie_2, - &slv_xs_pcie_3 } + &slv_xs_pcie_3, NULL } }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", - .num_nodes =3D 1, - .nodes =3D { &mas_qnm_aggre1_noc } + .nodes =3D { &mas_qnm_aggre1_noc, NULL } }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", - .num_nodes =3D 1, - .nodes =3D { &mas_qnm_aggre2_noc } + .nodes =3D { &mas_qnm_aggre2_noc, NULL } }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", - .num_nodes =3D 1, - .nodes =3D { &slv_qns_pcie_mem_noc } + .nodes =3D { &slv_qns_pcie_mem_noc, NULL } }; =20 static struct qcom_icc_bcm bcm_sn15 =3D { .name =3D "SN15", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &mas_qnm_gemnoc } + .nodes =3D { &mas_qnm_gemnoc, NULL } }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sc8280xp.c b/drivers/interconnect/qc= om/sc8280xp.c index c646cdf8a19bf6f5a581cd9491b104259259fff3..1a9b97aa9e1c5bec0cda12cb4c5= a8b14af970358 100644 --- a/drivers/interconnect/qcom/sc8280xp.c +++ b/drivers/interconnect/qcom/sc8280xp.c @@ -1714,20 +1714,17 @@ static struct qcom_icc_node srvc_snoc =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 9, .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, &xs_pcie_0, @@ -1736,13 +1733,11 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &xs_pcie_2b, &xs_pcie_3a, &xs_pcie_3b, - &xs_pcie_4 - }, + &xs_pcie_4, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 67, .nodes =3D { &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_ahb2phy2, @@ -1809,51 +1804,42 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qns_mnoc_cfg, &qns_snoc_cfg, &qns_snoc_sf_bridge_cfg, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn2 =3D { .name =3D "CN2", - .num_nodes =3D 4, .nodes =3D { &qhs_qspi, &qhs_qup0, &qhs_qup1, - &qhs_qup2 - }, + &qhs_qup2, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn3 =3D { .name =3D "CN3", - .num_nodes =3D 3, .nodes =3D { &qxs_imem, &xs_smss, - &xs_sys_tcu_cfg - }, + &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 5, .nodes =3D { &qnm_camnoc_hf, &qnm_mdp0_0, &qnm_mdp0_1, &qnm_mdp1_0, - &qns_mem_noc_hf - }, + &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 8, .nodes =3D { &qnm_rot_0, &qnm_rot_1, &qnm_video0, @@ -1861,133 +1847,108 @@ static struct qcom_icc_bcm bcm_mm1 =3D { &qnm_video_cvp, &qxm_camnoc_icp, &qxm_camnoc_sf, - &qns_mem_noc_sf - }, + &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa0 =3D { .name =3D "NSA0", - .num_nodes =3D 2, .nodes =3D { &qns_nsp_gemnoc, - &qxs_nsp_xfr - }, + &qxs_nsp_xfr, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsa1 =3D { .name =3D "NSA1", - .num_nodes =3D 1, - .nodes =3D { &qxm_nsp }, + .nodes =3D { &qxm_nsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsb0 =3D { .name =3D "NSB0", - .num_nodes =3D 2, .nodes =3D { &qns_nspb_gemnoc, - &qxs_nspb_xfr - }, + &qxs_nspb_xfr, NULL }, }; =20 static struct qcom_icc_bcm bcm_nsb1 =3D { .name =3D "NSB1", - .num_nodes =3D 1, - .nodes =3D { &qxm_nspb }, + .nodes =3D { &qxm_nspb, NULL }, }; =20 static struct qcom_icc_bcm bcm_pci0 =3D { .name =3D "PCI0", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_gem_noc }, + .nodes =3D { &qns_pcie_gem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 2, .nodes =3D { &qns_a1noc_snoc, - &qnm_aggre1_noc - }, + &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 2, .nodes =3D { &qns_a2noc_snoc, - &qnm_aggre2_noc - }, + &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", - .num_nodes =3D 2, .nodes =3D { &qns_aggre_usb_snoc, - &qnm_aggre_usb_noc - }, + &qnm_aggre_usb_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", - .num_nodes =3D 2, .nodes =3D { &qns_sysnoc, - &qnm_lpass_noc - }, + &qnm_lpass_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sdm670.c b/drivers/interconnect/qcom= /sdm670.c index 907e1ff4ff81796ec9459ccc72a3f8c5d110ec57..7a61e2472319b0f6a2a3dee5df0= 14640345e3e79 100644 --- a/drivers/interconnect/qcom/sdm670.c +++ b/drivers/interconnect/qcom/sdm670.c @@ -1049,105 +1049,90 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_apps_io }, + .nodes =3D { &qns_apps_io, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D true, - .num_nodes =3D 7, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, - &qxm_mdp1 - }, + &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_snoc }, + .nodes =3D { &qns_memnoc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns2_mem_noc }, + .nodes =3D { &qns2_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_tcu }, + .nodes =3D { &acm_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 5, - .nodes =3D { &qxm_camnoc_sf, &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_ven= us_arm9 }, + .nodes =3D { &qxm_camnoc_sf, &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_ven= us_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh5 =3D { .name =3D "SH5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_apps }, + .nodes =3D { &qnm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_sf }, + .nodes =3D { &qns_memnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 41, .nodes =3D { &qhm_spdm, &qnm_snoc, &qhs_a1_noc_cfg, @@ -1188,78 +1173,67 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_qup1, &qhm_qup2 }, + .nodes =3D { &qhm_qup1, &qhm_qup2, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_gc }, + .nodes =3D { &qns_memnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cnoc }, + .nodes =3D { &qns_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qxm_pimem, &qxs_pimem }, + .nodes =3D { &qxm_pimem, &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_aggre1_noc, &srvc_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, &srvc_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_aggre2_noc, &srvc_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, &srvc_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_gladiator_sodv, &xm_gic }, + .nodes =3D { &qnm_gladiator_sodv, &xm_gic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn13 =3D { .name =3D "SN13", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc }, + .nodes =3D { &qnm_memnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sdm845.c b/drivers/interconnect/qcom= /sdm845.c index 855802be93fea1d999bc8a885f36c3c318e1d86d..9d5bd2c9943b620b41d70e9c56f= 8ddc32c75d5a7 100644 --- a/drivers/interconnect/qcom/sdm845.c +++ b/drivers/interconnect/qcom/sdm845.c @@ -1267,105 +1267,90 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_apps_io }, + .nodes =3D { &qns_apps_io, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D true, - .num_nodes =3D 7, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, - &qxm_mdp1 - }, + &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_snoc }, + .nodes =3D { &qns_memnoc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns2_mem_noc }, + .nodes =3D { &qns2_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_tcu }, + .nodes =3D { &acm_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 5, - .nodes =3D { &qxm_camnoc_sf, &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_ven= us_arm9 }, + .nodes =3D { &qxm_camnoc_sf, &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_ven= us_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh5 =3D { .name =3D "SH5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_apps }, + .nodes =3D { &qnm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_sf }, + .nodes =3D { &qns_memnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D false, - .num_nodes =3D 47, .nodes =3D { &qhm_spdm, &qhm_tic, &qnm_snoc, @@ -1412,106 +1397,91 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_qup1, &qhm_qup2 }, + .nodes =3D { &qhm_qup1, &qhm_qup2, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_gc }, + .nodes =3D { &qns_memnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cnoc }, + .nodes =3D { &qns_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_pimem }, + .nodes =3D { &qxm_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &qhs_apss, &srvc_snoc, &xs_sys_tcu_cfg }, + .nodes =3D { &qhs_apss, &srvc_snoc, &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pcie }, + .nodes =3D { &qxs_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pcie_gen3 }, + .nodes =3D { &qxs_pcie_gen3, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &srvc_aggre1_noc, &qnm_aggre1_noc }, + .nodes =3D { &srvc_aggre1_noc, &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &srvc_aggre2_noc, &qnm_aggre2_noc }, + .nodes =3D { &srvc_aggre2_noc, &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_gladiator_sodv, &xm_gic }, + .nodes =3D { &qnm_gladiator_sodv, &xm_gic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_pcie_anoc }, + .nodes =3D { &qnm_pcie_anoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn15 =3D { .name =3D "SN15", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc }, + .nodes =3D { &qnm_memnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sdx55.c b/drivers/interconnect/qcom/= sdx55.c index 4117db046fa00c634a43d9287711589315f60210..af273e39eef3e90519635d1c310= dc108a9f8b708 100644 --- a/drivers/interconnect/qcom/sdx55.c +++ b/drivers/interconnect/qcom/sdx55.c @@ -646,141 +646,121 @@ static struct qcom_icc_node xs_sys_tcu_cfg =3D { static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn0 =3D { .name =3D "PN0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qhm_snoc_cfg }, + .nodes =3D { &qhm_snoc_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_apps_rdwr }, + .nodes =3D { &xm_apps_rdwr, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qns_memnoc_snoc, &qns_sys_pcie }, + .nodes =3D { &qns_memnoc_snoc, &qns_sys_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_snoc_memnoc }, + .nodes =3D { &qns_snoc_memnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn1 =3D { .name =3D "PN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_sdc1 }, + .nodes =3D { &xm_sdc1, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn2 =3D { .name =3D "PN2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_audio, &qhm_spmi_fetcher1 }, + .nodes =3D { &qhm_audio, &qhm_spmi_fetcher1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn3 =3D { .name =3D "PN3", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_blsp1, &qhm_qpic }, + .nodes =3D { &qhm_blsp1, &qhm_qpic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_sys_tcu_cfg }, + .nodes =3D { &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn5 =3D { .name =3D "PN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_pcie }, + .nodes =3D { &xs_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 5, - .nodes =3D { &qnm_aggre_noc, &xm_emac, &xm_emac, &xm_usb3, &qns_aggre_noc= }, + .nodes =3D { &qnm_aggre_noc, &xm_emac, &xm_emac, &xm_usb3, &qns_aggre_noc= , NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_qdss_bam, &xm_qdss_etr }, + .nodes =3D { &qhm_qdss_bam, &xm_qdss_etr, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc }, + .nodes =3D { &qnm_memnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc_pcie }, + .nodes =3D { &qnm_memnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_ipa, &xm_ipa2pcie_slv }, + .nodes =3D { &qnm_ipa, &xm_ipa2pcie_slv, NULL }, }; =20 static struct qcom_icc_bcm * const mc_virt_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sdx65.c b/drivers/interconnect/qcom/= sdx65.c index d3a6c6c148e5dedc95dbac3ad9b20538ce56a16d..cf24f94eef6e0e1a7c1e957e07a= 316803942d174 100644 --- a/drivers/interconnect/qcom/sdx65.c +++ b/drivers/interconnect/qcom/sdx65.c @@ -607,21 +607,18 @@ static struct qcom_icc_node xs_sys_tcu_cfg =3D { static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn0 =3D { .name =3D "PN0", .keepalive =3D true, - .num_nodes =3D 26, .nodes =3D { &qhm_snoc_cfg, &qhs_aoss, &qhs_apss, @@ -647,127 +644,109 @@ static struct qcom_icc_bcm bcm_pn0 =3D { &qhs_tlmm, &qhs_usb3, &qhs_usb3_phy, - &srvc_snoc - }, + &srvc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn1 =3D { .name =3D "PN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_sdc1 }, + .nodes =3D { &xm_sdc1, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn2 =3D { .name =3D "PN2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_audio, &qhm_spmi_fetcher1 }, + .nodes =3D { &qhm_audio, &qhm_spmi_fetcher1, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn3 =3D { .name =3D "PN3", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_blsp1, &qhm_qpic }, + .nodes =3D { &qhm_blsp1, &qhm_qpic, NULL }, }; =20 static struct qcom_icc_bcm bcm_pn4 =3D { .name =3D "PN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_memnoc_snoc }, + .nodes =3D { &qns_memnoc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_apps_rdwr }, + .nodes =3D { &xm_apps_rdwr, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_snoc_memnoc }, + .nodes =3D { &qns_snoc_memnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_sys_tcu_cfg }, + .nodes =3D { &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_pcie }, + .nodes =3D { &xs_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qhm_qdss_bam, &xm_qdss_etr }, + .nodes =3D { &qhm_qdss_bam, &xm_qdss_etr, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 4, - .nodes =3D { &qnm_aggre_noc, &xm_pcie, &xm_usb3, &qns_aggre_noc }, + .nodes =3D { &qnm_aggre_noc, &xm_pcie, &xm_usb3, &qns_aggre_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc }, + .nodes =3D { &qnm_memnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_memnoc_pcie }, + .nodes =3D { &qnm_memnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qnm_ipa, &xm_ipa2pcie_slv }, + .nodes =3D { &qnm_ipa, &xm_ipa2pcie_slv, NULL }, }; =20 static struct qcom_icc_bcm * const mc_virt_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sdx75.c b/drivers/interconnect/qcom/= sdx75.c index 7ef1f17f3292e15959cb06e3d8d8c5f3c6ecd060..ea799f7ec0c5a7e87bf62434711= 20c917d100ff6 100644 --- a/drivers/interconnect/qcom/sdx75.c +++ b/drivers/interconnect/qcom/sdx75.c @@ -794,14 +794,12 @@ static struct qcom_icc_node xs_sys_tcu_cfg =3D { =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 39, .nodes =3D { &qhm_pcie_rscc, &qnm_gemnoc_cnoc, &ps_eth0_cfg, &ps_eth1_cfg, &qhs_audio, &qhs_clk_ctl, @@ -821,57 +819,50 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &srvc_pcie_system_noc, &srvc_system_noc, &xs_pcie_0, &xs_pcie_1, &xs_pcie_2, &xs_qdss_stm, - &xs_sys_tcu_cfg }, + &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_qp0 =3D { .name =3D "QP0", - .num_nodes =3D 1, - .nodes =3D { &qpic_core_slave }, + .nodes =3D { &qpic_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", - .num_nodes =3D 10, .nodes =3D { &alm_sys_tcu, &chm_apps, &qnm_gemnoc_cfg, &qnm_mdsp, &qnm_snoc_sf, &xm_gic, &xm_ipa2pcie, &qns_gemnoc_cnoc, - &qns_pcie, &srvc_gemnoc }, + &qns_pcie, &srvc_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", - .num_nodes =3D 21, .nodes =3D { &xm_pcie3_0, &xm_pcie3_1, &xm_pcie3_2, &qhm_audio, &qhm_gic, &qhm_qdss_bam, @@ -882,19 +873,17 @@ static struct qcom_icc_bcm bcm_sn1 =3D { &xm_emac_0, &xm_emac_1, &xm_qdss_etr0, &xm_qdss_etr1, &xm_sdc1, &xm_sdc4, - &xm_usb3 }, + &xm_usb3, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 2, - .nodes =3D { &qnm_aggre_noc, &qns_a1noc }, + .nodes =3D { &qnm_aggre_noc, &qns_a1noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 2, - .nodes =3D { &qnm_pcie, &qns_pcie_gemnoc }, + .nodes =3D { &qnm_pcie, &qns_pcie_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const clk_virt_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm6350.c b/drivers/interconnect/qcom= /sm6350.c index f41d7e19ba269cba7cc07b0136a6d1fcccd8af4d..016f75ef970648b00a87483a6de= e04dd8208726f 100644 --- a/drivers/interconnect/qcom/sm6350.c +++ b/drivers/interconnect/qcom/sm6350.c @@ -1166,21 +1166,18 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 41, .nodes =3D { &qnm_snoc, &xm_qdss_dap, &qhs_a1_noc_cfg, @@ -1221,173 +1218,148 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_venus_throttle_cfg, &qhs_vsense_ctrl_cfg, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", .keepalive =3D false, - .num_nodes =3D 6, .nodes =3D { &xm_emmc, &xm_sdc2, &qhs_ahb2phy2, &qhs_emmc_cfg, &qhs_pdm, - &qhs_sdc2 - }, + &qhs_sdc2, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cdsp_gemnoc }, + .nodes =3D { &qns_cdsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_co2 =3D { .name =3D "CO2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_npu }, + .nodes =3D { &qnm_npu, NULL }, }; =20 static struct qcom_icc_bcm bcm_co3 =3D { .name =3D "CO3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_npu_dsp }, + .nodes =3D { &qxm_npu_dsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D true, - .num_nodes =3D 5, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_icp_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf, - &qxm_mdp0 - }, + &qxm_mdp0, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_sf }, + .nodes =3D { &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 4, - .nodes =3D { &qhm_mnoc_cfg, &qnm_video0, &qnm_video_cvp, &qxm_camnoc_sf }, + .nodes =3D { &qhm_mnoc_cfg, &qnm_video0, &qnm_video_cvp, &qxm_camnoc_sf, = NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 4, - .nodes =3D { &qup0_core_master, &qup1_core_master, &qup0_core_slave, &qup= 1_core_slave }, + .nodes =3D { &qup0_core_master, &qup1_core_master, &qup0_core_slave, &qup= 1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_sys_tcu }, + .nodes =3D { &acm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_apps }, + .nodes =3D { &acm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn10 =3D { .name =3D "SN10", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm7150.c b/drivers/interconnect/qcom= /sm7150.c index c8c77407cd508dfede2821b7d52bf9da54283bad..3892e49e614ba189d29d9bb6f27= 8835283bfaac0 100644 --- a/drivers/interconnect/qcom/sm7150.c +++ b/drivers/interconnect/qcom/sm7150.c @@ -1185,35 +1185,30 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D true, - .num_nodes =3D 8, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_rt_uncomp, &qxm_camnoc_sf_uncomp, @@ -1221,84 +1216,71 @@ static struct qcom_icc_bcm bcm_mm1 =3D { &qxm_camnoc_hf, &qxm_camnoc_rt, &qxm_mdp0, - &qxm_mdp1 - }, + &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gem_noc_snoc }, + .nodes =3D { &qns_gem_noc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_sys_tcu }, + .nodes =3D { &acm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 2, .nodes =3D { &qxm_camnoc_nrt, - &qns2_mem_noc - }, + &qns2_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 5, .nodes =3D { &qxm_camnoc_sf, &qxm_rot, &qxm_venus0, &qxm_venus1, - &qxm_venus_arm9 - }, + &qxm_venus_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh5 =3D { .name =3D "SH5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_apps }, + .nodes =3D { &acm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh8 =3D { .name =3D "SH8", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cdsp_gemnoc }, + .nodes =3D { &qns_cdsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh10 =3D { .name =3D "SH10", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_npu }, + .nodes =3D { &qnm_npu, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 54, .nodes =3D { &qhm_tsif, &xm_emmc, &xm_sdc2, @@ -1352,79 +1334,65 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_throttle_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 2, .nodes =3D { &qhm_qup_center, - &qhm_qup_north - }, + &qhm_qup_north, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 2, .nodes =3D { &qnm_aggre1_noc, - &qns_a1noc_snoc - }, + &qns_a1noc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 2, .nodes =3D { &qnm_aggre2_noc, - &qns_a2noc_snoc - }, + &qns_a2noc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", .keepalive =3D false, - .num_nodes =3D 2, .nodes =3D { &qxm_pimem, - &xm_gic - }, + &xm_gic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_gemnoc }, + .nodes =3D { &qns_pcie_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn15 =3D { .name =3D "SN15", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8150.c b/drivers/interconnect/qcom= /sm8150.c index edfe824cad3533cfc6263c2031838f96e1986fa5..c5dc5b55ae564683dd169de621f= ffcd7449a70f5 100644 --- a/drivers/interconnect/qcom/sm8150.c +++ b/drivers/interconnect/qcom/sm8150.c @@ -1284,126 +1284,108 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D false, - .num_nodes =3D 7, .nodes =3D { &qxm_camnoc_hf0_uncomp, &qxm_camnoc_hf1_uncomp, &qxm_camnoc_sf_uncomp, &qxm_camnoc_hf0, &qxm_camnoc_hf1, &qxm_mdp0, - &qxm_mdp1 - }, + &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gem_noc_snoc }, + .nodes =3D { &qns_gem_noc_snoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qxm_camnoc_sf, &qns2_mem_noc }, + .nodes =3D { &qxm_camnoc_sf, &qns2_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &acm_gpu_tcu, &acm_sys_tcu }, + .nodes =3D { &acm_gpu_tcu, &acm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 4, - .nodes =3D { &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_venus_arm9 }, + .nodes =3D { &qxm_rot, &qxm_venus0, &qxm_venus1, &qxm_venus_arm9, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh5 =3D { .name =3D "SH5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &acm_apps }, + .nodes =3D { &acm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cdsp_mem_noc }, + .nodes =3D { &qns_cdsp_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_co1 =3D { .name =3D "CO1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_npu }, + .nodes =3D { &qnm_npu, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 53, .nodes =3D { &qhm_spdm, &qnm_snoc, &qhs_a1_noc_cfg, @@ -1456,85 +1438,73 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &qhm_qup0, &qhm_qup1, &qhm_qup2 }, + .nodes =3D { &qhm_qup0, &qhm_qup1, &qhm_qup2, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &srvc_aggre1_noc, &srvc_aggre2_noc, &qns_cnoc }, + .nodes =3D { &srvc_aggre1_noc, &srvc_aggre2_noc, &qns_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &xs_pcie_0, &xs_pcie_1 }, + .nodes =3D { &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qxm_pimem, &xm_gic }, + .nodes =3D { &qxm_pimem, &xm_gic, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn15 =3D { .name =3D "SN15", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8250.c b/drivers/interconnect/qcom= /sm8250.c index cc1b14c1352910fd450c334fa90f2a0b390bb9bc..cd7a37ecb9b55e40e9a90a9b649= ae8cced1d1bb3 100644 --- a/drivers/interconnect/qcom/sm8250.c +++ b/drivers/interconnect/qcom/sm8250.c @@ -1399,105 +1399,91 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &qnm_camnoc_hf, &qxm_mdp0, &qxm_mdp1 }, + .nodes =3D { &qnm_camnoc_hf, &qxm_mdp0, &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu }, + .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm2 =3D { .name =3D "MM2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_sf }, + .nodes =3D { &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &qup0_core_master, &qup1_core_master, &qup2_core_master }, + .nodes =3D { &qup0_core_master, &qup1_core_master, &qup2_core_master, NUL= L }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm3 =3D { .name =3D "MM3", .keepalive =3D false, - .num_nodes =3D 5, - .nodes =3D { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video1, &= qnm_video_cvp }, + .nodes =3D { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video1, + &qnm_video_cvp, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_cdsp_mem_noc }, + .nodes =3D { &qns_cdsp_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 52, .nodes =3D { &qnm_snoc, &xm_qdss_dap, &qhs_a1_noc_cfg, @@ -1549,92 +1535,79 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_venus_cfg, &qhs_vsense_ctrl_cfg, &qns_cnoc_a2noc, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_imem }, + .nodes =3D { &qxs_imem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_co2 =3D { .name =3D "CO2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_npu }, + .nodes =3D { &qnm_npu, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_pcie_modem }, + .nodes =3D { &xs_pcie_modem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &xs_pcie_0, &xs_pcie_1 }, + .nodes =3D { &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn9 =3D { .name =3D "SN9", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc_pcie }, + .nodes =3D { &qnm_gemnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn11 =3D { .name =3D "SN11", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_gemnoc }, + .nodes =3D { &qnm_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn12 =3D { .name =3D "SN12", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &qns_pcie_modem_mem_noc, &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_modem_mem_noc, &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8350.c b/drivers/interconnect/qcom= /sm8350.c index 38105ead4f29548ab32c60aeba224fbf3909667c..3fa17b5786b726a8a61c347f9e2= bb61dc0709546 100644 --- a/drivers/interconnect/qcom/sm8350.c +++ b/drivers/interconnect/qcom/sm8350.c @@ -1270,28 +1270,24 @@ static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 2, - .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie }, + .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", .keepalive =3D false, - .num_nodes =3D 47, .nodes =3D { &xm_qdss_dap, &qhs_ahb2phy0, &qhs_ahb2phy1, @@ -1338,161 +1334,138 @@ static struct qcom_icc_bcm bcm_cn1 =3D { &qns_ddrss_cfg, &qns_mnoc_cfg, &qns_snoc_cfg, - &srvc_cnoc - }, + &srvc_cnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn2 =3D { .name =3D "CN2", .keepalive =3D false, - .num_nodes =3D 5, - .nodes =3D { &qhs_lpass_cfg, &qhs_pdm, &qhs_qspi, &qhs_sdc2, &qhs_sdc4 }, + .nodes =3D { &qhs_lpass_cfg, &qhs_pdm, &qhs_qspi, &qhs_sdc2, &qhs_sdc4, N= ULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_nsp_gemnoc }, + .nodes =3D { &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_co3 =3D { .name =3D "CO3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxm_nsp }, + .nodes =3D { &qxm_nsp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .keepalive =3D false, - .num_nodes =3D 3, - .nodes =3D { &qnm_camnoc_hf, &qxm_mdp0, &qxm_mdp1 }, + .nodes =3D { &qnm_camnoc_hf, &qxm_mdp0, &qxm_mdp1, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm4 =3D { .name =3D "MM4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_sf }, + .nodes =3D { &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm5 =3D { .name =3D "MM5", .keepalive =3D false, - .num_nodes =3D 6, .nodes =3D { &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_video0, &qnm_video1, &qnm_video_cvp, - &qxm_rot - }, + &qxm_rot, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh2 =3D { .name =3D "SH2", .keepalive =3D false, - .num_nodes =3D 2, - .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu }, + .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh3 =3D { .name =3D "SH3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_cmpnoc }, + .nodes =3D { &qnm_cmpnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh4 =3D { .name =3D "SH4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &chm_apps }, + .nodes =3D { &chm_apps, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_gc }, + .nodes =3D { &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qxs_pimem }, + .nodes =3D { &qxs_pimem, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xs_qdss_stm }, + .nodes =3D { &xs_qdss_stm, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn5 =3D { .name =3D "SN5", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_pcie3_0 }, + .nodes =3D { &xm_pcie3_0, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn6 =3D { .name =3D "SN6", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &xm_pcie3_1 }, + .nodes =3D { &xm_pcie3_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn8 =3D { .name =3D "SN8", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn14 =3D { .name =3D "SN14", .keepalive =3D false, - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8450.c b/drivers/interconnect/qcom= /sm8450.c index eb7e17df32ba656cf1934e0fc112189966b22ac2..94e60b5067625606e2b141fbde1= b5d90425386d3 100644 --- a/drivers/interconnect/qcom/sm8450.c +++ b/drivers/interconnect/qcom/sm8450.c @@ -1340,21 +1340,18 @@ static struct qcom_icc_node qns_mem_noc_sf_disp =3D= { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D 0x8, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .enable_mask =3D 0x1, .keepalive =3D true, - .num_nodes =3D 55, .nodes =3D { &qnm_gemnoc_cnoc, &qnm_gemnoc_pcie, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_aoss, &qhs_camera_cfg, @@ -1382,160 +1379,139 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qxs_imem, &qxs_pimem, &srvc_cnoc, &xs_pcie_0, &xs_pcie_1, &xs_qdss_stm, - &xs_sys_tcu_cfg }, + &xs_sys_tcu_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .enable_mask =3D 0x1, - .num_nodes =3D 2, - .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .enable_mask =3D 0x1, - .num_nodes =3D 12, .nodes =3D { &qnm_camnoc_hf, &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_mdp, &qnm_mnoc_cfg, &qnm_rot, &qnm_vapss_hcp, &qnm_video, &qnm_video_cv_cpu, &qnm_video_cvp, - &qnm_video_v_cpu, &qns_mem_noc_sf }, + &qnm_video_v_cpu, &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .enable_mask =3D 0x1, - .num_nodes =3D 7, .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, &qnm_nsp_gemnoc, &qnm_pcie, &qnm_snoc_gc, &qns_gem_noc_cnoc, - &qns_pcie }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .enable_mask =3D 0x1, - .num_nodes =3D 4, .nodes =3D { &qhm_gic, &qxm_pimem, - &xm_gic, &qns_gemnoc_gc }, + &xm_gic, &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qnm_lpass_noc }, + .nodes =3D { &qnm_lpass_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_acv_disp =3D { .name =3D "ACV", .enable_mask =3D 0x1, - .num_nodes =3D 1, - .nodes =3D { &ebi_disp }, + .nodes =3D { &ebi_disp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0_disp =3D { .name =3D "MC0", - .num_nodes =3D 1, - .nodes =3D { &ebi_disp }, + .nodes =3D { &ebi_disp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0_disp =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf_disp }, + .nodes =3D { &qns_mem_noc_hf_disp, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1_disp =3D { .name =3D "MM1", .enable_mask =3D 0x1, - .num_nodes =3D 3, .nodes =3D { &qnm_mdp_disp, &qnm_rot_disp, - &qns_mem_noc_sf_disp }, + &qns_mem_noc_sf_disp, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0_disp =3D { .name =3D "SH0", - .num_nodes =3D 1, - .nodes =3D { &qns_llcc_disp }, + .nodes =3D { &qns_llcc_disp, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1_disp =3D { .name =3D "SH1", .enable_mask =3D 0x1, - .num_nodes =3D 1, - .nodes =3D { &qnm_pcie_disp }, + .nodes =3D { &qnm_pcie_disp, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8550.c b/drivers/interconnect/qcom= /sm8550.c index fdb97d1f1d074d17b55f10a5852ce80388b611b7..39101b4a423c1bb404a80a83eaf= 1ff96ccbf2bad 100644 --- a/drivers/interconnect/qcom/sm8550.c +++ b/drivers/interconnect/qcom/sm8550.c @@ -1120,21 +1120,18 @@ static struct qcom_icc_node qns_gemnoc_sf =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D 0x8, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .enable_mask =3D 0x1, .keepalive =3D true, - .num_nodes =3D 54, .nodes =3D { &qsm_cfg, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_apss, &qhs_camera_cfg, &qhs_clk_ctl, @@ -1161,126 +1158,110 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_aoss, &qhs_tme_cfg, &qss_cfg, &qss_ddrss_cfg, &qxs_boot_imem, &qxs_imem, - &xs_pcie_0, &xs_pcie_1 }, + &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 1, - .nodes =3D { &qhs_display_cfg }, + .nodes =3D { &qhs_display_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .enable_mask =3D 0x1, - .num_nodes =3D 2, - .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_lp0 =3D { .name =3D "LP0", - .num_nodes =3D 2, - .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc }, + .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .enable_mask =3D 0x1, - .num_nodes =3D 8, .nodes =3D { &qnm_camnoc_hf, &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_vapss_hcp, &qnm_video_cv_cpu, &qnm_video_cvp, - &qnm_video_v_cpu, &qns_mem_noc_sf }, + &qnm_video_v_cpu, &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .enable_mask =3D 0x1, - .num_nodes =3D 13, .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, &chm_apps, &qnm_gpu, &qnm_mdsp, &qnm_mnoc_hf, &qnm_mnoc_sf, &qnm_nsp_gemnoc, &qnm_pcie, &qnm_snoc_gc, &qnm_snoc_sf, &qns_gem_noc_cnoc, - &qns_pcie }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn1 =3D { .name =3D "SN1", .enable_mask =3D 0x1, - .num_nodes =3D 3, .nodes =3D { &qhm_gic, &xm_gic, - &qns_gemnoc_gc }, + &qns_gemnoc_gc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn7 =3D { .name =3D "SN7", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { diff --git a/drivers/interconnect/qcom/sm8650.c b/drivers/interconnect/qcom= /sm8650.c index b7c321f4e4b51cbcb138e906e561325393e3e14e..9ec2f1308923e5f69c102d2c2d2= 5d25b42711fa0 100644 --- a/drivers/interconnect/qcom/sm8650.c +++ b/drivers/interconnect/qcom/sm8650.c @@ -1492,21 +1492,18 @@ static struct qcom_icc_node qns_gemnoc_sf =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(0), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .enable_mask =3D BIT(0), .keepalive =3D true, - .num_nodes =3D 59, .nodes =3D { &qsm_cfg, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_camera_cfg, &qhs_clk_ctl, &qhs_cpr_cx, @@ -1536,80 +1533,70 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qhs_tme_cfg, &qss_apss, &qss_cfg, &qss_ddrss_cfg, &qxs_imem, &srvc_cnoc_main, - &xs_pcie_0, &xs_pcie_1 }, + &xs_pcie_0, &xs_pcie_1, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .enable_mask =3D BIT(0), - .num_nodes =3D 2, - .nodes =3D { &qnm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qnm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_lp0 =3D { .name =3D "LP0", - .num_nodes =3D 2, - .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc }, + .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .enable_mask =3D BIT(0), - .num_nodes =3D 8, .nodes =3D { &qnm_camnoc_hf, &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_vapss_hcp, &qnm_video_cv_cpu, &qnm_video_cvp, - &qnm_video_v_cpu, &qns_mem_noc_sf }, + &qnm_video_v_cpu, &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .enable_mask =3D BIT(0), - .num_nodes =3D 15, .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, &alm_ubwc_p_tcu, &chm_apps, &qnm_gpu, &qnm_mdsp, @@ -1617,32 +1604,28 @@ static struct qcom_icc_bcm bcm_sh1 =3D { &qnm_nsp_gemnoc, &qnm_pcie, &qnm_snoc_sf, &qnm_ubwc_p, &xm_gic, &qns_gem_noc_cnoc, - &qns_pcie }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_node * const aggre1_noc_nodes[] =3D { diff --git a/drivers/interconnect/qcom/sm8750.c b/drivers/interconnect/qcom= /sm8750.c index 69bc22222075280365eb419f1ad140d1aa4e752d..eba39bf966c27254ca5df43c9ac= d7435a69726a2 100644 --- a/drivers/interconnect/qcom/sm8750.c +++ b/drivers/interconnect/qcom/sm8750.c @@ -1194,21 +1194,18 @@ static struct qcom_icc_node qns_gemnoc_sf =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(0), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .enable_mask =3D BIT(0), .keepalive =3D true, - .num_nodes =3D 44, .nodes =3D { &qsm_cfg, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_camera_cfg, &qhs_clk_ctl, &qhs_crypto0_cfg, @@ -1230,127 +1227,111 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &qns_apss, &qss_cfg, &qss_ddrss_cfg, &qxs_boot_imem, &qxs_imem, &qxs_modem_boot_imem, - &srvc_cnoc_main, &xs_pcie }, + &srvc_cnoc_main, &xs_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 5, .nodes =3D { &qhs_display_cfg, &qhs_i2c, &qhs_qup02, &qhs_qup1, - &qhs_qup2 }, + &qhs_qup2, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", .enable_mask =3D BIT(0), - .num_nodes =3D 2, - .nodes =3D { &qnm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qnm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_lp0 =3D { .name =3D "LP0", - .num_nodes =3D 2, - .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc }, + .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", .enable_mask =3D BIT(0), - .num_nodes =3D 9, .nodes =3D { &qnm_camnoc_hf, &qnm_camnoc_nrt_icp_sf, &qnm_camnoc_rt_cdm_sf, &qnm_camnoc_sf, &qnm_vapss_hcp, &qnm_video_cv_cpu, &qnm_video_mvp, &qnm_video_v_cpu, - &qns_mem_noc_sf }, + &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", .enable_mask =3D BIT(0), - .num_nodes =3D 14, .nodes =3D { &alm_gpu_tcu, &alm_sys_tcu, &chm_apps, &qnm_gpu, &qnm_mdsp, &qnm_mnoc_hf, &qnm_mnoc_sf, &qnm_nsp_gemnoc, &qnm_pcie, &qnm_snoc_sf, &xm_gic, &chs_ubwc_p, - &qns_gem_noc_cnoc, &qns_pcie }, + &qns_gem_noc_cnoc, &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_ubw0 =3D { .name =3D "UBW0", - .num_nodes =3D 1, - .nodes =3D { &qnm_ubwc_p }, + .nodes =3D { &qnm_ubwc_p, NULL }, }; =20 static struct qcom_icc_node * const aggre1_noc_nodes[] =3D { diff --git a/drivers/interconnect/qcom/x1e80100.c b/drivers/interconnect/qc= om/x1e80100.c index 2c46fdb4a0543f8345e03dbfe83d3a7ab95bd17c..f83a881b2becba9f7806bcc8f94= 5e970596554b2 100644 --- a/drivers/interconnect/qcom/x1e80100.c +++ b/drivers/interconnect/qcom/x1e80100.c @@ -1356,20 +1356,17 @@ static struct qcom_icc_node qns_aggre_usb_south_sno= c =3D { static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", .enable_mask =3D BIT(3), - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_ce0 =3D { .name =3D "CE0", - .num_nodes =3D 1, - .nodes =3D { &qxm_crypto }, + .nodes =3D { &qxm_crypto, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn0 =3D { .name =3D "CN0", .keepalive =3D true, - .num_nodes =3D 63, .nodes =3D { &qsm_cfg, &qhs_ahb2phy0, &qhs_ahb2phy1, &qhs_ahb2phy2, &qhs_av1_enc_cfg, &qhs_camera_cfg, @@ -1401,122 +1398,106 @@ static struct qcom_icc_bcm bcm_cn0 =3D { &xs_pcie_1, &xs_pcie_2, &xs_pcie_3, &xs_pcie_4, &xs_pcie_5, &xs_pcie_6a, - &xs_pcie_6b }, + &xs_pcie_6b, NULL }, }; =20 static struct qcom_icc_bcm bcm_cn1 =3D { .name =3D "CN1", - .num_nodes =3D 1, - .nodes =3D { &qhs_display_cfg }, + .nodes =3D { &qhs_display_cfg, NULL }, }; =20 static struct qcom_icc_bcm bcm_co0 =3D { .name =3D "CO0", - .num_nodes =3D 2, - .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc }, + .nodes =3D { &qxm_nsp, &qns_nsp_gemnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_lp0 =3D { .name =3D "LP0", - .num_nodes =3D 2, - .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc }, + .nodes =3D { &qnm_lpass_lpinoc, &qns_lpass_aggnoc, NULL }, }; =20 static struct qcom_icc_bcm bcm_mc0 =3D { .name =3D "MC0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &ebi }, + .nodes =3D { &ebi, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm0 =3D { .name =3D "MM0", - .num_nodes =3D 1, - .nodes =3D { &qns_mem_noc_hf }, + .nodes =3D { &qns_mem_noc_hf, NULL }, }; =20 static struct qcom_icc_bcm bcm_mm1 =3D { .name =3D "MM1", - .num_nodes =3D 10, .nodes =3D { &qnm_av1_enc, &qnm_camnoc_hf, &qnm_camnoc_icp, &qnm_camnoc_sf, &qnm_eva, &qnm_mdp, &qnm_video, &qnm_video_cv_cpu, - &qnm_video_v_cpu, &qns_mem_noc_sf }, + &qnm_video_v_cpu, &qns_mem_noc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_pc0 =3D { .name =3D "PC0", - .num_nodes =3D 1, - .nodes =3D { &qns_pcie_mem_noc }, + .nodes =3D { &qns_pcie_mem_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup0 =3D { .name =3D "QUP0", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup0_core_slave }, + .nodes =3D { &qup0_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup1 =3D { .name =3D "QUP1", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup1_core_slave }, + .nodes =3D { &qup1_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_qup2 =3D { .name =3D "QUP2", .keepalive =3D true, .vote_scale =3D 1, - .num_nodes =3D 1, - .nodes =3D { &qup2_core_slave }, + .nodes =3D { &qup2_core_slave, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh0 =3D { .name =3D "SH0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_llcc }, + .nodes =3D { &qns_llcc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sh1 =3D { .name =3D "SH1", - .num_nodes =3D 13, .nodes =3D { &alm_gpu_tcu, &alm_pcie_tcu, &alm_sys_tcu, &chm_apps, &qnm_gpu, &qnm_lpass, &qnm_mnoc_hf, &qnm_mnoc_sf, &qnm_nsp_noc, &qnm_pcie, &xm_gic, &qns_gem_noc_cnoc, - &qns_pcie }, + &qns_pcie, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn0 =3D { .name =3D "SN0", .keepalive =3D true, - .num_nodes =3D 1, - .nodes =3D { &qns_gemnoc_sf }, + .nodes =3D { &qns_gemnoc_sf, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn2 =3D { .name =3D "SN2", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre1_noc }, + .nodes =3D { &qnm_aggre1_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn3 =3D { .name =3D "SN3", - .num_nodes =3D 1, - .nodes =3D { &qnm_aggre2_noc }, + .nodes =3D { &qnm_aggre2_noc, NULL }, }; =20 static struct qcom_icc_bcm bcm_sn4 =3D { .name =3D "SN4", - .num_nodes =3D 1, - .nodes =3D { &qnm_usb_anoc }, + .nodes =3D { &qnm_usb_anoc, NULL }, }; =20 static struct qcom_icc_bcm * const aggre1_noc_bcms[] =3D { --=20 2.39.5