Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp1249978imm; Fri, 29 Jun 2018 14:21:45 -0700 (PDT) X-Google-Smtp-Source: ADUXVKJMQPGm8ulIIXAEoIn+/R3E8Rrk0fEeQzMndkzdBdO4CbmV3mq2Y1YkoOtEJztGb1Kv7nGh X-Received: by 2002:a17:902:9a95:: with SMTP id w21-v6mr16531616plp.168.1530307305944; Fri, 29 Jun 2018 14:21:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530307305; cv=none; d=google.com; s=arc-20160816; b=ajsKiFBrgIDyU3fH+og0xSxOAL2Wf0gIZjzfJE2Kg3PIozcj1sqbqHieLzneG/oBRp L/Fjp05bIRXorkCE0W1Vb4iHRcrb0pnStn00tMs8nZqLzNZhms3hdNUi/K9quAfjbhDF G8ZJ7CVVGOBxT51Xz+OP4cZgxG6gZmJo5rDgX+PzlqgL1/xP3WUzW1dUgEXK/ivESdSv ZkDNH+26zviC/ckcG+3aEr6MhZrXZiFAFjvCILQ3GQEMubHJJRXWHXIjzI0687ODkYvm StFEDadAkckFzbr1Ez9spO0LM9A7oqFx5wzoYv1rNSl5pkoJ3nvfNyorQkgoLKeFRGDN YOVg== 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=2RuIzIQ2H3K139ON8noZYdm7IjUxiWYJd4xY2ArraHk=; b=wcmr9FM4pIdYc16Uu07n7ZPo50sTkHdJAyBVrIbSYye2zZClv8YCn74gJO+bNwqp9+ g314xS0JnpHSrDf66jeD+KXeIKY+RWm5En3H4gnBMdE1srQlKLUIl0oVKh0ak7l6P4Zt bHSBl+KhlxXW+Vzd447pNRtSPl5AbVvr54sTVlNSCiu8WwhJk562YGpuOTzytUtzImcY zwPk7gHN/NawZmvLZ4am6kRgt+REZzZ71DSmPrdRrGUbznSrI34U+vSTXmTGDleD3Ql4 l5599+7RLSSAxUqDHBYbpINUnxhh3Lt0Pm6IczMDXNPF5VFxkOyiNBorDeI8aYnXzYap tbCA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=nHpE9GNh; dkim=pass header.i=@codeaurora.org header.s=default header.b=nHpE9GNh; 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 u8-v6si9603436pfm.63.2018.06.29.14.21.31; Fri, 29 Jun 2018 14:21:45 -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=nHpE9GNh; dkim=pass header.i=@codeaurora.org header.s=default header.b=nHpE9GNh; 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 S965937AbeF2VIg (ORCPT + 99 others); Fri, 29 Jun 2018 17:08:36 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:41470 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932577AbeF2VIc (ORCPT ); Fri, 29 Jun 2018 17:08:32 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id ED6D960B16; Fri, 29 Jun 2018 21:08:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1530306511; bh=HthG/rjlrpJtA3SGKlBQ2FMwn2NdDmqr1jklPCKTVvY=; h=From:To:Subject:Date:From; b=nHpE9GNhPPwx2jHAmfWI5Mae+QxhhGvCq+U5WEBZA6udGsFXokBYI6/6SuZ6kq5Al ObzK0DnHDBi8gaGom2xxCd7XeXFmgXu2n2dD4C+abdGPGAk5IAUADuErnflAPwCIxH tl7DAjcAz3Q/1eyCqC/zcWsnFBu5QIgXgAxrrPS8= 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 42B886031A; Fri, 29 Jun 2018 21:08:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1530306511; bh=HthG/rjlrpJtA3SGKlBQ2FMwn2NdDmqr1jklPCKTVvY=; h=From:To:Subject:Date:From; b=nHpE9GNhPPwx2jHAmfWI5Mae+QxhhGvCq+U5WEBZA6udGsFXokBYI6/6SuZ6kq5Al ObzK0DnHDBi8gaGom2xxCd7XeXFmgXu2n2dD4C+abdGPGAk5IAUADuErnflAPwCIxH tl7DAjcAz3Q/1eyCqC/zcWsnFBu5QIgXgAxrrPS8= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 42B886031A 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 Subject: [RFC PATCH v1 0/2] Add QCOM SDM845 interconnect provider driver Date: Fri, 29 Jun 2018 14:08:16 -0700 Message-Id: <1530306498-5181-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] which are under review. Changes since v0 [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/5/9/729 [3]: https://lkml.org/lkml/2018/3/14/787 [4]: https://patchwork.kernel.org/patch/10428167/ 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