]> git.baikalelectronics.ru Git - kernel.git/commit
soc: qcom: icc-bwmon: Add bandwidth monitoring driver
authorKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Mon, 4 Jul 2022 12:17:28 +0000 (14:17 +0200)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 6 Jul 2022 20:57:51 +0000 (15:57 -0500)
commitac1e09c978e8cb39d35faa3b0bfb97243f426610
tree38d56940663d36c26d9b73db3901da36ebb04775
parent4c68d7c5d6bce046a1aaa7ec94b13cedb0046b65
soc: qcom: icc-bwmon: Add bandwidth monitoring driver

Bandwidth monitoring (BWMON) sits between various subsytems like CPU,
GPU, Last Level caches and memory subsystem.  The BWMON can be
configured to monitor the data throuhput between memory and other
subsytems.  The throughput is measured within specified sampling window
and is used to vote for corresponding interconnect bandwidth.

Current implementation brings support for BWMON v4, used for example on
SDM845 to measure bandwidth between CPU (gladiator_noc) and Last Level
Cache (memnoc).  Usage of this BWMON allows to remove fixed bandwidth
votes from cpufreq (CPU nodes) thus achieve high memory throughput even
with lower CPU frequencies.

The driver was tested on SDM845.

Co-developed-by: Thara Gopinath <thara.gopinath@gmail.com>
Signed-off-by: Thara Gopinath <thara.gopinath@gmail.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220704121730.127925-3-krzysztof.kozlowski@linaro.org
MAINTAINERS
drivers/soc/qcom/Kconfig
drivers/soc/qcom/Makefile
drivers/soc/qcom/icc-bwmon.c [new file with mode: 0644]