From patchwork Thu Sep 3 13:31:28 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 249014 Delivered-To: patch@linaro.org Received: by 2002:a92:5b9c:0:0:0:0:0 with SMTP id c28csp489592ilg; Thu, 3 Sep 2020 06:59:06 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyaKUaoJ8LcmqAlAI7mAB038+ak4YgTO8uk7twSN890qvl9YD1PQ9Ec6UwT9TAlaGBSva/o X-Received: by 2002:a17:906:5e59:: with SMTP id b25mr2407155eju.414.1599141546227; Thu, 03 Sep 2020 06:59:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599141546; cv=none; d=google.com; s=arc-20160816; b=FLqhGEPCGDac+rgBtM1ZAFQ5u/GTgvFWSNY9pcfAQhaSWNb4vE3d/fIVKh+Y/PHYqZ odJ2vvJqJL/04hRXrFDjcfUkOnfCyti5KVzcjRDa3DMT9bN4w6eeExbaUX/exWYYrx02 +FmRutn6uTUJR34JWlBcLtvRvlUTbSZKq/F2NbrHlQ5BNmt8b8skVJFeQzlWGzrHSz/7 3MjI+CmKTIOY8r+P+wAhkrWNgt9/Gz1vtYfUFRlDO3SE7dfe9B6gB5mSVF8YdlWpZrTh +eZ5qT9n0D4cPTy2IsMr/EvnO/RI0vQn3S95y/1VaBvlQ1ziahZB7+JIH6uc10VKfcr2 Iczg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=89sbNvX6ByvD6Ay+Fn+uPrui3FWgVd/+bGNAilB1it4=; b=vvjnTVV/EAHHATNPmGQoJeUI+soKfgSD0SoRWn+q8E9bRd6Wmmpk3mJgMIerZ/8hIj Lro6Ccd9Pmb3HfwFVOgmFsALWDDASSLPwFplQVT2a0AjFRxQ3b96pGOKe7Owit0iOxsg 63//GTrlK4UTUfyfbTvAYBuMGGIdVivinqpd6xg3CT/l/SLraLGrkaEoYVYxyNXTLgO7 fjmoapDAZnMgLGz0HBPfVVIh8+ZByv6gxSpaSmIbFIQoqJpqLoNJC3z2Z97N1zhfW3IV SrRplHKxWn8VTGDrrOppKql9JhE5G7xMtdCVe77AFiVuItu55fiK+bEaiD7T5j3rYeWa 4WSw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lJyZRId8; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b2si1881646ejk.222.2020.09.03.06.59.05; Thu, 03 Sep 2020 06:59:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=lJyZRId8; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729033AbgICN66 (ORCPT + 10 others); Thu, 3 Sep 2020 09:58:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59194 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728998AbgICN5y (ORCPT ); Thu, 3 Sep 2020 09:57:54 -0400 Received: from mail-wm1-x341.google.com (mail-wm1-x341.google.com [IPv6:2a00:1450:4864:20::341]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 02514C0619E7 for ; Thu, 3 Sep 2020 06:31:39 -0700 (PDT) Received: by mail-wm1-x341.google.com with SMTP id w2so2924251wmi.1 for ; Thu, 03 Sep 2020 06:31:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=89sbNvX6ByvD6Ay+Fn+uPrui3FWgVd/+bGNAilB1it4=; b=lJyZRId8ESKK6KkiXPxRWmfFHTNRw2ZnCPgVk03k7H66kDAafI3H5NU6WUPG0qZpst UTtIyUNJI0w15ad0L3gxxAQwtsvw+irnMVJUsJCx5UVAT2u9Cqxs1hBq8J+1YMEOF+XG BjjiwRaBCvk/EDZbpXVUGIC6Ks5ZVlHJWB1qKdxdD8fBUinnymUliE4JbZHmtEmkCPOp a2k5qp/xwDEhxnKHT8h4H44LsHTHBmXp6AxAbvixk4kGFV+3edJDJcx0Jp+RULLMb4mc MTTxgYXY4ae6HbLWSfhiuOk43aXJxQkyanTUTR3p/2UJsYX55R0Il5uSr6qkQNSDU8C6 0efQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=89sbNvX6ByvD6Ay+Fn+uPrui3FWgVd/+bGNAilB1it4=; b=uQmMpte8UCXQgaV97PJ4tDqAETtMadrGQPD3fkTQdLi5gT4gxSS0LgD6uinvGHc4nM l760pjjdLoIUXcYOAM3Q4L5Qo0ZkNpYdpo5osZRt7XSmbZ/nB2Le615ELC8k7K90TFpB Dkz7G0o1rvEuA9AMBfMc2XMU8jvQsDQVBUHhBebTrdSgLE0zkLojL3VVqJ04VS4ImfSN bQOkUFSiZBTVqOObV7vzQcmgCDoaTkwwQwNw/8P3TWo4kQDKsVxYlWXmhCM1LjHd+K9N H8RuiscV3mtt7DsjC+gUFH2Kux7X9b7foUJBqsyTLwIX22nUDVGkZMyTa8dHyNNfcqO9 SJpw== X-Gm-Message-State: AOAM532xc97O3UGehhFw+azevWti94fA6RzGogOjrv3nVBQ/xaAGckQP kiB4F3/o+hQctqHck2/ODrwwklQ5IL033w== X-Received: by 2002:a05:600c:2cc1:: with SMTP id l1mr2499601wmc.78.1599139898076; Thu, 03 Sep 2020 06:31:38 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.36 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:37 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 1/7] interconnect: Introduce xlate_extended() callback Date: Thu, 3 Sep 2020 16:31:28 +0300 Message-Id: <20200903133134.17201-2-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Currently there is the xlate() callback, which is used by providers for mapping the nodes from phandle arguments. That's fine for simple mappings, but the phandle arguments could contain an additional data, such as tag information. Let's create another callback xlate_extended() for the cases where providers want also populate the path tag data. Tested-by: Sibi Sankar Reviewed-by: Sibi Sankar Reviewed-by: Matthias Kaehlcke Tested-by: Matthias Kaehlcke Signed-off-by: Georgi Djakov --- drivers/interconnect/core.c | 73 ++++++++++++++++++--------- include/linux/interconnect-provider.h | 17 ++++++- 2 files changed, 65 insertions(+), 25 deletions(-) diff --git a/drivers/interconnect/core.c b/drivers/interconnect/core.c index befd111049c0..6ccf55818e68 100644 --- a/drivers/interconnect/core.c +++ b/drivers/interconnect/core.c @@ -336,12 +336,13 @@ EXPORT_SYMBOL_GPL(of_icc_xlate_onecell); * Looks for interconnect provider under the node specified by @spec and if * found, uses xlate function of the provider to map phandle args to node. * - * Returns a valid pointer to struct icc_node on success or ERR_PTR() + * Returns a valid pointer to struct icc_node_data on success or ERR_PTR() * on failure. */ -struct icc_node *of_icc_get_from_provider(struct of_phandle_args *spec) +struct icc_node_data *of_icc_get_from_provider(struct of_phandle_args *spec) { struct icc_node *node = ERR_PTR(-EPROBE_DEFER); + struct icc_node_data *data = NULL; struct icc_provider *provider; if (!spec) @@ -349,14 +350,33 @@ struct icc_node *of_icc_get_from_provider(struct of_phandle_args *spec) mutex_lock(&icc_lock); list_for_each_entry(provider, &icc_providers, provider_list) { - if (provider->dev->of_node == spec->np) - node = provider->xlate(spec, provider->data); - if (!IS_ERR(node)) - break; + if (provider->dev->of_node == spec->np) { + if (provider->xlate_extended) { + data = provider->xlate_extended(spec, provider->data); + if (!IS_ERR(data)) { + node = data->node; + break; + } + } else { + node = provider->xlate(spec, provider->data); + if (!IS_ERR(node)) + break; + } + } } mutex_unlock(&icc_lock); - return node; + if (IS_ERR(node)) + return ERR_CAST(node); + + if (!data) { + data = kzalloc(sizeof(*data), GFP_KERNEL); + if (!data) + return ERR_PTR(-ENOMEM); + data->node = node; + } + + return data; } EXPORT_SYMBOL_GPL(of_icc_get_from_provider); @@ -403,7 +423,7 @@ EXPORT_SYMBOL_GPL(devm_of_icc_get); struct icc_path *of_icc_get_by_index(struct device *dev, int idx) { struct icc_path *path; - struct icc_node *src_node, *dst_node; + struct icc_node_data *src_data, *dst_data; struct device_node *np; struct of_phandle_args src_args, dst_args; int ret; @@ -441,39 +461,46 @@ struct icc_path *of_icc_get_by_index(struct device *dev, int idx) of_node_put(dst_args.np); - src_node = of_icc_get_from_provider(&src_args); + src_data = of_icc_get_from_provider(&src_args); - if (IS_ERR(src_node)) { - if (PTR_ERR(src_node) != -EPROBE_DEFER) + if (IS_ERR(src_data)) { + if (PTR_ERR(src_data) != -EPROBE_DEFER) dev_err(dev, "error finding src node: %ld\n", - PTR_ERR(src_node)); - return ERR_CAST(src_node); + PTR_ERR(src_data)); + return ERR_CAST(src_data); } - dst_node = of_icc_get_from_provider(&dst_args); + dst_data = of_icc_get_from_provider(&dst_args); - if (IS_ERR(dst_node)) { - if (PTR_ERR(dst_node) != -EPROBE_DEFER) + if (IS_ERR(dst_data)) { + if (PTR_ERR(dst_data) != -EPROBE_DEFER) dev_err(dev, "error finding dst node: %ld\n", - PTR_ERR(dst_node)); - return ERR_CAST(dst_node); + PTR_ERR(dst_data)); + kfree(src_data); + return ERR_CAST(dst_data); } mutex_lock(&icc_lock); - path = path_find(dev, src_node, dst_node); + path = path_find(dev, src_data->node, dst_data->node); mutex_unlock(&icc_lock); if (IS_ERR(path)) { dev_err(dev, "%s: invalid path=%ld\n", __func__, PTR_ERR(path)); - return path; + goto free_icc_data; } + if (src_data->tag && src_data->tag == dst_data->tag) + icc_set_tag(path, src_data->tag); + path->name = kasprintf(GFP_KERNEL, "%s-%s", - src_node->name, dst_node->name); + src_data->node->name, dst_data->node->name); if (!path->name) { kfree(path); - return ERR_PTR(-ENOMEM); + path = ERR_PTR(-ENOMEM); } +free_icc_data: + kfree(src_data); + kfree(dst_data); return path; } EXPORT_SYMBOL_GPL(of_icc_get_by_index); @@ -975,7 +1002,7 @@ int icc_provider_add(struct icc_provider *provider) { if (WARN_ON(!provider->set)) return -EINVAL; - if (WARN_ON(!provider->xlate)) + if (WARN_ON(!provider->xlate && !provider->xlate_extended)) return -EINVAL; mutex_lock(&icc_lock); diff --git a/include/linux/interconnect-provider.h b/include/linux/interconnect-provider.h index 4735518de515..4d535fddd5d3 100644 --- a/include/linux/interconnect-provider.h +++ b/include/linux/interconnect-provider.h @@ -14,6 +14,17 @@ struct icc_node; struct of_phandle_args; +/** + * struct icc_node_data - icc node data + * + * @node: icc node + * @tag: tag + */ +struct icc_node_data { + struct icc_node *node; + u32 tag; +}; + /** * struct icc_onecell_data - driver data for onecell interconnect providers * @@ -39,6 +50,7 @@ struct icc_node *of_icc_xlate_onecell(struct of_phandle_args *spec, * @pre_aggregate: pointer to device specific function that is called * before the aggregation begins (optional) * @xlate: provider-specific callback for mapping nodes from phandle arguments + * @xlate_extended: vendor-specific callback for mapping node data from phandle arguments * @dev: the device this interconnect provider belongs to * @users: count of active users * @inter_set: whether inter-provider pairs will be configured with @set @@ -52,6 +64,7 @@ struct icc_provider { u32 peak_bw, u32 *agg_avg, u32 *agg_peak); void (*pre_aggregate)(struct icc_node *node); struct icc_node* (*xlate)(struct of_phandle_args *spec, void *data); + struct icc_node_data* (*xlate_extended)(struct of_phandle_args *spec, void *data); struct device *dev; int users; bool inter_set; @@ -105,7 +118,7 @@ void icc_node_del(struct icc_node *node); int icc_nodes_remove(struct icc_provider *provider); int icc_provider_add(struct icc_provider *provider); int icc_provider_del(struct icc_provider *provider); -struct icc_node *of_icc_get_from_provider(struct of_phandle_args *spec); +struct icc_node_data *of_icc_get_from_provider(struct of_phandle_args *spec); #else @@ -157,7 +170,7 @@ static inline int icc_provider_del(struct icc_provider *provider) return -ENOTSUPP; } -static inline struct icc_node *of_icc_get_from_provider(struct of_phandle_args *spec) +static inline struct icc_node_data *of_icc_get_from_provider(struct of_phandle_args *spec) { return ERR_PTR(-ENOTSUPP); } From patchwork Thu Sep 3 13:31:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 249025 Delivered-To: patch@linaro.org Received: by 2002:a92:5b9c:0:0:0:0:0 with SMTP id c28csp526880ilg; Thu, 3 Sep 2020 07:42:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzBg7Mia8YH/R0tZcWC4bT12WhLzJCCk4ZSs4KLrrsIF7HFgv4NH/FV0L4HQ4d73qrSyOvi X-Received: by 2002:a17:906:454a:: with SMTP id s10mr2485157ejq.138.1599144124795; Thu, 03 Sep 2020 07:42:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599144124; cv=none; d=google.com; s=arc-20160816; b=zhKlHpPFGA47EThQuJD2oGDlczGrvQB0mk8NeOjY5lfwrpqJA8niV6vEqa6zJ8Uaz0 nDWRNse3hpSX2JYYXrybSyE3gOKrwKSHLv+vTQ2aD6Ie6DN0k+TSRGqwF1Xh6w0AhGwI QtlymcWz2ZqH6m1WjRCz8k/cSoBHvsGHD98za2d1k21ogaIpxBha+oEt1eP3GyzHD9ox bGOa3xq/RN6JwpcfNCMv0OlltdOeEVGM67MGmDoYS6M5eeO9y4MzbpDroTMZkHkKeGqV HcSzWpIXz/+czDhleaouP5062RiFFoSsysvM2a80MLF2ryvgjpgZvKXRaSlyqGkk9iSS P9mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=4v7riCkWqOW12WqwNbdYgi3MhtDbA8fxMcLkKxaVn1Q=; b=lSlaG4GsCAhjWBmuC7NdQUlFMp7WhPI43ZsRkEhRuxhxMh1tpACaGjBwOWh9VtWwXI 5s3ys6ndSFaXe2Jw4yBu/3xwsSrfVs+d+noMT3PEMkFspsYXnjcCoovIRfwEeVeSxuQA 3JdDAiDzZT6/lEcTVEangY/dWHFYdVkgSkNHJV6VCLggHPB5gZ8ikPCS+T7AEeS/KSgD fC/RQxXjOD26DuykRkntdhCe/m6bBYrBatcHZQObQsq6J2RQ0DThZd3mNOOhq/v5oXGi lClxclJ3kKmXMgAvtrpdLDH96GvOvKQAMplvcPp4pVLdZdlEjS98fCjRcGpHWBVcr0MV bUXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FxSMag+Q; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t2si1865331edf.426.2020.09.03.07.42.04; Thu, 03 Sep 2020 07:42:04 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=FxSMag+Q; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728918AbgICOmD (ORCPT + 10 others); Thu, 3 Sep 2020 10:42:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37534 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729395AbgICOif (ORCPT ); Thu, 3 Sep 2020 10:38:35 -0400 Received: from mail-wr1-x441.google.com (mail-wr1-x441.google.com [IPv6:2a00:1450:4864:20::441]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 523C3C0619EA for ; Thu, 3 Sep 2020 06:31:41 -0700 (PDT) Received: by mail-wr1-x441.google.com with SMTP id z4so3260232wrr.4 for ; Thu, 03 Sep 2020 06:31:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=4v7riCkWqOW12WqwNbdYgi3MhtDbA8fxMcLkKxaVn1Q=; b=FxSMag+QeOzVZzZ+W/d4wUZ228qXnTc22tAxz97IrORD8jZ1HYcP+sq2f2Lx6LfZL3 hCQmI3l6sISeNn78F6Z3VYf7cXFECd9N8RKUZSKARukgkj2KPTDjIQ10GSUQZ2e4kU1i 5lq3epDjkN01sN0gOs9C3LbtQ6sDJ/49NDuxEpQXTerjREMHIdAX7obuKgHhjQb7KXWQ Z2+WlBaT30YpbYgKs+NkWSUG4DKGwNe0EF60dRWyW7HFlwDhxELhqAmCvLa6/kBrW/87 TrIVqzw/5wBYmDyhC465Zn9R9K5WBAHLQZxAy/QZRgflKb/yJcaMeT2obJzIRa5fJ54F x3YQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=4v7riCkWqOW12WqwNbdYgi3MhtDbA8fxMcLkKxaVn1Q=; b=Yb2dyE3qcMfIyP0AO6lZi+2XVAJhjPqJsrN3zZJTrOzRke36U4yFuG8xN2yhhmM4QI ctKIjCLqC0Ysds4/H54avodGObVAlx3Bf3E88OVwWuY3TxzcCHsNqPu6lieV9UwenJJq B6ikikbLYvt9QK+atvVaGBT4Mc69aZgSRb0sE/rwOke/ei8iLem5taqd9brKq/EzkRqF 9O8XqLhqIC6tIAFmFvE20afpfssYPFQNuXB+AJiyFlgHex0vKpr04tKZlD6+3+T8IIfv hwPoOLvLcyusUfBLtoARXqdeDhPUKOREtzQDPgv+iifs+T/kStn1YJlYTyARiCLhg5PQ p0QQ== X-Gm-Message-State: AOAM532GoB+h6OPeQZHwjFyWQAR1uMS4fI5Zebie3pEm+ApygrSmzIph lr1jP7+VWogsB46+XsxNgwfxwacnRMxTCw== X-Received: by 2002:a5d:514e:: with SMTP id u14mr2485171wrt.211.1599139899481; Thu, 03 Sep 2020 06:31:39 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.38 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:38 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org, Rob Herring Subject: [PATCH v3 2/7] dt-bindings: interconnect: Document the support of optional path tag Date: Thu, 3 Sep 2020 16:31:29 +0300 Message-Id: <20200903133134.17201-3-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Let's document that we now support specifying path tag information in the arg cells of the 'interconnects' DT property. This information would be populated when the xlate_extended() callback is used. Specifying the tag in DT will allow the interconnect framework to do the aggregation based on the tag automatically. The users can still use the icc_set_tag() API if/when needed. Reviewed-by: Rob Herring Signed-off-by: Georgi Djakov --- .../bindings/interconnect/interconnect.txt | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/interconnect/interconnect.txt b/Documentation/devicetree/bindings/interconnect/interconnect.txt index 6f5d23a605b7..138c544c8c8c 100644 --- a/Documentation/devicetree/bindings/interconnect/interconnect.txt +++ b/Documentation/devicetree/bindings/interconnect/interconnect.txt @@ -19,7 +19,8 @@ directly. Required properties: - compatible : contains the interconnect provider compatible string - #interconnect-cells : number of cells in a interconnect specifier needed to - encode the interconnect node id + encode the interconnect node id and optionally add a + path tag Example: @@ -44,6 +45,10 @@ components it has to interact with. Required properties: interconnects : Pairs of phandles and interconnect provider specifier to denote the edge source and destination ports of the interconnect path. + An optional path tag value could specified as additional argument + to both endpoints and in such cases, this information will be passed + to the interconnect framework to do aggregation based on the attached + tag. Optional properties: interconnect-names : List of interconnect path name strings sorted in the same @@ -62,3 +67,20 @@ Example: interconnects = <&pnoc MASTER_SDCC_1 &bimc SLAVE_EBI_CH0>; interconnect-names = "sdhc-mem"; }; + +Example with path tags: + + gnoc: interconnect@17900000 { + ... + interconnect-cells = <2>; + }; + + mnoc: interconnect@1380000 { + ... + interconnect-cells = <2>; + }; + + cpu@0 { + ... + interconnects = <&gnoc MASTER_APPSS_PROC 3 &mnoc SLAVE_EBI1 3>; + } From patchwork Thu Sep 3 13:31:30 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 249023 Delivered-To: patch@linaro.org Received: by 2002:a92:5b9c:0:0:0:0:0 with SMTP id c28csp526599ilg; Thu, 3 Sep 2020 07:41:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzT9UGHH3YyktN94iKiUw7Ps12qAXJ4tj4QbDonpDVj1YN3OMaCZDAYCYHGZbrT1e18/nKk X-Received: by 2002:a17:906:71c9:: with SMTP id i9mr2439397ejk.250.1599144104778; Thu, 03 Sep 2020 07:41:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599144104; cv=none; d=google.com; s=arc-20160816; b=TFdHDm3tA9GLEuMx3fjSCPbUaGsQ8NUSZ9epqCyOzjoV+0zJLyVRG+eB5uhkfTW0ad vj1mPb6dpa5wUUIfXcT98LwhDHtvMYKFr3n0g7Ql8wYl9XFqezH6DSB86LcT5ErhvfNs 6tltr0ru58YtX/yHS3AezIp/cgmWWxtXFXZvCnWkiB+WX/55Y9kjWERHxoy8ShWe7baK Gn3wNsODHIcIBf4t0Jxry2QT2MrCpI0DD9NhzdDoKSlJKjaMCSyOxt1PG6HRYtywNM1M x3vzDCwmKCMxs2J1Wm24qwYncs+4LhIC71j69ap1E5J7I3yHIZROXBNKSuzniFHm8zaI I0vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=p6XrrMy9U9a6D72/M7vouTgDf12ccI5j+g02H66Xr7c=; b=Rabqrs5eBPTAvxthkFUfCPmQjDtOtHxyC02YNHip7VVKtXBtXPNeD6SBqUa/nnTAc4 Z6QH0uMuON/RvFbZTUAfqGKs9lw9l8J9cG2gQIC+Qs3wxLcUA7I84AMuPQQfGjIQbMZ9 QP1eMW7eBxkGhASEL5Xz9Bxaafzrx9My04EwbSBgAZzgynidRPlOKwK48TWOiQqMoYcH pjxwzNbtYMHwB4ogCgYnaAczWmZplDrGvDuyd9uUhFkTGT+edZ8BCiobwkPcley29hNA jykBAQFawMDwQmCJN9Xzp/oqRZ0d8CMrHGsRnZ23FcM6zdzV2b0oTHGd4hkGbWx9ZgRY yhuw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=L2JFU0Un; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u16si1844038edo.487.2020.09.03.07.41.44; Thu, 03 Sep 2020 07:41:44 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=L2JFU0Un; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729432AbgICOle (ORCPT + 10 others); Thu, 3 Sep 2020 10:41:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37586 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729397AbgICOix (ORCPT ); Thu, 3 Sep 2020 10:38:53 -0400 Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 52CBEC0619ED for ; Thu, 3 Sep 2020 06:31:42 -0700 (PDT) Received: by mail-wr1-x444.google.com with SMTP id w5so3243435wrp.8 for ; Thu, 03 Sep 2020 06:31:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=p6XrrMy9U9a6D72/M7vouTgDf12ccI5j+g02H66Xr7c=; b=L2JFU0UnIqcJXPhPG2tVj2XRHoqRM6PPI5htL1hCEyDVp4E0ETfFHDLkACalSGr/NL 1mCI0n24LD+c5P+pvefpfp+1P64ZVlcoM1fLYHA0aj8SIe8lK6Gf0kMOng5ACRm29Pev Brm3/jFTBNR8jRWdOEKq/gutqsBKLsGgfg5JSOx3H3DCAEteJPvlgPUGtcXxnZMlI6wx mX8ZQ2TkLPLDLMNb3AuNWuPrZ6eNN1TWphSfPTazFkMEsLYtGL9Uz39FMmtDbgpBDBX/ X+GDQkpSDK+NqJpBfPREEhLu7NiM/5zYIdNZCYDlFKNQ8yosDa3G2RX8z3T90pGBzAXj daGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=p6XrrMy9U9a6D72/M7vouTgDf12ccI5j+g02H66Xr7c=; b=FBzubZJHhzKO7nE7GIQgOMv8hcr3mE/0HXXd+JXjYnmpkftiR6CU4ZFKHZqMBnIZr7 gpbSk7+9w1UFOllAsIsV0R60qMRhJAqBJnzBXzvx6ZhvQ4vH3R5nZiqc9G/SejQMnIC+ ORWD7R1fsqlum50TdXmjR3yzU9KIG1jxKcfdqy9UFbBGeq0RoPzQc17uhH0Y5h4PoW+K mnmakrE5cqXK95GRSBPahAte9QrR+4QKZBkxm82RKle+V1J7VMmp4XbKJVNSTyrA29XQ sTkSyvE5gF7d/DMFfgBICNPdy2de7rexfMUiNYaau3Y50pM7kNjiwg5RTa8dBEUOG5pe /XQw== X-Gm-Message-State: AOAM530oq0FLzAb+jby7jY3gYU6cNeR1uouplEuN/5pMwL5gKZYVZQ3t Wz4i0aqf/SpLmpwbTs6CEqIhPjX66ue/KA== X-Received: by 2002:adf:dcc3:: with SMTP id x3mr2500760wrm.120.1599139900643; Thu, 03 Sep 2020 06:31:40 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.39 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:40 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 3/7] interconnect: qcom: Implement xlate_extended() to parse tags Date: Thu, 3 Sep 2020 16:31:30 +0300 Message-Id: <20200903133134.17201-4-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Implement a function to parse the arguments of the "interconnects" DT property and populate the interconnect path tags if this information is available. Tested-by: Sibi Sankar Reviewed-by: Sibi Sankar Signed-off-by: Georgi Djakov --- drivers/interconnect/qcom/icc-rpmh.c | 27 +++++++++++++++++++++++++++ drivers/interconnect/qcom/icc-rpmh.h | 1 + 2 files changed, 28 insertions(+) diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c index 3ac5182c9ab2..7e538155e486 100644 --- a/drivers/interconnect/qcom/icc-rpmh.c +++ b/drivers/interconnect/qcom/icc-rpmh.c @@ -6,6 +6,8 @@ #include #include #include +#include +#include #include "bcm-voter.h" #include "icc-rpmh.h" @@ -92,6 +94,31 @@ int qcom_icc_set(struct icc_node *src, struct icc_node *dst) } EXPORT_SYMBOL_GPL(qcom_icc_set); +struct icc_node_data *qcom_icc_xlate_extended(struct of_phandle_args *spec, void *data) +{ + struct icc_node_data *ndata; + struct icc_node *node; + + node = of_icc_xlate_onecell(spec, data); + if (IS_ERR(node)) + return ERR_CAST(node); + + ndata = kzalloc(sizeof(*ndata), GFP_KERNEL); + if (!ndata) + return ERR_PTR(-ENOMEM); + + ndata->node = node; + + if (spec->args_count == 2) + ndata->tag = spec->args[1]; + + if (spec->args_count > 2) + pr_warn("%pOF: Too many arguments, path tag is not parsed\n", spec->np); + + return ndata; +} +EXPORT_SYMBOL_GPL(qcom_icc_xlate_extended); + /** * qcom_icc_bcm_init - populates bcm aux data and connect qnodes * @bcm: bcm to be initialized diff --git a/drivers/interconnect/qcom/icc-rpmh.h b/drivers/interconnect/qcom/icc-rpmh.h index 903d25e61984..1dac39bc255d 100644 --- a/drivers/interconnect/qcom/icc-rpmh.h +++ b/drivers/interconnect/qcom/icc-rpmh.h @@ -143,6 +143,7 @@ struct qcom_icc_desc { int qcom_icc_aggregate(struct icc_node *node, u32 tag, u32 avg_bw, u32 peak_bw, u32 *agg_avg, u32 *agg_peak); int qcom_icc_set(struct icc_node *src, struct icc_node *dst); +struct icc_node_data *qcom_icc_xlate_extended(struct of_phandle_args *spec, void *data); int qcom_icc_bcm_init(struct qcom_icc_bcm *bcm, struct device *dev); void qcom_icc_pre_aggregate(struct icc_node *node); From patchwork Thu Sep 3 13:31:31 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 249022 Delivered-To: patch@linaro.org Received: by 2002:a92:5b9c:0:0:0:0:0 with SMTP id c28csp526595ilg; Thu, 3 Sep 2020 07:41:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwtB/fFN3RaZzxGT7uw+jt3rr9Dom8NjPb5J4bJuA2bsYZEcxgGxQjupzlaBr0vtskb1kLb X-Received: by 2002:a17:906:7f15:: with SMTP id d21mr2570063ejr.470.1599144103941; Thu, 03 Sep 2020 07:41:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599144103; cv=none; d=google.com; s=arc-20160816; b=a2LH2tN2SZCnVJBuKocJ87WGNvUtBflfAiZK6xxGJtb9i4qgFiw6sJYOsCMDuD/lYv fVOaGCpAFp64GQw85fVIQ0F2NhNPl5wwU4/R3rm8GQ1f8452q5sYvmT3dSU31ozd0a2y xgHe75BrKzd0DA/kqZ3gm6sXOZVQTsm9714/zHV1sx8ct+r4QKZElyP55CoL+a96VABK we1VS0BkDgwxQptlydrpK+SQ1kcVUVHAWnN1CoAAwB4lIKSNffqeYXAV8ZiYLaDujYwt LtvSxSRd9GnU9lF5RbF/RNcwkTOeFS9yst5MZVPBLJ5y4vYPlN9IdkP+N4QQ4Dz7zfrc Wmtw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=K0z+nN4Q2Lop7WGeqT2R4X33dK+rJ9oWoUAFXO5nbng=; b=IYEEwxKMmT7HD9cmMboNKlBUnNLEFeVsLrORRnY4+tM6Z9bX2l4fdgB1hUnQxv41zE cmQvuDeyw0sJkoLkT0zCcw53+ySwRtdpUs3HerZoEvMcEJKojjQxCBhiyaj8sWP/63I8 dNARDsM2kzOj6QvXGPhwQfybHEEHFYlcR4cpY6LoFiUT4BLKk2zlnyb4LJiHq1+LRZew PmCumBV8l9yCkug3scIzuCzTGPheOgWlFoErZSX79wd0MaWY3/WvB+4pW+T7TRgQVWas Ppfk+D8lRnMen3FIIeRzUoPGiLJquSCDCuIVompLzFnTwbvS8YRy2ORqpNZbTyJwwzR8 zyqw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=vOSGEgf6; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u16si1844038edo.487.2020.09.03.07.41.43; Thu, 03 Sep 2020 07:41:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=vOSGEgf6; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729429AbgICOle (ORCPT + 10 others); Thu, 3 Sep 2020 10:41:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37592 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729401AbgICOix (ORCPT ); Thu, 3 Sep 2020 10:38:53 -0400 Received: from mail-wr1-x444.google.com (mail-wr1-x444.google.com [IPv6:2a00:1450:4864:20::444]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BBA18C0619F0 for ; Thu, 3 Sep 2020 06:31:43 -0700 (PDT) Received: by mail-wr1-x444.google.com with SMTP id k15so3221241wrn.10 for ; Thu, 03 Sep 2020 06:31:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=K0z+nN4Q2Lop7WGeqT2R4X33dK+rJ9oWoUAFXO5nbng=; b=vOSGEgf6njBXHejEOPLRHy4TZAUQbPHyzsizQv5UbjVey2hgli2PPE3iNmgeVMMFs0 meXBmX3GehNJYf3Ml6pbsP2w+4GF+P6VawqJTS1rRAj2/4oGepg1b1xG2XaSI+e7RWit 8HUcIb5RhAPVg5TvwMbJZEM/MIjDq/fbCrqfS6Y053rTcS1XYTsuVRGfBIvafn9rNkmi JEwAseO17PL7oWFMSA4A66UwSwyoHr2SapFY34R7ouYM7Gj0Ukfc4mWUoe51kB+Gc+MZ cN+Ql6/5tuaw74VyLSTTKCj6J2l3AVXNMioaOfqFNUGt1QtHYWuOnVdgucewh50lSBBR KCIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=K0z+nN4Q2Lop7WGeqT2R4X33dK+rJ9oWoUAFXO5nbng=; b=gvDJKgCHhRSFj39PnO2JEM+Hl9W2uApD5aC7haHBcDuViMK5KiuNZI8Op64/krF+Gp 1QKvyqViq7Mxg98Aqiw1pdIbf+T8ekd7jw7RPO1whAPOlk037Xt4CksNbK1wa0qd7x+K idU+v9X5kzotPugLhy4nttPSQJyGWCgudYoceewT2Zbf3Fo0dQ5GoaPV1mwL+ZfXoi2w z05/u39ImxIGwR2PQUqfiUNcm4Bsn5RzUi9P1S44pkss1cu0vT/ZniC8Y14gItT0g7ox LaEq8Zsfe06/1QTzqA7SlFfBiYOpBWs47udVl8X33F8kB6UO2bKhfsENm+9+6mlgSTwn VGlg== X-Gm-Message-State: AOAM533sWPzxw86+Tn75xy0Js3+TD/nozGtOhUF7kQKBIh+VXA/n1BLi 0KXLcW4Q7A3E/otFk+I90in99u9RcAcTlg== X-Received: by 2002:adf:fe42:: with SMTP id m2mr2451454wrs.367.1599139902154; Thu, 03 Sep 2020 06:31:42 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.40 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:41 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 4/7] interconnect: qcom: sdm845: Replace xlate with xlate_extended Date: Thu, 3 Sep 2020 16:31:31 +0300 Message-Id: <20200903133134.17201-5-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Use the qcom_icc_xlate_extended() in order to parse tags, that are specified as an additional arguments to the path endpoints in DT. Tested-by: Sibi Sankar Reviewed-by: Sibi Sankar Reviewed-by: Matthias Kaehlcke Signed-off-by: Georgi Djakov --- drivers/interconnect/qcom/sdm845.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/interconnect/qcom/sdm845.c b/drivers/interconnect/qcom/sdm845.c index f6c7b969520d..3b81dbb71b0b 100644 --- a/drivers/interconnect/qcom/sdm845.c +++ b/drivers/interconnect/qcom/sdm845.c @@ -469,7 +469,7 @@ static int qnoc_probe(struct platform_device *pdev) provider->set = qcom_icc_set; provider->pre_aggregate = qcom_icc_pre_aggregate; provider->aggregate = qcom_icc_aggregate; - provider->xlate = of_icc_xlate_onecell; + provider->xlate_extended = qcom_icc_xlate_extended; INIT_LIST_HEAD(&provider->nodes); provider->data = data; From patchwork Thu Sep 3 13:31:33 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 256857 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.1 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1F869C433E2 for ; Thu, 3 Sep 2020 14:42:09 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E1D75206EB for ; Thu, 3 Sep 2020 14:42:08 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="oNKNZMQ+" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729396AbgICOmF (ORCPT ); Thu, 3 Sep 2020 10:42:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37528 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728596AbgICOif (ORCPT ); Thu, 3 Sep 2020 10:38:35 -0400 Received: from mail-wm1-x341.google.com (mail-wm1-x341.google.com [IPv6:2a00:1450:4864:20::341]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6226BC061A0B for ; Thu, 3 Sep 2020 06:31:46 -0700 (PDT) Received: by mail-wm1-x341.google.com with SMTP id u18so2906314wmc.3 for ; Thu, 03 Sep 2020 06:31:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=dKzq9Wd5pDbV7/549EiQnkURmwLmMM//csWdIgiebW8=; b=oNKNZMQ+vrelVEaKz3G2tJGNGftiIxHVRLIev4M2tPePieqANfyRxtVoH6DG1ffGPH QgoHxmL89GvxQF/eyfr61LHpT0ixxjGe1jgqNqmbhgw2lVP5A8DHa8houG2AicqIWgq6 Ux6nx0xaWhS2ZZYDwtVlDZebBBThqipXRhbIj4LV0jK3AZf3sW5hlEndjrU+/rutAYcq PkmgCeVLpiKUd//KkVCZk6VJIxWO/mpKUDpMjiH9UqrqurNMw5g/3uUIy+ofrgXqpa7w RdMCCtyl5iIQi18Jvq3L6D5BkirG/fLLC0g7ZKfGfHe5kTA87i2+TINQbqwuO1forBad L2WA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=dKzq9Wd5pDbV7/549EiQnkURmwLmMM//csWdIgiebW8=; b=gCiEjZ2ugmICD18hDnXpexCfDfQrRK4InRyU1dQfPjffsChil7tDfaotJ+9aTLl6vz OUKmE6eN6Xa+yZWQ0yqKVhWNRnmTksbHFNwYwMqGbE6gN6cMjUzyVV0TknzYgRQbuIM1 WpnNhLM+TLPmOKmGL/ARS49BuPiOMzqu6+uPQF6K634bgv+4+x6QZhFOzW0RnoDjEAYM WteUafxDOj+DtdufvFXfDg2tZapiE7RfT+DROweGGQnyqLnLT3rfhbo2ig/8AOYqarIg qbBi69xJFO1ybqDWhK6k5N+BC3bwl9xbd90VkAa2l5Vf23ulY9GFSsnA1WSDxODbGSxV y0mw== X-Gm-Message-State: AOAM532czyjQJWwV27dJNvjbq1lkWINkjsXnKvLMpKJhCTWcma4Buw5J cN2EAgMV9+OnAlu/f2qbwp87V93gc9RNUQ== X-Google-Smtp-Source: ABdhPJwideaMwQI0vVOO9NOjJGo+l6Etw+5ZlFofKjM7BTEhZ9Aoj2Q50gaHXWsGR97506yHtsDNMQ== X-Received: by 2002:a1c:e0d4:: with SMTP id x203mr2725879wmg.91.1599139904767; Thu, 03 Sep 2020 06:31:44 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.43 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:44 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 6/7] interconnect: qcom: sc7180: Replace xlate with xlate_extended Date: Thu, 3 Sep 2020 16:31:33 +0300 Message-Id: <20200903133134.17201-7-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org From: Sibi Sankar Use the qcom_icc_xlate_extended() in order to parse tags, that are specified as an additional arguments to the path endpoints in DT. Signed-off-by: Sibi Sankar Tested-by: Matthias Kaehlcke Reviewed-by: Matthias Kaehlcke Signed-off-by: Georgi Djakov --- drivers/interconnect/qcom/sc7180.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/interconnect/qcom/sc7180.c b/drivers/interconnect/qcom/sc7180.c index dcf493d07928..a6f119f363b1 100644 --- a/drivers/interconnect/qcom/sc7180.c +++ b/drivers/interconnect/qcom/sc7180.c @@ -535,7 +535,7 @@ static int qnoc_probe(struct platform_device *pdev) provider->set = qcom_icc_set; provider->pre_aggregate = qcom_icc_pre_aggregate; provider->aggregate = qcom_icc_aggregate; - provider->xlate = of_icc_xlate_onecell; + provider->xlate_extended = qcom_icc_xlate_extended; INIT_LIST_HEAD(&provider->nodes); provider->data = data; From patchwork Thu Sep 3 13:31:34 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Georgi Djakov X-Patchwork-Id: 249021 Delivered-To: patch@linaro.org Received: by 2002:a92:5b9c:0:0:0:0:0 with SMTP id c28csp525662ilg; Thu, 3 Sep 2020 07:40:30 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwgKGmaCz/mpBCa/CQLjr0ACNwwdOCZGf0ISpNqZgHLXjOpqgYfxX4Ir8zE+V12uNeeLzhV X-Received: by 2002:a17:906:8d8:: with SMTP id o24mr2405614eje.384.1599144030155; Thu, 03 Sep 2020 07:40:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1599144030; cv=none; d=google.com; s=arc-20160816; b=w4vhdiHQqV0TB1I74k1qTrlfFkQsz05bLZFfEzTMowbxKYDF8YRpuQT87HpfBhw2gA wRy0Z0KPJC2TwHmZ1q6ISGDxbz3WVdnvgw5d6LNR9rFbgzm8q0Gcybp4mwX8r/Ferjww shZue9OIB1BVojD1C0pASW97m5aaZGYMyy8tx1iUvDlDs+kPe5WPmFWpagZ/TkW+50E/ svH3yQxiwwQfpTSEfI5JFt7p9EOpbP+co6Dxpq5Dlm2T0wmltvzSqmZ1d7z1R6jeFK2c sNDk8nQLSQPNd0sNGEWy5T5YFGNCds/aRTYAJCqhg6NdhXTq3WxsMzG4sv5VddcfOicn ZREg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=XRvpe7PzFyq1DShY2dULOFSm0oGxR6/UVsj0il+srEc=; b=dxXCQOtrqip26Li7Z1ymQO7vu14wFQMztsJYLxn7jqPaailLL7VXH6E+E33rbetwTH nAKfcJUmeIstfg0F7UOuGWe2yGfXKhZUdA5uneC12UT/yUqedzKLtTXUnfVaVmPjrDQh zk5QXGC7fxzZHc8HvGbKA7wB3Nk6TBK0l2q0K/xZ10h7cwalo9Z9wPDiQh7lUF7XC9I5 qEPbbAjYvW6Cw+GPTMFaSPKoE2YreoZI8VVxwXhiLAGWafaGeEHEe+idU/daIGahPLjj d7Y73PZ5glw1UhkIY6Bnc36ay0MLOaVJmOZpDjA1sBURnWgEEwitBBybJ4AT8bRXnanT sdvA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=IN5GaxFP; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t21si1836411edv.284.2020.09.03.07.40.29; Thu, 03 Sep 2020 07:40:30 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=IN5GaxFP; spf=pass (google.com: domain of linux-pm-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-pm-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729336AbgICOkY (ORCPT + 10 others); Thu, 3 Sep 2020 10:40:24 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37494 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729402AbgICOi4 (ORCPT ); Thu, 3 Sep 2020 10:38:56 -0400 Received: from mail-wm1-x343.google.com (mail-wm1-x343.google.com [IPv6:2a00:1450:4864:20::343]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3AF3C061A0F for ; Thu, 3 Sep 2020 06:31:48 -0700 (PDT) Received: by mail-wm1-x343.google.com with SMTP id a65so2890758wme.5 for ; Thu, 03 Sep 2020 06:31:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=XRvpe7PzFyq1DShY2dULOFSm0oGxR6/UVsj0il+srEc=; b=IN5GaxFPRDx7b36byOHI33GaWymAiillen3XxsLHkFqwa6YRRJ3ND+KktmMOiaWw1X 2dYcPLte5/jlOOchGAn2kV6QCGeooRwzsQ1JSV7mIUCqxMwWNjbtjUI06bt054sQStK4 DG+HooWUdSj33fQOi6OydwqP+kJoQUxy5xdbAScmR3Ud88/U457WZ5syGCHTg6mlODoY 6AWmiwn25hW6Ze7+aNnQbvbBBBbG1D83p0q4E+16UcO4Xw/I941OYYiMQPNHFO3CqHDn T8O6KHHYdni3GXlk2woWP8wWfuEl3qIJPsdYMIGKBct36/rVRIy33bhTNpEeFKhHVU7A mQMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=XRvpe7PzFyq1DShY2dULOFSm0oGxR6/UVsj0il+srEc=; b=hitsW4gE9YO6TA73F0zdDR3ikGDMUpuqZop6iDjUqoIfjVFn0wNzSngpKzQbZipjbD sSGJVKLZxSNHIAUxf0Drv3A5F14vLTSYrRcP0ioAOUUC1wrQ+NzMUmmigjijoZd0EynS /gYZK+KlzhURrObdKcprWZDLkQ0aQ7dilvJxI7zC1F4q4UV+nyREh0izsB1Mu8S8onfW 7YcUk2r1pNRJmxmHdWcH3wgEdx0vN/8BsCXK3eOokD6cn3sWfP6AH9KCQjrZw8mb+iiG hydXymBzTrNqwM5Zkjzuufd+w/17ZZFiuYGoXJCzquAzxzcEzo/+c1O27U6Jp7fDyArb sdUw== X-Gm-Message-State: AOAM530Mk5wQxGSame5P5fKdJnyymlvTAZLX8TSi194pKLutt4etm19z BQblHYq3h7azpvVE7GxeaGt2hR7Qt5l2Qw== X-Received: by 2002:a7b:c397:: with SMTP id s23mr2641816wmj.174.1599139906064; Thu, 03 Sep 2020 06:31:46 -0700 (PDT) Received: from localhost.localdomain ([212.45.67.2]) by smtp.googlemail.com with ESMTPSA id b2sm4310768wmh.47.2020.09.03.06.31.44 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 03 Sep 2020 06:31:45 -0700 (PDT) From: Georgi Djakov To: linux-pm@vger.kernel.org, bjorn.andersson@linaro.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, sibis@codeaurora.org, mka@chromium.org, dianders@chromium.org, georgi.djakov@linaro.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 7/7] arm64: dts: qcom: sc7180: Increase the number of interconnect cells Date: Thu, 3 Sep 2020 16:31:34 +0300 Message-Id: <20200903133134.17201-8-georgi.djakov@linaro.org> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20200903133134.17201-1-georgi.djakov@linaro.org> References: <20200903133134.17201-1-georgi.djakov@linaro.org> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org From: Sibi Sankar Increase the number of interconnect-cells, as now we can include the tag information. The consumers can specify the path tag as an additional argument to the endpoints. Signed-off-by: Sibi Sankar Tested-by: Matthias Kaehlcke Reviewed-by: Matthias Kaehlcke Signed-off-by: Georgi Djakov --- arch/arm64/boot/dts/qcom/sc7180.dtsi | 218 +++++++++++++-------------- 1 file changed, 109 insertions(+), 109 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi index d3e6008cf3fb..d5007e61e6cc 100644 --- a/arch/arm64/boot/dts/qcom/sc7180.dtsi +++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi @@ -132,7 +132,7 @@ &LITTLE_CPU_SLEEP_1 capacity-dmips-mhz = <1024>; dynamic-power-coefficient = <100>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; next-level-cache = <&L2_0>; #cooling-cells = <2>; @@ -158,7 +158,7 @@ &LITTLE_CPU_SLEEP_1 dynamic-power-coefficient = <100>; next-level-cache = <&L2_100>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 0>; @@ -180,7 +180,7 @@ &LITTLE_CPU_SLEEP_1 dynamic-power-coefficient = <100>; next-level-cache = <&L2_200>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 0>; @@ -202,7 +202,7 @@ &LITTLE_CPU_SLEEP_1 dynamic-power-coefficient = <100>; next-level-cache = <&L2_300>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 0>; @@ -224,7 +224,7 @@ &LITTLE_CPU_SLEEP_1 dynamic-power-coefficient = <100>; next-level-cache = <&L2_400>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 0>; @@ -246,7 +246,7 @@ &LITTLE_CPU_SLEEP_1 dynamic-power-coefficient = <100>; next-level-cache = <&L2_500>; operating-points-v2 = <&cpu0_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 0>; @@ -268,7 +268,7 @@ &BIG_CPU_SLEEP_1 dynamic-power-coefficient = <405>; next-level-cache = <&L2_600>; operating-points-v2 = <&cpu6_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 1>; @@ -290,7 +290,7 @@ &BIG_CPU_SLEEP_1 dynamic-power-coefficient = <405>; next-level-cache = <&L2_700>; operating-points-v2 = <&cpu6_opp_table>; - interconnects = <&gem_noc MASTER_APPSS_PROC &mc_virt SLAVE_EBI1>, + interconnects = <&gem_noc MASTER_APPSS_PROC 3 &mc_virt SLAVE_EBI1 3>, <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>; #cooling-cells = <2>; qcom,freq-domain = <&cpufreq_hw 1>; @@ -748,7 +748,7 @@ qupv3_id_0: geniqup@8c0000 { #size-cells = <2>; ranges; iommus = <&apps_smmu 0x43 0x0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>; interconnect-names = "qup-core"; status = "disabled"; @@ -762,9 +762,9 @@ i2c0: i2c@880000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -782,8 +782,8 @@ spi0: spi@880000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -798,8 +798,8 @@ uart0: serial@880000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -814,9 +814,9 @@ i2c1: i2c@884000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -834,8 +834,8 @@ spi1: spi@884000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -850,8 +850,8 @@ uart1: serial@884000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -866,9 +866,9 @@ i2c2: i2c@888000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -884,8 +884,8 @@ uart2: serial@888000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -900,9 +900,9 @@ i2c3: i2c@88c000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -920,8 +920,8 @@ spi3: spi@88c000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -936,8 +936,8 @@ uart3: serial@88c000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -952,9 +952,9 @@ i2c4: i2c@890000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -970,8 +970,8 @@ uart4: serial@890000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -986,9 +986,9 @@ i2c5: i2c@894000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>, - <&aggre1_noc MASTER_QUP_0 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>, + <&aggre1_noc MASTER_QUP_0 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1006,8 +1006,8 @@ spi5: spi@894000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1022,8 +1022,8 @@ uart5: serial@894000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_0 &qup_virt SLAVE_QUP_CORE_0>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_0>; + interconnects = <&qup_virt MASTER_QUP_CORE_0 0 &qup_virt SLAVE_QUP_CORE_0 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_0 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1039,7 +1039,7 @@ qupv3_id_1: geniqup@ac0000 { #size-cells = <2>; ranges; iommus = <&apps_smmu 0x4c3 0x0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>; interconnect-names = "qup-core"; status = "disabled"; @@ -1053,9 +1053,9 @@ i2c6: i2c@a80000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1073,8 +1073,8 @@ spi6: spi@a80000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1089,8 +1089,8 @@ uart6: serial@a80000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1105,9 +1105,9 @@ i2c7: i2c@a84000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1123,8 +1123,8 @@ uart7: serial@a84000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1139,9 +1139,9 @@ i2c8: i2c@a88000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1159,8 +1159,8 @@ spi8: spi@a88000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1175,8 +1175,8 @@ uart8: serial@a88000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1191,9 +1191,9 @@ i2c9: i2c@a8c000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1209,8 +1209,8 @@ uart9: serial@a8c000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1225,9 +1225,9 @@ i2c10: i2c@a90000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1245,8 +1245,8 @@ spi10: spi@a90000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1261,8 +1261,8 @@ uart10: serial@a90000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1277,9 +1277,9 @@ i2c11: i2c@a94000 { interrupts = ; #address-cells = <1>; #size-cells = <0>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>, - <&aggre2_noc MASTER_QUP_1 &mc_virt SLAVE_EBI1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>, + <&aggre2_noc MASTER_QUP_1 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "qup-core", "qup-config", "qup-memory"; status = "disabled"; @@ -1297,8 +1297,8 @@ spi11: spi@a94000 { #size-cells = <0>; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1313,8 +1313,8 @@ uart11: serial@a94000 { interrupts = ; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qup_opp_table>; - interconnects = <&qup_virt MASTER_QUP_CORE_1 &qup_virt SLAVE_QUP_CORE_1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_QUP_1>; + interconnects = <&qup_virt MASTER_QUP_CORE_1 0 &qup_virt SLAVE_QUP_CORE_1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; interconnect-names = "qup-core", "qup-config"; status = "disabled"; }; @@ -1323,63 +1323,63 @@ uart11: serial@a94000 { config_noc: interconnect@1500000 { compatible = "qcom,sc7180-config-noc"; reg = <0 0x01500000 0 0x28000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; system_noc: interconnect@1620000 { compatible = "qcom,sc7180-system-noc"; reg = <0 0x01620000 0 0x17080>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; mc_virt: interconnect@1638000 { compatible = "qcom,sc7180-mc-virt"; reg = <0 0x01638000 0 0x1000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; qup_virt: interconnect@1650000 { compatible = "qcom,sc7180-qup-virt"; reg = <0 0x01650000 0 0x1000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; aggre1_noc: interconnect@16e0000 { compatible = "qcom,sc7180-aggre1-noc"; reg = <0 0x016e0000 0 0x15080>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; aggre2_noc: interconnect@1705000 { compatible = "qcom,sc7180-aggre2-noc"; reg = <0 0x01705000 0 0x9000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; compute_noc: interconnect@170e000 { compatible = "qcom,sc7180-compute-noc"; reg = <0 0x0170e000 0 0x6000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; mmss_noc: interconnect@1740000 { compatible = "qcom,sc7180-mmss-noc"; reg = <0 0x01740000 0 0x1c100>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; ipa_virt: interconnect@1e00000 { compatible = "qcom,sc7180-ipa-virt"; reg = <0 0x01e00000 0 0x1000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; @@ -1406,9 +1406,9 @@ ipa: ipa@1e40000 { clocks = <&rpmhcc RPMH_IPA_CLK>; clock-names = "core"; - interconnects = <&aggre2_noc MASTER_IPA &mc_virt SLAVE_EBI1>, - <&aggre2_noc MASTER_IPA &system_noc SLAVE_IMEM>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_IPA_CFG>; + interconnects = <&aggre2_noc MASTER_IPA 0 &mc_virt SLAVE_EBI1 0>, + <&aggre2_noc MASTER_IPA 0 &system_noc SLAVE_IMEM 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_IPA_CFG 0>; interconnect-names = "memory", "imem", "config"; @@ -1899,7 +1899,7 @@ gpu: gpu@5000000 { operating-points-v2 = <&gpu_opp_table>; qcom,gmu = <&gmu>; - interconnects = <&gem_noc MASTER_GFX3D &mc_virt SLAVE_EBI1>; + interconnects = <&gem_noc MASTER_GFX3D 0 &mc_virt SLAVE_EBI1 0>; interconnect-names = "gfx-mem"; gpu_opp_table: opp-table { @@ -2565,8 +2565,8 @@ qspi: spi@88dc000 { clocks = <&gcc GCC_QSPI_CNOC_PERIPH_AHB_CLK>, <&gcc GCC_QSPI_CORE_CLK>; clock-names = "iface", "core"; - interconnects = <&gem_noc MASTER_APPSS_PROC - &config_noc SLAVE_QSPI_0>; + interconnects = <&gem_noc MASTER_APPSS_PROC 0 + &config_noc SLAVE_QSPI_0 0>; interconnect-names = "qspi-config"; power-domains = <&rpmhpd SC7180_CX>; operating-points-v2 = <&qspi_opp_table>; @@ -2625,7 +2625,7 @@ usb_1_ssphy: phy@88e9200 { dc_noc: interconnect@9160000 { compatible = "qcom,sc7180-dc-noc"; reg = <0 0x09160000 0 0x03200>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; @@ -2639,14 +2639,14 @@ system-cache-controller@9200000 { gem_noc: interconnect@9680000 { compatible = "qcom,sc7180-gem-noc"; reg = <0 0x09680000 0 0x3e200>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; npu_noc: interconnect@9990000 { compatible = "qcom,sc7180-npu-noc"; reg = <0 0x09990000 0 0x1600>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; }; @@ -2682,8 +2682,8 @@ usb_1: usb@a6f8800 { resets = <&gcc GCC_USB30_PRIM_BCR>; - interconnects = <&aggre2_noc MASTER_USB3 &mc_virt SLAVE_EBI1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_USB3>; + interconnects = <&aggre2_noc MASTER_USB3 0 &mc_virt SLAVE_EBI1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_USB3 0>; interconnect-names = "usb-ddr", "apps-usb"; usb_1_dwc3: dwc3@a600000 { @@ -2715,8 +2715,8 @@ venus: video-codec@aa00000 { "vcodec0_core", "vcodec0_bus"; iommus = <&apps_smmu 0x0c00 0x60>; memory-region = <&venus_mem>; - interconnects = <&mmss_noc MASTER_VIDEO_P0 &mc_virt SLAVE_EBI1>, - <&gem_noc MASTER_APPSS_PROC &config_noc SLAVE_VENUS_CFG>; + interconnects = <&mmss_noc MASTER_VIDEO_P0 0 &mc_virt SLAVE_EBI1 0>, + <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_VENUS_CFG 0>; interconnect-names = "video-mem", "cpu-cfg"; video-decoder { @@ -2741,7 +2741,7 @@ videocc: clock-controller@ab00000 { camnoc_virt: interconnect@ac00000 { compatible = "qcom,sc7180-camnoc-virt"; reg = <0 0x0ac00000 0 0x1000>; - #interconnect-cells = <1>; + #interconnect-cells = <2>; qcom,bcm-voters = <&apps_bcm_voter>; };