interconnect: qcom: Add MSM8909 interconnect provider driver
authorAdam Skladowski <a39.skl@gmail.com>
Wed, 20 Dec 2023 10:38:50 +0000 (11:38 +0100)
committerGeorgi Djakov <djakov@kernel.org>
Wed, 31 Jan 2024 13:08:57 +0000 (15:08 +0200)
commit1cef9f2d1ef8ccdf7414a39e054852b66376b631
treed51e09a1dd103091b42121118c9d24760877bd7f
parent47878b451216cf5e5a23bb3f931a9f932464e93d
interconnect: qcom: Add MSM8909 interconnect provider driver

Add driver for interconnect busses found in MSM8909 based platforms.
The topology consists of three NoCs that are partially controlled by
a RPM processor.

In the downstream/vendor kernel from Qualcomm there is an additional
"mm-snoc". However, it actually ends up using the same RPM "snoc_clk"
as the normal "snoc". It looks like this is actually the same NoC
in hardware and the "mm-snoc" was only defined to assign a different
"qcom,util-fact" to increase bandwidth requests by a static margin.
In mainline we can represent this by assigning the equivalent "ab_coeff"
to all the nodes that are part of "mm-snoc" downstream.

Signed-off-by: Adam Skladowski <a39.skl@gmail.com>
[Stephan: Drop separate mm-snoc that exists downstream since it's
 actually the same NoC as SNoC in hardware, add qos_offset for BIMC,
 add ab_coeff for mm-snoc nodes and BIMC]
Signed-off-by: Stephan Gerhold <stephan.gerhold@kernkonzept.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Link: https://lore.kernel.org/r/20231220-icc-msm8909-v2-2-3b68bbed2891@kernkonzept.com
Signed-off-by: Georgi Djakov <djakov@kernel.org>
drivers/interconnect/qcom/Kconfig
drivers/interconnect/qcom/Makefile
drivers/interconnect/qcom/msm8909.c [new file with mode: 0644]