Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1206935imm; Wed, 18 Jul 2018 19:38:01 -0700 (PDT) X-Google-Smtp-Source: AAOMgpeQdEQ2m/1ouI/havlkLkwAfyAbggmG4kyinmykXcSa1SV8WY6vjL0G1qYYMAGf/bok7Pak X-Received: by 2002:a62:d444:: with SMTP id u4-v6mr7692151pfl.142.1531967881116; Wed, 18 Jul 2018 19:38:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1531967881; cv=none; d=google.com; s=arc-20160816; b=GBuYpKYTgmirToXoBqYlWtfDh6qMLEsu3SPFpnXYcdmW41U4vrd2otn/CaaqGoFK4V pg/k1fk0z3aLQcrdWhGdM6E394zUNwyt8dqYB0j/uWOmUlFbqAVNDfveF8cDT+Ih7AMX 8IlqVLdeRTmVmIGiixYeQymrcFEBHFKxoucsZoqPfJq2bLb6xCTtTceb0l7DQ52to/d+ 9xin3c0ebu94pe5ieMT4IHH0uiyebSyWCLN/W4T7lTwRa3rPqBUwmHqkcedx3sOrVowj TyMVqk/LC3Tw2HVwVB4spJk2YOE9lvehTeM8SgldQVk4h/c6n7NYa+iJEbZ7XE01QpZu f1fA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:to:from :dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=Xz1k6E+MDbcl1JI/6qLsWDgj6+YI2Fsu/aCL06nQXHU=; b=C2rxg9NigVP3YUZWgrUPWrZBOg+3ZLh+k514Ntjpbmv2J6LXc/LX/L2tGSLC0emm0F RbbRT4bjAem49ubS+eiK/74OOf3glPtb/IRLiw52Q9zZIHXBqG3P+HQvUohiIvjI8JDv p5OC9IiKmfZFJ+CGdZcFn30kH+NeGf0IYuZpBstA55FIu7Xtm0cU1y3swSF4bCjXmcdB 8//69cvP0+Jfl7/SqGhWuqeqZ8mQUv797NuOVzyVZW0C1WJ8TvtasVT62ElcuZn8R7qT oeI6Am1y0gaYf/ndEh+XyOk2L05mPbInz8mALcDerwkbMwmpwPDUawBp1IHgnDq2l8Hd XL2g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=FnGEvJ3X; dkim=pass header.i=@codeaurora.org header.s=default header.b=JNWAjQ1X; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id o123-v6si5010441pgo.190.2018.07.18.19.37.44; Wed, 18 Jul 2018 19:38:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=FnGEvJ3X; dkim=pass header.i=@codeaurora.org header.s=default header.b=JNWAjQ1X; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731267AbeGSDR4 (ORCPT + 99 others); Wed, 18 Jul 2018 23:17:56 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:54674 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729230AbeGSDR4 (ORCPT ); Wed, 18 Jul 2018 23:17:56 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 091FF607EB; Thu, 19 Jul 2018 02:37:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1531967829; bh=X7uAAuzOog9amA4fus7yaUQgwN+/VcT59LeqW/K/dTg=; h=From:To:Subject:Date:From; b=FnGEvJ3Xpsnj0hGNTTpvVIQlKCjPv7FqAvkM2fOkeix6Z3P6UCGcDBjRleNuWJ3gO x+99/1aww1xJ5Dk07Sb5VzVk0kOVquxsMdVApAm0kbx0Y3fYQe2IcrvDyes3f1iqvA b2XBv8QjMV5ixSdhTnHvRcwU2DYzCQivzG+l7WkM= X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on pdx-caf-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=ALL_TRUSTED,BAYES_00, DKIM_SIGNED,T_DKIM_INVALID autolearn=no autolearn_force=no version=3.4.0 Received: from davidai-linux.qualcomm.com (i-global254.qualcomm.com [199.106.103.254]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: daidavid1@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 01975602D7; Thu, 19 Jul 2018 02:37:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1531967828; bh=X7uAAuzOog9amA4fus7yaUQgwN+/VcT59LeqW/K/dTg=; h=From:To:Subject:Date:From; b=JNWAjQ1XBkVg311+gYNMBB+fU2ow2jm45vEvFOcPssPsaTk8fPmrb7w9Yq9ZmGFlJ oTbzhsqhBDwn/bEtJSQNpE33nEdnrld/yTDpPrUs9vFzNWXbM4UBXYsA0YdFTfeWMe V+M3DFM5FXgsQYMfkanomzqmwhfsZO3DEEQ/n1SY= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 01975602D7 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=daidavid1@codeaurora.org From: David Dai To: linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, georgi.djakov@linaro.org, vincent.guittot@linaro.org, bjorn.andersson@linaro.org, daidavid1@codeaurora.org, amit.kucheria@linaro.org, ilina@codeaurora.org, seansw@qti.qualcomm.com, grahamr@qti.qualcomm.com Subject: [RFC PATCH v1 0/2] Add QCOM SDM845 interconnect provider driver Date: Wed, 18 Jul 2018 19:36:58 -0700 Message-Id: <1531967820-27483-1-git-send-email-daidavid1@codeaurora.org> X-Mailer: git-send-email 1.9.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, This patch series adds a driver and DT binding using the interconnect (ICC) framework [1] to describe the Qualcomm SDM845 platform's topology of its interconnected buses and internal aggregation nodes known as Bus Clock Managers(BCM). The SDM845 ICC provider driver would aggregate and satisfy consumer requests accross the SoC by generating commands that communicate with the BCM through the Resource Power Manager (RPMh) driver [2] interface. The SDM845 ICC driver also configures QoS settings specific to each node to ensure clients have proper priority. The SDM845 interconnect provider has dependencies on the RPMh driver and Command DB driver [3]. Changes in v2 [5]: - Updated to use the latest RPMH and CommandDB patches - Fixed bug in bcm aggregation - Updated sdm845 provider dt entry Changes in v1 [4]: - Addressed review feedback from Georgi D. and Evan G. - Removed proposal to modify ICC aggregate callback interface - Moved BCM aggregation into provider set function - Added devicetree binding documentation - Fixed logic in generating TCS command list - Added keepalive flags for resources that are critical to platform operation - Added various comments to clarify intent - Removed unused types and struct definitions [1]: https://lkml.org/lkml/2018/6/20/453 [2]: https://lkml.org/lkml/2018/6/20/519 [3]: https://lkml.org/lkml/2018/4/10/714 [4]: https://patchwork.kernel.org/patch/10428167/ [5]: https://lkml.org/lkml/2018/6/29/743 Summary of the patches: Patch 1 creates the Qualcomm SDM845 Specific provider driver. Patch 2 Adds dt binding for SDM845 provider TODO: * Expand aggregation/provider to handle clients with active only requirements. * Add Network-on-Chip (NoC) objects to encapsulate logical nodes for QoS. * Add QoS configuration specific to each NoC. David Dai (2): interconnect: qcom: Add sdm845 interconnect provider driver arm64: dts: sdm845: Add interconnect provider DT nodes .../bindings/interconnect/qcom-sdm845.txt | 22 + arch/arm64/boot/dts/qcom/sdm845.dtsi | 5 + drivers/interconnect/qcom/Kconfig | 8 + drivers/interconnect/qcom/Makefile | 1 + drivers/interconnect/qcom/qcom-icc-ids.h | 142 ++++ drivers/interconnect/qcom/sdm845.c | 826 +++++++++++++++++++++ 6 files changed, 1004 insertions(+) create mode 100644 Documentation/devicetree/bindings/interconnect/qcom-sdm845.txt create mode 100644 drivers/interconnect/qcom/qcom-icc-ids.h create mode 100644 drivers/interconnect/qcom/sdm845.c -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project