From patchwork Thu Jun 30 13:05:38 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Krzysztof Kozlowski X-Patchwork-Id: 12901813 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 B784BCCA481 for ; Thu, 30 Jun 2022 13:05:50 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235174AbiF3NFt (ORCPT ); Thu, 30 Jun 2022 09:05:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43632 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235144AbiF3NFs (ORCPT ); Thu, 30 Jun 2022 09:05:48 -0400 Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [IPv6:2a00:1450:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BDDDF220D1 for ; Thu, 30 Jun 2022 06:05:47 -0700 (PDT) Received: by mail-ej1-x635.google.com with SMTP id ge10so38898158ejb.7 for ; Thu, 30 Jun 2022 06:05:47 -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=WoV4pas84c7AMle4/cOCqX9GxEkhRyeiQnd4AgtTb4M=; b=xfy9bScGM/9QWE4qEN0iUghHvcSTcJH3KQ6R3wGdz0K19qKA6E7M6z5XIocaWQfxju hvXxmgp1GLjOQP5JJl+B97AsjcV67+jrb33vqtGDglrnO2kg3kBdYSEKBIiwHUCbwgNQ s4zuHt/q8J0Gh6VZyQ9kGusouz62vzhHDqrhKh49eJ+AZ8IsKPUSU+XUqQ5cXJ/joDbr C1dUC8+S6V7ktlyFP5kvac3Fg2jFJAPNTXnZntimA1Rj9GYBnhAgFsr61eoly0jEjUQR VS5hs1mo6MqFnSmIkm5Vd8eZZjOCAwf4TaH7n4imtBx6t7c6xBd18E8XBeapb1vX4ei/ zwDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WoV4pas84c7AMle4/cOCqX9GxEkhRyeiQnd4AgtTb4M=; b=ACYC7bNq/ksLPB668rOboW7uCeGxYM6GDdqyvYfE85mRbrrxYIOFXA0POOxPI4PpEc tlxSWpgbYGu00RCc6m8AlkKhnOu/L/fSGm4uCKzdcjJPcCAZ1nM6rogBfDd5pbv97KXa qS5zekGonrpQ4ZTQ9Mqz74tfpJ4ym9mSGNpsSYCbR/0YWbflbg1NAkUaOvey+p3cTgjZ 1uUYi12oe4Gdh6PtBijSQV3zmR890yAAhsoO/J8+YudZxLY3wsoyXH5a2JmnAxoKNzG/ d2OXShsvmHcwJP8hsahAdzNsqZJyUDd15L02kIQ7hQyhiQ/wAmNylY+RhPdZQBmWeT/5 zjhw== X-Gm-Message-State: AJIora8zlz7NvcikGA4czxoaUk5dJYhbl1XLcrxZFMFHIqB8+uilHk8n ykVyTA4mGrTmp/iM/MGQdo3qFw== X-Google-Smtp-Source: AGRyM1tyzoD4broviwi8cseUJcMss44EJFmHnXdv76S5xGNYbukNcjB8q6FsDxih9LAnfiSSugsDkw== X-Received: by 2002:a17:907:3da2:b0:718:c108:663c with SMTP id he34-20020a1709073da200b00718c108663cmr8826494ejc.252.1656594346338; Thu, 30 Jun 2022 06:05:46 -0700 (PDT) Received: from localhost.localdomain (xdsl-188-155-176-92.adslplus.ch. [188.155.176.92]) by smtp.gmail.com with ESMTPSA id f15-20020a1709062c4f00b007081282cbd8sm9124967ejh.76.2022.06.30.06.05.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Jun 2022 06:05:45 -0700 (PDT) From: Krzysztof Kozlowski To: Andy Gross , Bjorn Andersson , Krzysztof Kozlowski , Georgi Djakov , Rob Herring , Catalin Marinas , Will Deacon , linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Rajendra Nayak , Rob Herring Subject: [PATCH v7 1/4] dt-bindings: interconnect: qcom,msm8998-cpu-bwmon: add BWMON device Date: Thu, 30 Jun 2022 15:05:38 +0200 Message-Id: <20220630130541.563001-2-krzysztof.kozlowski@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220630130541.563001-1-krzysztof.kozlowski@linaro.org> References: <20220630130541.563001-1-krzysztof.kozlowski@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org Add bindings for the Qualcomm Bandwidth Monitor device providing performance data on interconnects. The bindings describe only BWMON CPU (version 4), e.g. the instance which appeared for the first on Qualcomm MSM8998 SoC and is also used on SDM845. This BWMON device sits between CPU and Last Level Cache Controller. Signed-off-by: Krzysztof Kozlowski Reviewed-by: Rob Herring Acked-by: Georgi Djakov --- .../interconnect/qcom,msm8998-llcc-bwmon.yaml | 85 +++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 Documentation/devicetree/bindings/interconnect/qcom,msm8998-llcc-bwmon.yaml diff --git a/Documentation/devicetree/bindings/interconnect/qcom,msm8998-llcc-bwmon.yaml b/Documentation/devicetree/bindings/interconnect/qcom,msm8998-llcc-bwmon.yaml new file mode 100644 index 000000000000..76e09658d615 --- /dev/null +++ b/Documentation/devicetree/bindings/interconnect/qcom,msm8998-llcc-bwmon.yaml @@ -0,0 +1,85 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/interconnect/qcom,msm8998-llcc-bwmon.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Qualcomm Interconnect Bandwidth Monitor + +maintainers: + - Krzysztof Kozlowski + +description: | + Bandwidth Monitor measures current throughput on buses between various NoC + fabrics and provides information when it crosses configured thresholds. + + Certain SoCs might have more than one Bandwidth Monitors, for example on SDM845:: + - Measuring the bandwidth between CPUs and Last Level Cache Controller - + called LLCC BWMON, + - Measuring the bandwidth between Last Level Cache Controller and memory (DDR). + +properties: + compatible: + oneOf: + - items: + - enum: + - qcom,sdm845-llcc-bwmon + - const: qcom,msm8998-llcc-bwmon + - const: qcom,msm8998-llcc-bwmon # BWMON v4 + + interconnects: + maxItems: 1 + + interrupts: + maxItems: 1 + + operating-points-v2: true + opp-table: true + + reg: + # BWMON v4 (currently described) and BWMON v5 use one register address + # space. BWMON v2 uses two register spaces - not yet described. + maxItems: 1 + +required: + - compatible + - interconnects + - interrupts + - operating-points-v2 + - opp-table + - reg + +additionalProperties: false + +examples: + - | + #include + #include + + pmu@1436400 { + compatible = "qcom,sdm845-llcc-bwmon", "qcom,msm8998-llcc-bwmon"; + reg = <0x01436400 0x600>; + interrupts = ; + interconnects = <&gladiator_noc MASTER_APPSS_PROC 3 &mem_noc SLAVE_LLCC 3>; + + operating-points-v2 = <&llcc_bwmon_opp_table>; + + llcc_bwmon_opp_table: opp-table { + compatible = "operating-points-v2"; + opp-0 { + opp-peak-kBps = <4800000>; + }; + opp-1 { + opp-peak-kBps = <9216000>; + }; + opp-2 { + opp-peak-kBps = <15052800>; + }; + opp-3 { + opp-peak-kBps = <20889600>; + }; + opp-4 { + opp-peak-kBps = <25497600>; + }; + }; + };