This series adds a driver for interconnects on MSM8996. This fixes some rare display underflows and provides a slight heat reduction. Resending because some addresses in CC got mixed up. Changes since v4: - Rebase on Dmitry's icc-rpm patches[1]. - Combine SDM660 bindings into the RPM interconnect schema. - Clean up qcom_icc_node structs by removing unused properties, moving links to external arrays and using the same arrays for multiple nodes where possible. - Add support for Aggregate 0 NoC (a0noc). Changes since v3: - Expand DEFINE_QNODE macros in msm8996.c. - Commonize probe function. - Don't rename qcom_icc_set in icc-rpmh since it's no longer needed. - Code style fixes. Changes since v2: - Dual-license qcom,msm8996.h and move it to the dt bindings patch - Remove interconnect paths from CPUs since cpufreq driver doesn't support icc scaling yet. Changes since v1: - Split first patch into 2 patches, one for renaming qcom_icc_set in icc-rpmh, and another one for the actual commonization. - Revert unnecessary move of include line in sdm660.c [1] https://lore.kernel.org/linux-arm-msm/20210903232421.1384199-1-dmitry.baryshkov@xxxxxxxxxx/ Yassine Oudjana (5): dt-bindings: interconnect: Combine SDM660 bindings into RPM schema interconnect: icc-rpm: Add support for bus power domain dt-bindings: interconnect: Add Qualcomm MSM8996 DT bindings interconnect: qcom: Add MSM8996 interconnect provider driver arm64: dts: qcom: msm8996: Add interconnect support .../bindings/interconnect/qcom,rpm.yaml | 143 +- .../bindings/interconnect/qcom,sdm660.yaml | 185 -- arch/arm64/boot/dts/qcom/msm8996.dtsi | 93 + drivers/interconnect/qcom/Kconfig | 9 + drivers/interconnect/qcom/Makefile | 2 + drivers/interconnect/qcom/icc-rpm.c | 7 + drivers/interconnect/qcom/icc-rpm.h | 1 + drivers/interconnect/qcom/msm8996.c | 2113 +++++++++++++++++ drivers/interconnect/qcom/msm8996.h | 149 ++ .../dt-bindings/interconnect/qcom,msm8996.h | 163 ++ 10 files changed, 2673 insertions(+), 192 deletions(-) delete mode 100644 Documentation/devicetree/bindings/interconnect/qcom,sdm660.yaml create mode 100644 drivers/interconnect/qcom/msm8996.c create mode 100644 drivers/interconnect/qcom/msm8996.h create mode 100644 include/dt-bindings/interconnect/qcom,msm8996.h -- 2.33.1