All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	MyungJoo Ham <myungjoo.ham@samsung.com>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	Chanwoo Choi <cw00.choi@samsung.com>,
	Tomeu Vizoso <tomeu.vizoso@collabora.com>
Cc: linux-tegra@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-pm@vger.kernel.org
Subject: [PATCH v2 00/19] NVIDIA Tegra devfreq improvements and Tegra20/30 support
Date: Mon, 15 Apr 2019 17:54:46 +0300	[thread overview]
Message-ID: <20190415145505.18397-1-digetx@gmail.com> (raw)

Hello,

I tried to utilize the Tegra devfreq driver on Tegra30 and found out that
it doesn't work properly due to improper Hz<->kHz conversions made by the
driver. After fixing that problem and doing some more testing I noticed
that there are things that could be improved and in result here is this
patchset that fixes the problems, makes some improvements and adds support
for NVIDIA Tegra30 SoC's. This series was tested on Tegra30 and Tegra124
machines.

This series also adds support for the Tegra20 SoC's that do not have
the ACTMON hardware unit, but can use Memory Controller counters to make
decision about the required memory frequency. Please note that the patch
that instantiates a platform device for the driver isn't a part of this
series, I'll submit it later on because of interdependency with some other
ongoing patchset.

Please review, thanks.

Changelog:

v2: The patchset was quite heavily reworked since v1, few patches we
    dropped or squashed into the new ones and more patches we added.
    In a result more bugs and potential problems are fixed now, driver's
    code got more clean up.

    The Tegra20 driver-addition patch is now a part of this series, it has
    no changes since v1.

Dmitry Osipenko (19):
  PM / devfreq: tegra: Fix kHz to Hz conversion
  PM / devfreq: tegra: Replace readl-writel with relaxed versions
  PM / devfreq: tegra: Don't ignore clk errors
  PM / devfreq: tegra: Don't set EMC clock rate to maximum on probe
  PM / devfreq: tegra: Replace write memory barrier with the read
    barrier
  PM / devfreq: tegra: Fix missed error checking on devfreq
    initialization failure
  PM / devfreq: tegra: Register clk notifier in the end of driver's
    probe
  PM / devfreq: tegra: Remove OPP entries on driver removal
  PM / devfreq: tegra: Change interrupt request order
  PM / devfreq: tegra: Drop primary interrupt handler
  PM / devfreq: tegra: De-initialize properly on driver's probe error
  PM / devfreq: tegra: Avoid inconsistency of current frequency value
  PM / devfreq: tegra: Mark ACTMON's governor as immutable
  PM / devfreq: tegra: Move governor registration to driver's probe
  PM / devfreq: tegra: Synchronize IRQ after masking it in hardware
  PM / devfreq: tegra: Reconfigure hardware on governor's restart
  PM / devfreq: tegra: Support Tegra30
  PM / devfreq: tegra: Enable COMPILE_TEST for the driver
  PM / devfreq: Introduce driver for NVIDIA Tegra20

 MAINTAINERS                       |   8 +
 drivers/devfreq/Kconfig           |  15 +-
 drivers/devfreq/Makefile          |   1 +
 drivers/devfreq/tegra-devfreq.c   | 296 +++++++++++++-----------------
 drivers/devfreq/tegra20-devfreq.c | 177 ++++++++++++++++++
 5 files changed, 324 insertions(+), 173 deletions(-)
 create mode 100644 drivers/devfreq/tegra20-devfreq.c

-- 
2.21.0

             reply	other threads:[~2019-04-15 14:54 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-15 14:54 Dmitry Osipenko [this message]
2019-04-15 14:54 ` [PATCH v2 01/19] PM / devfreq: tegra: Fix kHz to Hz conversion Dmitry Osipenko
2019-04-16  1:45   ` Chanwoo Choi
2019-04-16 13:24     ` Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 02/19] PM / devfreq: tegra: Replace readl-writel with relaxed versions Dmitry Osipenko
2019-04-17  1:02   ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 03/19] PM / devfreq: tegra: Don't ignore clk errors Dmitry Osipenko
2019-04-16  1:52   ` Chanwoo Choi
2019-04-16 13:42     ` Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 04/19] PM / devfreq: tegra: Don't set EMC clock rate to maximum on probe Dmitry Osipenko
2019-04-16  1:59   ` Chanwoo Choi
2019-04-16 13:44     ` Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 05/19] PM / devfreq: tegra: Replace write memory barrier with the read barrier Dmitry Osipenko
2019-04-16  8:00   ` Chanwoo Choi
2019-04-16 13:57     ` Dmitry Osipenko
2019-04-17  0:55       ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 06/19] PM / devfreq: tegra: Fix missed error checking on devfreq initialization failure Dmitry Osipenko
2019-04-16  2:32   ` Chanwoo Choi
2019-04-16 14:29     ` Dmitry Osipenko
2019-04-17  1:01       ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 07/19] PM / devfreq: tegra: Register clk notifier in the end of driver's probe Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 08/19] PM / devfreq: tegra: Remove OPP entries on driver removal Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 09/19] PM / devfreq: tegra: Change interrupt request order Dmitry Osipenko
2019-04-15 14:54 ` [PATCH v2 10/19] PM / devfreq: tegra: Drop primary interrupt handler Dmitry Osipenko
2019-04-16  5:56   ` Chanwoo Choi
2019-04-16 15:23     ` Dmitry Osipenko
2019-04-17  0:31       ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 11/19] PM / devfreq: tegra: De-initialize properly on driver's probe error Dmitry Osipenko
2019-04-16  6:21   ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 12/19] PM / devfreq: tegra: Avoid inconsistency of current frequency value Dmitry Osipenko
2019-04-16  7:15   ` Chanwoo Choi
2019-04-16 15:40     ` Dmitry Osipenko
2019-04-17  0:35       ` Chanwoo Choi
2019-04-15 14:54 ` [PATCH v2 13/19] PM / devfreq: tegra: Mark ACTMON's governor as immutable Dmitry Osipenko
2019-04-16  7:17   ` Chanwoo Choi
2019-04-15 14:55 ` [PATCH v2 14/19] PM / devfreq: tegra: Move governor registration to driver's probe Dmitry Osipenko
2019-04-16  7:30   ` Chanwoo Choi
2019-04-15 14:55 ` [PATCH v2 15/19] PM / devfreq: tegra: Synchronize IRQ after masking it in hardware Dmitry Osipenko
2019-04-16  7:41   ` Chanwoo Choi
2019-04-16 15:42     ` Dmitry Osipenko
2019-04-15 14:55 ` [PATCH v2 16/19] PM / devfreq: tegra: Reconfigure hardware on governor's restart Dmitry Osipenko
2019-04-15 14:55 ` [PATCH v2 17/19] PM / devfreq: tegra: Support Tegra30 Dmitry Osipenko
2019-04-16  7:48   ` Chanwoo Choi
2019-04-16 15:49     ` Dmitry Osipenko
2019-04-17  0:28       ` Chanwoo Choi
2019-04-15 14:55 ` [PATCH v2 18/19] PM / devfreq: tegra: Enable COMPILE_TEST for the driver Dmitry Osipenko
2019-04-16  7:43   ` Chanwoo Choi
2019-04-16 15:52     ` Dmitry Osipenko
2019-04-17  0:27       ` Chanwoo Choi
2019-04-15 14:55 ` [PATCH v2 19/19] PM / devfreq: Introduce driver for NVIDIA Tegra20 Dmitry Osipenko
2019-04-16  8:31   ` Chanwoo Choi
2019-04-16 16:11     ` Dmitry Osipenko
2019-04-17  0:26       ` Chanwoo Choi
2019-04-17  9:36         ` Dmitry Osipenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190415145505.18397-1-digetx@gmail.com \
    --to=digetx@gmail.com \
    --cc=cw00.choi@samsung.com \
    --cc=jonathanh@nvidia.com \
    --cc=kyungmin.park@samsung.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=myungjoo.ham@samsung.com \
    --cc=thierry.reding@gmail.com \
    --cc=tomeu.vizoso@collabora.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.