From nobody Mon Feb 9 17:07:31 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 969A1EB64D7 for ; Fri, 23 Jun 2023 12:51:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231752AbjFWMvU (ORCPT ); Fri, 23 Jun 2023 08:51:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38698 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231349AbjFWMvM (ORCPT ); Fri, 23 Jun 2023 08:51:12 -0400 Received: from mail-wr1-x42c.google.com (mail-wr1-x42c.google.com [IPv6:2a00:1450:4864:20::42c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF70D270D for ; Fri, 23 Jun 2023 05:50:48 -0700 (PDT) Received: by mail-wr1-x42c.google.com with SMTP id ffacd0b85a97d-31126037f41so646951f8f.2 for ; Fri, 23 Jun 2023 05:50:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687524647; x=1690116647; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=fAo0phvh8fXAgVLYJP7h1GHACdN6ADqTUL6afCcu57w=; b=xE4pagFEoVKgK27AQ7A0dppKAEGPY907krpnMtq74wnGMEmU90LZ3wteVNTeiHKBsA wy74lzMRqUXuHl7Z5M7Tot2FQrRqKS1p+T3mrz0p3OPyKMjJ7z6c/IzKA98mTrFeQkKm C+bUWyzIciv2PKpz1oLMnKf7OU4PiNXHxsGUusqwaC46niy7eMVX0TuKuvv3zf4CAASj KRW92dDs373DEMmSK40Q+ZE1enWZPRhuzX5uBloFEmLBJ2bUJlkrZs41Jxpw0FBqtxhk 5+ZfhTRBfLsNQkJdjG4HcLVBX9tGojZNhTMSGiwqSaNKm0C0m9/bEqJbgwFJ0smvlF68 wkVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687524647; x=1690116647; 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=fAo0phvh8fXAgVLYJP7h1GHACdN6ADqTUL6afCcu57w=; b=ZHScjWl92fId/kDSF1CKukfGeSiDtXGGTw//9aZRy/7l6qg7B+U0LINlAKVgHHFnHm yOHNMPGoU6ryN9KKfP5UUal4iqkB1BJgnL4tNkodJ0qVgX5LXL88gSmNtgj171vypLsw EbTuMmFCdIB5krnXERzHe8iv9FUvGz2JnOpQ47nZ+eR5SgMNZDbKCA8gYWRX56ayB2PZ 1NKrpM8Y8Sz6TIrXBLpZB7Qk5HTT//ccCx2vEque/p2KrkyPlZFJHx/vv21cvwZkQQ46 8Hi0fSsIop1iX1dgd88C1PMePTFkF1IHlCg5Z9zVZv+0nlfcEDmvCWbVLSOgJAluHLJX ca6w== X-Gm-Message-State: AC+VfDxH/NrWsAibBwzhf9zPg9d4aK9gIQdJkuNKleDaGJsryeonulOA utRAsobSOyU4z8j9BXLgH3dliQ== X-Google-Smtp-Source: ACHHUZ79qV9duzWdP1qO4ZEXEHVNLq1uN+415rg1emPDjRVpQBpP2AwsfJWvMkvDsYpDEQw41tmhQg== X-Received: by 2002:adf:f04c:0:b0:30f:c2a3:6281 with SMTP id t12-20020adff04c000000b0030fc2a36281mr17367238wro.64.1687524647365; Fri, 23 Jun 2023 05:50:47 -0700 (PDT) Received: from arrakeen.starnux.net ([2a01:e0a:982:cbb0:8261:5fff:fe11:bdda]) by smtp.gmail.com with ESMTPSA id m5-20020adffe45000000b002fae7408544sm9455350wrs.108.2023.06.23.05.50.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Jun 2023 05:50:47 -0700 (PDT) From: neil.armstrong@linaro.org Date: Fri, 23 Jun 2023 14:50:42 +0200 Subject: [PATCH v2 1/4] interconnect: qcom: Add support for mask-based BCMs MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-1-709474b151cc@linaro.org> References: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> In-Reply-To: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Georgi Djakov Cc: linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Neil Armstrong , Mike Tipton X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2293; i=neil.armstrong@linaro.org; h=from:subject:message-id; bh=lhON1BygpqWXo4mzlesLcGDv9DQQuf0/+binWIHr1Jg=; b=owEBbQKS/ZANAwAKAXfc29rIyEnRAcsmYgBklZUkn1/cWVgOHaes39IQW8BdSt/hN+IVbpKdp1+p q7rTDZ2JAjMEAAEKAB0WIQQ9U8YmyFYF/h30LIt33NvayMhJ0QUCZJWVJAAKCRB33NvayMhJ0Tc0EA CVAaTKX9yFxZ8lSgp5rRqW97diQi2XK3nEOr2BTXAmTGDkcxenAuEYkFtiDVA+0rVZZAfmH2+/9cCS 1b9LGLzSmJ05P0uMdt3c3/qW2OmNCYKBKM7SyNU2SAwXibZyf9nZ4FM0GlwueO9a7Qje1xbEjqQyEq F1FMQeLmFRyEfHwMMQZl1kZYoHy6+zKgeqC8tKgIN11rpEbC+4+Jn+w9vPW1GAe5Xh8x/m+SWwe+tR +Y/rgOPj/KgTH/Ao90dMdT2jQCqz1TgHPQ/SNJ0eaFFfQajSMjm17lP6360B1Pc5K4fOQ2zDnLFeob A3MH/G1+kXjRRxfCLSFrhvZyv03NtKbV6/JL579SI24ah0xpTmI+GrwG2J8WN0o0DrUqmaZWDO2NET WWakm91bFla6Jf+QnzjJprlGyv7CQ8+7KiBFqn0EwhL9FA42ilnhDqQoIkSq9aG8/ppuIMtEaTI1b9 uZB/NvO265Tg8RuR/kcAyd7vnldsf/YbsH20UoC5SImsLPusR9SfnCF9tr6lFhwGzRAiaDXAVxvFkU qs/CNrwlmbV0LieNXyzDAMP7kYbsT/brSCb21gWHtNPmeU0qono9wCp4+aTaX6+Im9/zEDIzJh8D2c AEqzKrreD854DvoprkbGl59BUQua9n4q44yXon7UYKjHhSN7ZG2LlDKm8pqQ== X-Developer-Key: i=neil.armstrong@linaro.org; a=openpgp; fpr=89EC3D058446217450F22848169AB7B1A4CFF8AE Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Mike Tipton Some BCMs aren't directly associated with the data path (i.e. ACV) and therefore don't communicate using BW. Instead, they are simply enabled/disabled with a simple bit mask. Add support for these. Origin commit retrieved from: https://git.codelinaro.org/clo/la/kernel/msm-5.15/-/commit/2d1573e020699815= 1b342e6b52a4c0f7234d7e36 Signed-off-by: Mike Tipton [narmstrong: removed copyright change from original commit] Signed-off-by: Neil Armstrong Reported-by would be cool as well :D Reviewed-by: Konrad Dybcio --- drivers/interconnect/qcom/bcm-voter.c | 5 +++++ drivers/interconnect/qcom/icc-rpmh.h | 2 ++ 2 files changed, 7 insertions(+) diff --git a/drivers/interconnect/qcom/bcm-voter.c b/drivers/interconnect/q= com/bcm-voter.c index 8f385f9c2dd3..d5f2a6b5376b 100644 --- a/drivers/interconnect/qcom/bcm-voter.c +++ b/drivers/interconnect/qcom/bcm-voter.c @@ -83,6 +83,11 @@ static void bcm_aggregate(struct qcom_icc_bcm *bcm) =20 temp =3D agg_peak[bucket] * bcm->vote_scale; bcm->vote_y[bucket] =3D bcm_div(temp, bcm->aux_data.unit); + + if (bcm->enable_mask && (bcm->vote_x[bucket] || bcm->vote_y[bucket])) { + bcm->vote_x[bucket] =3D 0; + bcm->vote_y[bucket] =3D bcm->enable_mask; + } } =20 if (bcm->keepalive && bcm->vote_x[QCOM_ICC_BUCKET_AMC] =3D=3D 0 && diff --git a/drivers/interconnect/qcom/icc-rpmh.h b/drivers/interconnect/qc= om/icc-rpmh.h index 04391c1ba465..7843d8864d6b 100644 --- a/drivers/interconnect/qcom/icc-rpmh.h +++ b/drivers/interconnect/qcom/icc-rpmh.h @@ -81,6 +81,7 @@ struct qcom_icc_node { * @vote_x: aggregated threshold values, represents sum_bw when @type is b= w bcm * @vote_y: aggregated threshold values, represents peak_bw when @type is = bw bcm * @vote_scale: scaling factor for vote_x and vote_y + * @enable_mask: optional mask to send as vote instead of vote_x/vote_y * @dirty: flag used to indicate whether the bcm needs to be committed * @keepalive: flag used to indicate whether a keepalive is required * @aux_data: auxiliary data used when calculating threshold values and @@ -97,6 +98,7 @@ struct qcom_icc_bcm { u64 vote_x[QCOM_ICC_NUM_BUCKETS]; u64 vote_y[QCOM_ICC_NUM_BUCKETS]; u64 vote_scale; + u32 enable_mask; bool dirty; bool keepalive; struct bcm_db aux_data; --=20 2.34.1 From nobody Mon Feb 9 17:07:31 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 023FFC001DD for ; Fri, 23 Jun 2023 12:51:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231773AbjFWMvW (ORCPT ); Fri, 23 Jun 2023 08:51:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38734 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231484AbjFWMvO (ORCPT ); Fri, 23 Jun 2023 08:51:14 -0400 Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C06822711 for ; Fri, 23 Jun 2023 05:50:49 -0700 (PDT) Received: by mail-wr1-x42e.google.com with SMTP id ffacd0b85a97d-3113306a595so681530f8f.1 for ; Fri, 23 Jun 2023 05:50:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687524648; x=1690116648; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=0xwdEGR95Jdgntol/p/VjgJdE673liewISx2EIhavUY=; b=yX7q9+o/UBUOzghFs0vcm3A5Z9kB3O0t9Ntur83ksuBlZQkFMyeznTBCe1tRZaLhCx I3tUB6fycvvOybWRedh79t5RIpREsDMpb44v5Zcbq4lCYm+IanFKAP7BvtFCzN8j3gsD YMLki2peNiUN9iyHC/SHx/l69aAF+SwKMe1dVivwA6MDZiEpypQJX7bcBIUOttvrg3AM lS0nYFnejUHLbkB93kruhypH4K+so+kIHVBEdfNEdlMBwiLKd1tqsB3TIo/2FHmL0o2A 2WcckOP7sNC1YnrPUUW5bEjdvnz4OVr2cjeE5O5Iyr3Y5ur8v1EM0XDzWIKsFrxLZEE1 KTYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687524648; x=1690116648; 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=0xwdEGR95Jdgntol/p/VjgJdE673liewISx2EIhavUY=; b=asafxB12ImHQJ1Gx75ZdAoPkB6CsEfD5R/XkpCTUZOby8dAyd+boeQ7y+WA5qXbBdm LpXb9TU9sDexsJ/Yga8/VkzOAJSXyVG3Am2ijTCllsGjMyQjn6RzzRAytglF6rAtItqO dznGIwuw40GWqLO17kDNiuWjdGV7j/WYaIxHUBFhIePK8WT9sOWDc/6XdDXvv+FNxSP7 1GgFI/GmmtB0xBHk+2GWnE4AcoeSuYQzw4nlkbTJxOh3U+3rkFkxfMgbGGon0plPd28Q 5BUhfdej+xce3gic1lDGSM8zyBsju3cXEk7aRgW6/8/h8yBYbP38gRWDEN1/DX9ENL7k MsTg== X-Gm-Message-State: AC+VfDz6YqHZCgqZ2QJ0QqDfKAWKsUPR474T3VfTtSwjtJS5GJMDUvXf ZUL2nOmfnMcGLj7oHn3pJe/DlA== X-Google-Smtp-Source: ACHHUZ5dfj6Qf5CuDNqbS3VfwWfrZV6hcgA44TWBpBYJsvBHo6RBw6mQV12vDvqbK0QRdzW6Lgg+AQ== X-Received: by 2002:a5d:42d1:0:b0:30f:c1c3:8173 with SMTP id t17-20020a5d42d1000000b0030fc1c38173mr19597811wrr.26.1687524648225; Fri, 23 Jun 2023 05:50:48 -0700 (PDT) Received: from arrakeen.starnux.net ([2a01:e0a:982:cbb0:8261:5fff:fe11:bdda]) by smtp.gmail.com with ESMTPSA id m5-20020adffe45000000b002fae7408544sm9455350wrs.108.2023.06.23.05.50.47 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Jun 2023 05:50:47 -0700 (PDT) From: Neil Armstrong Date: Fri, 23 Jun 2023 14:50:43 +0200 Subject: [PATCH v2 2/4] interconnect: qcom: sm8450: add enable_mask for bcm nodes MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-2-709474b151cc@linaro.org> References: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> In-Reply-To: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Georgi Djakov Cc: linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Neil Armstrong X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2744; i=neil.armstrong@linaro.org; h=from:subject:message-id; bh=LaziN8HXwyH279DHBKH1rB581eoiV23jx7/cCXsPqWQ=; b=owEBbQKS/ZANAwAKAXfc29rIyEnRAcsmYgBklZUkdxD0FbTQDU+PbPUpmHf9tTbxlSXuJeEA6/GX pnFbbAaJAjMEAAEKAB0WIQQ9U8YmyFYF/h30LIt33NvayMhJ0QUCZJWVJAAKCRB33NvayMhJ0eY2D/ 9FLDKlj1748uBlkTDxAyFF2/I8h+Vyr5mtbojmOx7jIBu0cnTqZ5dF3hJmfECQCICFxa0vyZIOpbdm zK1D+yKmpcDvxWXWvNnYEqkQQfnmMdvXSslDvp9n5+EM7YVTWrkkAItpCfQQYWoYBXeeVtlKsqyDbr 7v2/tfqa4Kwni8Ku86mujCQypc11H8xouLiTPpA2JDWCqfSRETeJkwtac1a0n9royPYF7OEd6YblG1 P87eq0Y/LJjKh1HiGC4XkTM/qdW/iNccCgp72jCGWa4ebzq3Ka2W1XkXzCeLOKSoQPgvdgqL8EXLVz 7F2scoJ74rh5NMqntXUtnXKxz8jYZMsCtv8KUZzFxWMMgzLQnOAEzfCXDdSdpOkWI8zKV0WGLUmVeM ageYZOKMnAHfCwVLDhCmzsJXYX9ePP2hbZgDVM1LIRNsfMDTg5oE/FBS0mpNF8eT7XsPKxmL287v1M 8YpRjcQbIldioAqutxx4ovN5BkFX8e73HuBHvqIOZT7m9quQTOntwi9luoLPwk0XYAgoDNADP2XLar hZRME5r1Myu3aI2FuTi8t79khgHYNOYSH6pIzJMcLQ4lHS7psZv01zU/yOVr93DK9aNeHS1s27Ccj3 Dh41yo5cp9613MjCpDwW0kTqFESixUWMKFWmn4dITnr2IWPuq4cR2ss4qXjg== X-Developer-Key: i=neil.armstrong@linaro.org; a=openpgp; fpr=89EC3D058446217450F22848169AB7B1A4CFF8AE Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Set the proper enable_mask to nodes requiring such value to be used instead of a bandwidth when voting. The masks were copied from the downstream implementation at [1]. [1] https://git.codelinaro.org/clo/la/kernel/msm-5.10/-/blob/KERNEL.PLATFOR= M.1.0.r2-05600-WAIPIOLE.0/drivers/interconnect/qcom/waipio.c Signed-off-by: Neil Armstrong Reported-by would be cool as well :D Reviewed-by: Konrad Dybcio --- drivers/interconnect/qcom/sm8450.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/interconnect/qcom/sm8450.c b/drivers/interconnect/qcom= /sm8450.c index 2d7a8e7b85ec..e64c214b4020 100644 --- a/drivers/interconnect/qcom/sm8450.c +++ b/drivers/interconnect/qcom/sm8450.c @@ -1337,6 +1337,7 @@ static struct qcom_icc_node qns_mem_noc_sf_disp =3D { =20 static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", + .enable_mask =3D 0x8, .num_nodes =3D 1, .nodes =3D { &ebi }, }; @@ -1349,6 +1350,7 @@ static struct qcom_icc_bcm bcm_ce0 =3D { =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, @@ -1383,6 +1385,7 @@ static struct qcom_icc_bcm bcm_cn0 =3D { =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 }, }; @@ -1403,6 +1406,7 @@ static struct qcom_icc_bcm bcm_mm0 =3D { =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, @@ -1445,6 +1449,7 @@ static struct qcom_icc_bcm bcm_sh0 =3D { =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, @@ -1461,6 +1466,7 @@ static struct qcom_icc_bcm bcm_sn0 =3D { =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 }, @@ -1492,6 +1498,7 @@ static struct qcom_icc_bcm bcm_sn7 =3D { =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 }, }; @@ -1510,6 +1517,7 @@ static struct qcom_icc_bcm bcm_mm0_disp =3D { =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 }, @@ -1523,6 +1531,7 @@ static struct qcom_icc_bcm bcm_sh0_disp =3D { =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 }, }; --=20 2.34.1 From nobody Mon Feb 9 17:07:31 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 145C5C001DB for ; Fri, 23 Jun 2023 12:51:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231856AbjFWMv0 (ORCPT ); Fri, 23 Jun 2023 08:51:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38764 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231755AbjFWMvP (ORCPT ); Fri, 23 Jun 2023 08:51:15 -0400 Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F3FBD2685 for ; Fri, 23 Jun 2023 05:50:54 -0700 (PDT) Received: by mail-wr1-x42a.google.com with SMTP id ffacd0b85a97d-311099fac92so726316f8f.0 for ; Fri, 23 Jun 2023 05:50:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687524653; x=1690116653; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=SQPYx20u00M+roY3uJQ+vYmQ/eO8mxTFKwXZGsfFovc=; b=L1kdnLb0byVMkJxV/V+WUH2ZcGogGK15LBa3VtNBpYSGFU6FkheYu2+MoOxiG4JfEP iPc1qfotPFlbPPAi2RfzOdrI+kckiHGbhmzj1WQxRbdOUt9+vilvYiMwAZ1wPEVIXKVb nSrwQ+YqCcDB8YbQSPS3OrvG+0PpFdsA388cY7DRNGBkLsVv+01uTccn+60Kgbe6wpYA vSwZTqCNd+6Ux6lQ6yNreyuL6AFxPYiz1AkTRyqHATYlKAZtIlYcCQlxJ8spwvOAYmZn roX8pu+9qw8q9FPSKhVqcKKiCNgScZlBgZeqx7Q3dDsxofimNaAQ6UEZFgNinaAk6KRk d4mA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687524653; x=1690116653; 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=SQPYx20u00M+roY3uJQ+vYmQ/eO8mxTFKwXZGsfFovc=; b=a93hgQTs3+gNuUEcrcWMsUBrPwd3vfZcYIJ3mqEmBXOdkd6qPrM1zmhUTnm2RseA7U mkcXQSRlaGLF4J9533natCLHa479AE6+dxKSbF5Q3nI2PwEK7YrhmS8j1zPrhyj72e3/ gjxiSu8RfW9LCDxfUsYJ7bVCifBxCFIoJGh5Lu9wC3dmGSFzlgVwXRFVn8t4aCm0zUfq pLD3NMoWaWMwD3kiPWm4EQs45w7QyYXzK3AwEyDQSXjJfu3vXzeqA58/ANBhWmJaQxVs DMdfzbah+7P8XrAF3wGwJ5Z/405zree26Rg+SF8yDwUnNZy3VPsV9GceWTS/DpFZ6nq4 VDew== X-Gm-Message-State: AC+VfDxLH2gT4IKlpD7zN3WmqKqYSPz6gAdrJTX7I1MHBzHOsay6HFBj v3b//BrgKRNZ+I+HQWzBfdmR1A== X-Google-Smtp-Source: ACHHUZ58EcdwBaufREV/IbtVElNkuD8EoWnB43qpGlRzvY1TJQqsTKUu/GiT2DRs4sPcrB1sJjbsIg== X-Received: by 2002:adf:f203:0:b0:2f9:4fe9:74bb with SMTP id p3-20020adff203000000b002f94fe974bbmr19214534wro.40.1687524653483; Fri, 23 Jun 2023 05:50:53 -0700 (PDT) Received: from arrakeen.starnux.net ([2a01:e0a:982:cbb0:8261:5fff:fe11:bdda]) by smtp.gmail.com with ESMTPSA id m5-20020adffe45000000b002fae7408544sm9455350wrs.108.2023.06.23.05.50.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Jun 2023 05:50:53 -0700 (PDT) From: Neil Armstrong Date: Fri, 23 Jun 2023 14:50:44 +0200 Subject: [PATCH v2 3/4] interconnect: qcom: sm8550: add enable_mask for bcm nodes MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-3-709474b151cc@linaro.org> References: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> In-Reply-To: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Georgi Djakov Cc: linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Neil Armstrong X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=4919; i=neil.armstrong@linaro.org; h=from:subject:message-id; bh=8vaq0sZ17vKC2cKnCb7WrT7B4lW898uopnjsVkfE50c=; b=owEBbQKS/ZANAwAKAXfc29rIyEnRAcsmYgBklZUk+GpE3KkQ9NZ8JuKcjwSSnTwLfwsqcZKJRhV3 gyjLbgKJAjMEAAEKAB0WIQQ9U8YmyFYF/h30LIt33NvayMhJ0QUCZJWVJAAKCRB33NvayMhJ0RZMD/ 9SqZFRDijRSb5YcmbiBZJpS6mWEC2FkFU1Zf7f246Vf+LOcuY9VQNfIYa/+7fUVwqRLVIUx5LFOSlU foKi/8l1srhiTBP75T6g65BrhNu21DZ+ZpemHoW7JAUj+2eFqu/HTpAy1SqJZcKHota/Od08o0efU0 8xm9pSN17AyNx/vm+BaTL1x3dJU1ji/yocuHkZalbSEguUJOicQKn2LfCHs/BWkATiWrjHrh+ICjb0 W2+C5DRGJewboUoPKooTpMV3iuHX3GcOYWyN0h5vPsPPP6r1MyExHWmwITHiGDPxdYN+f/kXjcboEB 6+wxGbF6M0BgtyUNeYB+IZ95qEMfoVh8HWkRzHky/kyoZuc/taLJSowj/tgHMP5Vbeu07bGWN3yVCA UcBQnN8px97WExG1WpYvWsczSWn71Zy6ZokCV6veqasKHFtaLanK6AccD8bIq3AmV/l9qEKe/4l6iv sAmBjK+tLf1xZjx5BJTMBHZzi50REh5+NmxPKX8FE9Qa2RPspDoByMi5zqoS9pQKTBvIfhczwuIMF5 marLjXH+ty5pO8Wr5oDmDCvFToEEeRHHyVySZ4lBKwTai9rPSZVrVTbebnew9VrustegyOhCOTvy7C 2ugAyoX9ODa3apq0TqPUWGq2FTaNcWCfyFazXVzdCpJ1uoR3XSRn+34kyHZQ== X-Developer-Key: i=neil.armstrong@linaro.org; a=openpgp; fpr=89EC3D058446217450F22848169AB7B1A4CFF8AE Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Set the proper enable_mask to nodes requiring such value to be used instead of a bandwidth when voting. The masks were copied from the downstream implementation at [1]. [1] https://git.codelinaro.org/clo/la/kernel/msm-5.15/-/blob/kernel.lnx.5.1= 5.r1-rel/drivers/interconnect/qcom/kalama.c Reviewed-by: Konrad Dybcio Signed-off-by: Neil Armstrong Reported-by would be cool as well :D --- drivers/interconnect/qcom/sm8550.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/drivers/interconnect/qcom/sm8550.c b/drivers/interconnect/qcom= /sm8550.c index d823ba988ef6..0864ed285375 100644 --- a/drivers/interconnect/qcom/sm8550.c +++ b/drivers/interconnect/qcom/sm8550.c @@ -1473,6 +1473,7 @@ static struct qcom_icc_node qns_mem_noc_sf_cam_ife_2 = =3D { =20 static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", + .enable_mask =3D 0x8, .num_nodes =3D 1, .nodes =3D { &ebi }, }; @@ -1485,6 +1486,7 @@ static struct qcom_icc_bcm bcm_ce0 =3D { =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, @@ -1524,6 +1526,7 @@ static struct qcom_icc_bcm bcm_cn1 =3D { =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 }, }; @@ -1549,6 +1552,7 @@ static struct qcom_icc_bcm bcm_mm0 =3D { =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, @@ -1589,6 +1593,7 @@ static struct qcom_icc_bcm bcm_sh0 =3D { =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, @@ -1608,6 +1613,7 @@ static struct qcom_icc_bcm bcm_sn0 =3D { =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 }, @@ -1633,6 +1639,7 @@ static struct qcom_icc_bcm bcm_sn7 =3D { =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 }, }; @@ -1657,12 +1664,14 @@ static struct qcom_icc_bcm bcm_sh0_disp =3D { =20 static struct qcom_icc_bcm bcm_sh1_disp =3D { .name =3D "SH1", + .enable_mask =3D 0x1, .num_nodes =3D 2, .nodes =3D { &qnm_mnoc_hf_disp, &qnm_pcie_disp }, }; =20 static struct qcom_icc_bcm bcm_acv_cam_ife_0 =3D { .name =3D "ACV", + .enable_mask =3D 0x0, .num_nodes =3D 1, .nodes =3D { &ebi_cam_ife_0 }, }; @@ -1681,6 +1690,7 @@ static struct qcom_icc_bcm bcm_mm0_cam_ife_0 =3D { =20 static struct qcom_icc_bcm bcm_mm1_cam_ife_0 =3D { .name =3D "MM1", + .enable_mask =3D 0x1, .num_nodes =3D 4, .nodes =3D { &qnm_camnoc_hf_cam_ife_0, &qnm_camnoc_icp_cam_ife_0, &qnm_camnoc_sf_cam_ife_0, &qns_mem_noc_sf_cam_ife_0 }, @@ -1694,6 +1704,7 @@ static struct qcom_icc_bcm bcm_sh0_cam_ife_0 =3D { =20 static struct qcom_icc_bcm bcm_sh1_cam_ife_0 =3D { .name =3D "SH1", + .enable_mask =3D 0x1, .num_nodes =3D 3, .nodes =3D { &qnm_mnoc_hf_cam_ife_0, &qnm_mnoc_sf_cam_ife_0, &qnm_pcie_cam_ife_0 }, @@ -1701,6 +1712,7 @@ static struct qcom_icc_bcm bcm_sh1_cam_ife_0 =3D { =20 static struct qcom_icc_bcm bcm_acv_cam_ife_1 =3D { .name =3D "ACV", + .enable_mask =3D 0x0, .num_nodes =3D 1, .nodes =3D { &ebi_cam_ife_1 }, }; @@ -1719,6 +1731,7 @@ static struct qcom_icc_bcm bcm_mm0_cam_ife_1 =3D { =20 static struct qcom_icc_bcm bcm_mm1_cam_ife_1 =3D { .name =3D "MM1", + .enable_mask =3D 0x1, .num_nodes =3D 4, .nodes =3D { &qnm_camnoc_hf_cam_ife_1, &qnm_camnoc_icp_cam_ife_1, &qnm_camnoc_sf_cam_ife_1, &qns_mem_noc_sf_cam_ife_1 }, @@ -1732,6 +1745,7 @@ static struct qcom_icc_bcm bcm_sh0_cam_ife_1 =3D { =20 static struct qcom_icc_bcm bcm_sh1_cam_ife_1 =3D { .name =3D "SH1", + .enable_mask =3D 0x1, .num_nodes =3D 3, .nodes =3D { &qnm_mnoc_hf_cam_ife_1, &qnm_mnoc_sf_cam_ife_1, &qnm_pcie_cam_ife_1 }, @@ -1739,6 +1753,7 @@ static struct qcom_icc_bcm bcm_sh1_cam_ife_1 =3D { =20 static struct qcom_icc_bcm bcm_acv_cam_ife_2 =3D { .name =3D "ACV", + .enable_mask =3D 0x0, .num_nodes =3D 1, .nodes =3D { &ebi_cam_ife_2 }, }; @@ -1757,6 +1772,7 @@ static struct qcom_icc_bcm bcm_mm0_cam_ife_2 =3D { =20 static struct qcom_icc_bcm bcm_mm1_cam_ife_2 =3D { .name =3D "MM1", + .enable_mask =3D 0x1, .num_nodes =3D 4, .nodes =3D { &qnm_camnoc_hf_cam_ife_2, &qnm_camnoc_icp_cam_ife_2, &qnm_camnoc_sf_cam_ife_2, &qns_mem_noc_sf_cam_ife_2 }, @@ -1770,6 +1786,7 @@ static struct qcom_icc_bcm bcm_sh0_cam_ife_2 =3D { =20 static struct qcom_icc_bcm bcm_sh1_cam_ife_2 =3D { .name =3D "SH1", + .enable_mask =3D 0x1, .num_nodes =3D 3, .nodes =3D { &qnm_mnoc_hf_cam_ife_2, &qnm_mnoc_sf_cam_ife_2, &qnm_pcie_cam_ife_2 }, --=20 2.34.1 From nobody Mon Feb 9 17:07:31 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 28F42C001DE for ; Fri, 23 Jun 2023 12:51:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231882AbjFWMv3 (ORCPT ); Fri, 23 Jun 2023 08:51:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38732 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231768AbjFWMvP (ORCPT ); Fri, 23 Jun 2023 08:51:15 -0400 Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C5C782693 for ; Fri, 23 Jun 2023 05:50:55 -0700 (PDT) Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-3129c55e1d1so696083f8f.0 for ; Fri, 23 Jun 2023 05:50:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1687524654; x=1690116654; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=GYdp75VAJ765a2DkcylWB3P153YCeO8g/iykuAM8Pgs=; b=bikJxea1Yk1J3T5KYNMQApfPvaGH74ADu2BxV0CNf+XOYt5OtyJVvIJC9wYFXXLXo2 S1PDVkLW3XYIOWlUFwhYjZjqQEPlftarS2tz3ynAVSIC8yX/AzOMP+7HyJMCY0QLPzxG 9qnl94f2gUApQvgtdvTj03jcoYsTbm8vHZ7Mj9suRpwnwbQt2UY+EBSxcRZeUzaD0Nls cRug7w2qVPJvgc9vTnKCIlBHCQJDakd64iFIncRAkTky3dR/nppwHSlEs8QzXKGCNsAr Wm0bzjsH4mQPFLl3eiQQwJKvH0BFJVKqR33metaCfxSbDUaKSCQozuQTxUa2lZ9bfdJh MFUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687524654; x=1690116654; 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=GYdp75VAJ765a2DkcylWB3P153YCeO8g/iykuAM8Pgs=; b=JHO/58FFmjBcioJMPM3dyu089QF/Bt7tRZmjCJ5bREuVuto0cZIqO8ZvTb/qDRpFOd XoWML9ewMCujgN5/bVAv4R6na6wdaeNlxzqeqywx5eypiMj0638KCn/AtZHDVcKPsRon p86faUj4JN0jTuBKqb+9MwwCCkc11XeMjBASOjetz537PtTkbqzfvRwM+pv6TtAdE7Ny IsziM8Ykmr5UIWduKAB7OBs17IAVqQ5iPh4VXQisW5y9Bez8b4WCbUz9oIh3GgwrfQIN RKjTORhTm3p01fmXbTXSyFjKXAWo9Qr9BPgG3zcNSpTNNoyuk8LMxXXMHv6cRrIskVME DaQQ== X-Gm-Message-State: AC+VfDwU2oYiS3nwFAWftvAPagh9f1P6URRSeaem58dIFPffTgzccJGi ed3r0A/p3/VW1lyfPOtsaoBGYKufSHl49k/mYew3Eg== X-Google-Smtp-Source: ACHHUZ7qAc5EKkLfCusMiH7xwYSijIrrBDzdRNP/YHHAqobl4iyafrfQtwOZA7O8+0tQc5Txvm/tYQ== X-Received: by 2002:adf:e585:0:b0:30a:f36e:72a3 with SMTP id l5-20020adfe585000000b0030af36e72a3mr20991627wrm.0.1687524654342; Fri, 23 Jun 2023 05:50:54 -0700 (PDT) Received: from arrakeen.starnux.net ([2a01:e0a:982:cbb0:8261:5fff:fe11:bdda]) by smtp.gmail.com with ESMTPSA id m5-20020adffe45000000b002fae7408544sm9455350wrs.108.2023.06.23.05.50.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 23 Jun 2023 05:50:53 -0700 (PDT) From: Neil Armstrong Date: Fri, 23 Jun 2023 14:50:45 +0200 Subject: [PATCH v2 4/4] interconnect: qcom: sa8775p: add enable_mask for bcm nodes MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-4-709474b151cc@linaro.org> References: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> In-Reply-To: <20230619-topic-sm8550-upstream-interconnect-mask-vote-v2-0-709474b151cc@linaro.org> To: Andy Gross , Bjorn Andersson , Konrad Dybcio , Georgi Djakov Cc: linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Neil Armstrong X-Mailer: b4 0.12.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=871; i=neil.armstrong@linaro.org; h=from:subject:message-id; bh=T0OCke3zU0kw5rM6EOGl8ujcJr6B7UbkFHa+/zvY2yY=; b=owEBbQKS/ZANAwAKAXfc29rIyEnRAcsmYgBklZUlAw0ZOrFFJdxA2MlOVSR2x2/u+WWMqwGAroEz KBdhuSGJAjMEAAEKAB0WIQQ9U8YmyFYF/h30LIt33NvayMhJ0QUCZJWVJQAKCRB33NvayMhJ0Yg4EA DO41iwRa2L9Mh4dQM+rNxAt/O4LwF8KTM5Z7SYrycTMC+hO8I2zyPwGaGH/WOJhBt9KMyYSXxccu+H w4UkP2BfStArd5qsC18sHYDQxIary7rt2/N8RxfJjAeTe2saSVrI/5Kd3DOqVhG/N1wz4kGzyPGzhT H7/lS+ajV6jt3JH0uO4DbwCVMzDkR/qa2eTj5plcYAMgbTwXIVJUGaads3eet9Fqa5b5gUo6N1giRJ HkhpkGMh6KAbsL37HB63jSWFoeEAkYpZpyLbKUuopNqRsw68MMFvgteXxbkx3difOL0RAJAecJw2Uo nehy+yVZTDytzFQkX7rP5ctSHN1RNcbr/5wdD9RgyiTo+vRQ+2X4R0i/wOv6NOdPxbclWsWcAQ9sZh fv0FYAhCMJAP/k3T9Sj2GMnmXmrRVpSQG3t8PQcnt44meGjyUyoGKJBEj0kWvPokq2NefjhrmWYkMj +yzDbdbBzUtabcUT7ZoBOTUMpRyr8czV/MMWES3908S08qeEws+hAPAv8T/0EURKE3zyWVbYHDwLMu CrBi8CQ+t7oJoH4yIRpg+YGvw+Ie242k5MdeEMuyrScGj44pLuWFxhEbkBwBCTISf7fjtKKeutwqgI yJ6mNSeOZebcjV06t6Zs5wAN6YvEBvUvr+Gd+C1GsaZgGmsJDM3F3pzZH1Cg== X-Developer-Key: i=neil.armstrong@linaro.org; a=openpgp; fpr=89EC3D058446217450F22848169AB7B1A4CFF8AE Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Set the proper enable_mask the ACV node requiring such value to be used instead of a bandwidth when voting. The masks was copied from the downstream implementation at [1]. [1] https://git.codelinaro.org/clo/la/kernel/msm-5.15/-/blob/kernel.lnx.5.1= 5.r32-rel/drivers/interconnect/qcom/lemans.c Signed-off-by: Neil Armstrong Reported-by would be cool as well :D Reviewed-by: Konrad Dybcio --- drivers/interconnect/qcom/sa8775p.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/interconnect/qcom/sa8775p.c b/drivers/interconnect/qco= m/sa8775p.c index da21cc31a580..f56538669de0 100644 --- a/drivers/interconnect/qcom/sa8775p.c +++ b/drivers/interconnect/qcom/sa8775p.c @@ -1873,6 +1873,7 @@ static struct qcom_icc_node srvc_snoc =3D { =20 static struct qcom_icc_bcm bcm_acv =3D { .name =3D "ACV", + .enable_mask =3D 0x8, .num_nodes =3D 1, .nodes =3D { &ebi }, }; --=20 2.34.1