From patchwork Thu Oct 21 13:19:05 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yassine Oudjana X-Patchwork-Id: 12575257 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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 69B96C433FE for ; Thu, 21 Oct 2021 13:19:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 5552561205 for ; Thu, 21 Oct 2021 13:19:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230072AbhJUNVc (ORCPT ); Thu, 21 Oct 2021 09:21:32 -0400 Received: from mail-0201.mail-europe.com ([51.77.79.158]:45080 "EHLO mail-0201.mail-europe.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230329AbhJUNVb (ORCPT ); Thu, 21 Oct 2021 09:21:31 -0400 Date: Thu, 21 Oct 2021 13:19:05 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail; t=1634822352; bh=LVkvx9GGJ+N/xVjEUjWIyINyqpMs9KCy7RcvjjDf9QM=; h=Date:To:From:Reply-To:Subject:From; b=bHSD/JrrJWnb+02sZ/gTBVCGXMt1haJcFjk8zcJU6ELCcl/KGGZV5TEfz4LG+8DkR oLJTHT+r0jzu2YEganYF8hwmuA55h1yBFVwsjLrtr9fQF2ebVGL7eq+E9dVLF51+5S 7kQVy567wGIWlXqm40foW7o8x/So16PFP7p+Ee7k= To: Georgi Djakov , Andy Gross , Bjorn Andersson , Rob Herring From: Yassine Oudjana Reply-To: Yassine Oudjana Subject: [PATCH v5 0/5] interconnect: qcom: Add MSM8996 interconnect driver Message-ID: <20211021131839.234662-1-y.oudjana@protonmail.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org This series adds a driver for interconnects on MSM8996. This fixes some rare display underflows and provides a slight heat reduction. 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@linaro.org/ 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