linux-clk.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/11] NVIDIA Tegra20 CPUFreq driver major update
@ 2019-11-18 16:45 Dmitry Osipenko
  2019-11-18 16:45 ` [PATCH v5 01/11] clk: tegra: Add custom CCLK implementation Dmitry Osipenko
                   ` (10 more replies)
  0 siblings, 11 replies; 17+ messages in thread
From: Dmitry Osipenko @ 2019-11-18 16:45 UTC (permalink / raw)
  To: Thierry Reding, Jonathan Hunter, Peter De Schrijver,
	Prashant Gaikwad, Rafael J. Wysocki, Viresh Kumar,
	Michael Turquette, Stephen Boyd, Peter Geis, Nicolas Chauvet,
	Marcel Ziswiler
  Cc: linux-pm, linux-tegra, linux-clk, linux-kernel

Hello,

This series moves intermediate-clk handling from tegra20-cpufreq into
tegra-clk driver. This allows us to switch to generic cpufreq-dt driver
which brings voltage scaling, per-hardware OPPs and Tegra30 support out
of the box. All boards need to adopt CPU OPPs in their device-trees in
order to get cpufreq support.

Changelog:

v5: - The "Use generic cpufreq-dt driver (Tegra30 supported now)" patch
      is separated now into two patches by factoring out the blacklisting
      of cpufreq-dt-platdev into a standalone patch. This is done in a
      response to request from Jon Hunter to fix the warning splats during
      boot that are coming from OPP core because OPPs are unavailable. The
      OPPs will become available once tegra20-cpufreq driver will be updated
      to support the cpufreq-dt.

v4: - Updated CCLK diagram in the "Add custom CCLK implementation" patch.

    - <linux/cpu.h> is now included in the "Use generic cpufreq-dt driver"
      patch, for consistency.

    - Returned value of get_cpu_device() is now checked in the "Use generic
      cpufreq-dt driver" patch, for consistency as well.

v3: - The "Add custom CCLK implementation" patch was updated in accordance
      to the comments from Peter De Schrijver. We will not use the clock
      skipper.

    - Re added OPPs for T30 Beaver board because Thierry has that board ;)

    - Added r-b for the "DT binding" patch from Rob Herring.

v2: - Kept modularity of the tegra20-cpufreq as was requested by Viresh Kumar
      in a review comment to v1.

    - Added acks from Viresh Kumar.

    - Added tested-by from Nicolas Chauvet to the "trimslice" patch.
      Nicolas told me on IRC that it works fine.

    - Fixed compilation of the "Add custom CCLK implementation" patch. The
      error happened because v1 was based on top of yet unreviewed/unapplied
      patch "clk: tegra: divider: Support enable-bit for Super clocks".
      Thanks to Peter Geis for reporting the problem.

    - Replaced Tegra30 "beaver" board with "cardhu-a04" because turned out
      that's what NVIDIA uses in the testing farm.

Dmitry Osipenko (11):
  clk: tegra: Add custom CCLK implementation
  clk: tegra: pll: Add pre/post rate-change hooks
  clk: tegra: cclk: Add helpers for handling PLLX rate changes
  clk: tegra20: Use custom CCLK implementation
  clk: tegra30: Use custom CCLK implementation
  dt-bindings: cpufreq: Add binding for NVIDIA Tegra20/30
  cpufreq: dt-platdev: Blacklist NVIDIA Tegra20 and Tegra30 SoCs
  cpufreq: tegra20: Use generic cpufreq-dt driver (Tegra30 supported
    now)
  ARM: tegra: Create tegra20-cpufreq platform device on Tegra30
  ARM: dts: tegra30: beaver: Set up voltage regulators for DVFS
  ARM: dts: tegra30: beaver: Add CPU Operating Performance Points

 .../cpufreq/nvidia,tegra20-cpufreq.txt        |  56 +++++
 arch/arm/boot/dts/tegra30-beaver.dts          |  40 +++-
 arch/arm/mach-tegra/tegra.c                   |   4 +
 drivers/clk/tegra/Makefile                    |   1 +
 drivers/clk/tegra/clk-pll.c                   |  12 +-
 drivers/clk/tegra/clk-tegra-super-cclk.c      | 212 +++++++++++++++++
 drivers/clk/tegra/clk-tegra20.c               |   7 +-
 drivers/clk/tegra/clk-tegra30.c               |   6 +-
 drivers/clk/tegra/clk.h                       |  19 +-
 drivers/cpufreq/Kconfig.arm                   |   6 +-
 drivers/cpufreq/cpufreq-dt-platdev.c          |   2 +
 drivers/cpufreq/tegra20-cpufreq.c             | 217 +++++-------------
 12 files changed, 408 insertions(+), 174 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/cpufreq/nvidia,tegra20-cpufreq.txt
 create mode 100644 drivers/clk/tegra/clk-tegra-super-cclk.c

-- 
2.23.0


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2019-12-16 14:11 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-18 16:45 [PATCH v5 00/11] NVIDIA Tegra20 CPUFreq driver major update Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 01/11] clk: tegra: Add custom CCLK implementation Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 02/11] clk: tegra: pll: Add pre/post rate-change hooks Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 03/11] clk: tegra: cclk: Add helpers for handling PLLX rate changes Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 04/11] clk: tegra20: Use custom CCLK implementation Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 05/11] clk: tegra30: " Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 06/11] dt-bindings: cpufreq: Add binding for NVIDIA Tegra20/30 Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 07/11] cpufreq: dt-platdev: Blacklist NVIDIA Tegra20 and Tegra30 SoCs Dmitry Osipenko
2019-11-18 16:51   ` Dmitry Osipenko
2019-12-13 13:27     ` Dmitry Osipenko
2019-12-16  4:05   ` Viresh Kumar
2019-12-16  4:08     ` Viresh Kumar
2019-12-16 14:11       ` Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 08/11] cpufreq: tegra20: Use generic cpufreq-dt driver (Tegra30 supported now) Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 09/11] ARM: tegra: Create tegra20-cpufreq platform device on Tegra30 Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 10/11] ARM: dts: tegra30: beaver: Set up voltage regulators for DVFS Dmitry Osipenko
2019-11-18 16:45 ` [PATCH v5 11/11] ARM: dts: tegra30: beaver: Add CPU Operating Performance Points Dmitry Osipenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).