Received: by 10.192.165.148 with SMTP id m20csp1745224imm; Thu, 3 May 2018 04:53:48 -0700 (PDT) X-Google-Smtp-Source: AB8JxZrzGqLRyIAgJl7jiWve53PhFRShzyRVMNrlmVNBe0vh7wEfNOwLW94oS8yivSdV5M5kS3Tx X-Received: by 2002:a17:902:d20a:: with SMTP id t10-v6mr23531160ply.364.1525348428045; Thu, 03 May 2018 04:53:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525348428; cv=none; d=google.com; s=arc-20160816; b=rPpqigmaDPNP2WVOd9sk5yqT6lGou3hlLAZz9Zug6WzR5p2CgVLnlJjE+Wa74hwwWf ZBxdcYgScXHuaqOWYsq05M8ccOf7iCs7OOD+NyVfv2bSSUKx1mfbY/0jswshxvS0ak/R X+8qyIGEr68mA/swnm2mKH++VSOpiomiabwIZZZGLPEOOTCU3B1s+Eno8jIwPkniYNTd +Ja1qzEQsB+5u/xTUtJEL4S09uip7k8wWWT3Ar0KyLE3Eo9+kjiS6+lVfx5776OIQIsR D8UbJfO73YvWZg4ZC8Fwp/9FgfTiEfINNo8ItycOoCAhowb1DCNp0AJzAaLnI8JeAA7/ 8TDQ== 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:cc:to:from :dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=/Kx1CnCHWANYr4NG6nUl1WDTXf2HaMhTpjeo4ArcSR8=; b=EEgklxL6zcBOcxbTiY9he0moHQDZHRLJiay6xts0M9jF/uUZOq54N7354qNjqGOok4 /6fOOGTToN5G8cieDZXvKULW8OLkDcOqef/yWnFL6fikVihCI2pl3N/c+C+eNcsHcAUS 0ldzYI2HF86j1ZzkHIO2psXTEtAkpxAzqzRTKXA5G8jnxg0nhiBqlzeNG11KV/78FGcN wD5Ie/NZ8nLGm4jnfShWGDdGE/yidt1MzbL5PMx2pzPsqO0Su6iCO4f0+wpupaA1BK6u ZKSMmcjKDMxzuM0uVE6q9yQEm80zg/mnGwfDQFajkEu65OmMO7KeMkL8at50q/paLXd3 9PJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=lGABtFB3; dkim=pass header.i=@codeaurora.org header.s=default header.b=SC7KHm9X; 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 d190si13727339pfg.142.2018.05.03.04.53.32; Thu, 03 May 2018 04:53:47 -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=lGABtFB3; dkim=pass header.i=@codeaurora.org header.s=default header.b=SC7KHm9X; 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 S1751590AbeECLwu (ORCPT + 99 others); Thu, 3 May 2018 07:52:50 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:60080 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751132AbeECLwo (ORCPT ); Thu, 3 May 2018 07:52:44 -0400 Received: by smtp.codeaurora.org (Postfix, from userid 1000) id 85018607E4; Thu, 3 May 2018 11:52:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1525348363; bh=JzoRBWSY5KKs4Wjb/6rMDnk+UpS0QsByQebB6C5i5ug=; h=From:To:Cc:Subject:Date:From; b=lGABtFB3vzTM9oicwyca/xXGkwmQ+9eG0AIlVRg5HyZo6364BiAT9hw+UBHwK9ac+ w/+KHrJA6xIv3aPu4czNJrtX+KnzBiR6+48gmXn1K9Z1ZiF96lHuQj92rSFIss/xhM 7rYU3xMe1KD2OrXWwAPz9r/UnJk4+jTgSs2k+66U= 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 lx-ilial.mea.qualcomm.com (unknown [185.23.60.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: ilialin@smtp.codeaurora.org) by smtp.codeaurora.org (Postfix) with ESMTPSA id 646F56028D; Thu, 3 May 2018 11:52:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1525348362; bh=JzoRBWSY5KKs4Wjb/6rMDnk+UpS0QsByQebB6C5i5ug=; h=From:To:Cc:Subject:Date:From; b=SC7KHm9X+rMx4nR12dNqlYACNKkwU/GFqlR3V8uHlvTsuvm0mp7NLKSeAu9hGJcFX FRlASAmaQvjhh7ta+rNzkbEN9WwA5oqUzf4i5W10q9lxMbseAL/w0X7EyrN71xqj4M J2Y9MDWlm4M9lxRtbMiZIHiVm8ChCU3IBLaexLMM= DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org 646F56028D 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=ilialin@codeaurora.org From: Ilia Lin To: mturquette@baylibre.com, sboyd@kernel.org, robh@kernel.org, mark.rutland@arm.com, rjw@rjwysocki.net, viresh.kumar@linaro.org, lgirdwood@gmail.com, broonie@kernel.org, andy.gross@linaro.org, david.brown@linaro.org, catalin.marinas@arm.com, will.deacon@arm.com, linux-clk@vger.kernel.org Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, rnayak@codeaurora.org, ilialin@codeaurora.org, amit.kucheria@linaro.org, nicolas.dechesne@linaro.org, celster@codeaurora.org, tfinkel@codeaurora.org Subject: [PATCH v5 00/14] CPU scaling support for msm8996 Date: Thu, 3 May 2018 14:52:21 +0300 Message-Id: <1525348355-25471-1-git-send-email-ilialin@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 [v5] * Rebased * Adressed comments from Bjorn * Adressed comments from Viresh * Adressed comments from Sricharan * Adressed comments from Nicolas * Adressed comments from Rob * Adressed comments from Mark [v4] * Adressed comments from Stephen * Added CPU regulator support * Added qcom-cpufreq-kryo driver [v3] * Rebased on top of the latest PLL driver changes * Addressed comment from Rob Herring for bindings [v2] * Addressed comments from Rob Herring for bindings * Addressed comments from Mark Rutland for memory barrier * Addressed comments from Julien Thierry for clock reenabling condition * Tuned the HW configuration for clock frequencies below 600MHz Clocks: This series adds support for the CPU clocks on msm8996 devices. The driver uses the existing PLL drivers and is required to control the CPU frequency scaling on the MSM8996. Regulators: Added SAW regulator support to the SPMI regulator driver. The SAW regulators will be controlled through special CPU registers instead of direct SPMI accesses. Cpufreq: The qcom-cpufreq-kryo driver is aimed to support different SOC versions. The driver reads eFuse information and chooses the required OPP subset by passing the OPP supported-hw parameter. A previous post of RFC can be found here: https://patchwork.kernel.org/patch/10316261/ Ilia Lin (11): soc: qcom: Separate kryo l2 accessors from PMU driver clk: qcom: Add CPU clock driver for msm8996 clk: qcom: Add DT bindings for CPU clock driver for msm8996 clk: qcom: Add ACD path to CPU clock driver for msm8996 dt: qcom: Add opp and thermal to the msm8996 regulator: qcom_spmi: Add support for SAW dt-bindings: qcom_spmi: Add support for SAW documentation dt: qcom: Add SAW regulator for 8x96 CPUs cpufreq: Add Kryo CPU scaling driver dt-bindings: cpufreq: Document operating-points-v2-kryo-cpu dt: qcom: Add qcom-cpufreq-kryo driver configuration Rajendra Nayak (3): clk: qcom: Make clk_alpha_pll_configure available to modules clk: qcom: cpu-8996: Add support to switch to alternate PLL clk: qcom: cpu-8996: Add support to switch below 600Mhz .../devicetree/bindings/clock/qcom,kryocc.txt | 17 + .../devicetree/bindings/opp/kryo-cpufreq.txt | 693 +++++++++++++++++++++ .../bindings/regulator/qcom,spmi-regulator.txt | 45 ++ arch/arm64/boot/dts/qcom/apq8096-db820c.dts | 2 +- arch/arm64/boot/dts/qcom/msm8996.dtsi | 650 ++++++++++++++++++- drivers/clk/clk-fixed-factor.c | 2 +- drivers/clk/qcom/Kconfig | 9 + drivers/clk/qcom/Makefile | 1 + drivers/clk/qcom/clk-alpha-pll.c | 1 + drivers/clk/qcom/clk-alpha-pll.h | 6 + drivers/clk/qcom/clk-cpu-8996.c | 519 +++++++++++++++ drivers/cpufreq/Kconfig.arm | 11 + drivers/cpufreq/Makefile | 1 + drivers/cpufreq/cpufreq-dt-platdev.c | 3 + drivers/cpufreq/qcom-cpufreq-kryo.c | 153 +++++ drivers/perf/Kconfig | 1 + drivers/perf/qcom_l2_pmu.c | 90 +-- drivers/regulator/qcom_spmi-regulator.c | 133 +++- drivers/soc/qcom/Kconfig | 3 + drivers/soc/qcom/Makefile | 1 + drivers/soc/qcom/kryo-l2-accessors.c | 65 ++ include/soc/qcom/kryo-l2-accessors.h | 21 + 22 files changed, 2347 insertions(+), 80 deletions(-) create mode 100644 Documentation/devicetree/bindings/clock/qcom,kryocc.txt create mode 100644 Documentation/devicetree/bindings/opp/kryo-cpufreq.txt create mode 100644 drivers/clk/qcom/clk-cpu-8996.c create mode 100644 drivers/cpufreq/qcom-cpufreq-kryo.c create mode 100644 drivers/soc/qcom/kryo-l2-accessors.c create mode 100644 include/soc/qcom/kryo-l2-accessors.h -- 1.9.1