1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/interconnect/qcom,msm8998-bwmon.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Qualcomm Interconnect Bandwidth Monitor 8 9maintainers: 10 - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 11 12description: | 13 Bandwidth Monitor measures current throughput on buses between various NoC 14 fabrics and provides information when it crosses configured thresholds. 15 16 Certain SoCs might have more than one Bandwidth Monitors, for example on SDM845:: 17 - Measuring the bandwidth between CPUs and Last Level Cache Controller - 18 called just BWMON, 19 - Measuring the bandwidth between Last Level Cache Controller and memory 20 (DDR) - called LLCC BWMON. 21 22properties: 23 compatible: 24 oneOf: 25 - items: 26 - enum: 27 - qcom,sc7280-cpu-bwmon 28 - qcom,sc8280xp-cpu-bwmon 29 - qcom,sdm845-bwmon 30 - qcom,sm8550-cpu-bwmon 31 - const: qcom,msm8998-bwmon 32 - const: qcom,msm8998-bwmon # BWMON v4 33 - items: 34 - enum: 35 - qcom,sc8280xp-llcc-bwmon 36 - qcom,sm8550-llcc-bwmon 37 - const: qcom,sc7280-llcc-bwmon 38 - const: qcom,sc7280-llcc-bwmon # BWMON v5 39 - const: qcom,sdm845-llcc-bwmon # BWMON v5 40 41 interconnects: 42 maxItems: 1 43 44 interrupts: 45 maxItems: 1 46 47 operating-points-v2: true 48 opp-table: 49 type: object 50 51 reg: 52 # BWMON v4 (currently described) and BWMON v5 use one register address 53 # space. BWMON v2 uses two register spaces - not yet described. 54 maxItems: 1 55 56required: 57 - compatible 58 - interconnects 59 - interrupts 60 - operating-points-v2 61 - opp-table 62 - reg 63 64additionalProperties: false 65 66examples: 67 - | 68 #include <dt-bindings/interconnect/qcom,sdm845.h> 69 #include <dt-bindings/interrupt-controller/arm-gic.h> 70 71 pmu@1436400 { 72 compatible = "qcom,sdm845-bwmon", "qcom,msm8998-bwmon"; 73 reg = <0x01436400 0x600>; 74 interrupts = <GIC_SPI 581 IRQ_TYPE_LEVEL_HIGH>; 75 interconnects = <&gladiator_noc MASTER_APPSS_PROC 3 &mem_noc SLAVE_LLCC 3>; 76 77 operating-points-v2 = <&cpu_bwmon_opp_table>; 78 79 cpu_bwmon_opp_table: opp-table { 80 compatible = "operating-points-v2"; 81 opp-0 { 82 opp-peak-kBps = <4800000>; 83 }; 84 opp-1 { 85 opp-peak-kBps = <9216000>; 86 }; 87 opp-2 { 88 opp-peak-kBps = <15052800>; 89 }; 90 opp-3 { 91 opp-peak-kBps = <20889600>; 92 }; 93 opp-4 { 94 opp-peak-kBps = <25497600>; 95 }; 96 }; 97 }; 98