linux-rtc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Boyd <sboyd@kernel.org>
To: Russell King (Oracle) <linux@armlinux.org.uk>,
	<u.kleine-koenig@pengutronix.de>
Cc: alexandre.belloni@bootlin.com,
	Michael Turquette <mturquette@baylibre.com>,
	thierry.reding@gmail.com, lee.jones@linaro.org,
	linux-clk@vger.kernel.org, linux-rtc@vger.kernel.org,
	Ludovic.Desroches@microchip.com, o.rempel@pengutronix.de,
	andy.shevchenko@gmail.com, aardelean@deviqon.com,
	linux-pwm@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>,
	broonie@kernel.org, Jonathan.Cameron@huawei.com,
	linux-arm-kernel@lists.infradead.org, a.zummo@towertech.it,
	linux-kernel@vger.kernel.org, linux-spi@vger.kernel.org,
	wsa@kernel.org, kernel@pengutronix.de, akpm@linux-foundation.org,
	torvalds@linux-foundation.org, Claudiu.Beznea@microchip.com
Subject: Re: About clk maintainership [Was: Re: [PULL] Add variants of devm_clk_get for prepared and enabled clocks enabled clocks]
Date: Tue, 03 Aug 2021 01:11:54 -0700	[thread overview]
Message-ID: <162797831443.714452.3551045763456936564@swboyd.mtv.corp.google.com> (raw)
In-Reply-To: <20210802163824.GK22278@shell.armlinux.org.uk>

Quoting Russell King (Oracle) (2021-08-02 09:38:24)
> On Mon, Aug 02, 2021 at 05:27:55PM +0200, Uwe Kleine-Konig wrote:
> > Hello Russell,
> > 
> > On Mon, Aug 02, 2021 at 10:48:10AM +0100, Russell King (Oracle) wrote:
> 
> > > There have been several different approaches to wrapping things up,
> > > but here's a question: should we make it easier to do the lazy thing
> > > (get+enable) or should we make it easier to be power efficient?
> > > Shouldn't we be encouraging people to write power efficient drivers?
> > 
> > Yeah, sounds compelling, but I wonder if that's of practical importance.
> > How many driver authors do you expect to lure into making a better
> > driver just because devm_clk_get_prepared() doesn't exist? In contrast:
> > How many drivers become simpler with devm_clk_get_prepared() and so
> > it becomes easier to maintain them and easier to spot bugs?
> > In the absence of devm_clk_get_prepared(), is it better that several
> > frameworks (or drivers) open code it?
> 
> It probably depends on where you stand on power management and power
> efficiency issues. Personally, I would like to see more effort put
> into drivers to make them more power efficient, and I believe in the
> coming years, power efficiency is going to become a big issue.
> 

I agree we should put more effort into power efficiency in the kernel.
I've occasionally heard from driver writers that they never will turn
the clk off even in low power modes though. They feel like it's a
nuisance to have to do anything with the clk framework in their driver.
When I say "why not use runtime PM?" I get told that they're not turning
the clk off because it needs to be on all the time, so using runtime PM
makes the driver more complicated, not less, and adds no value. I think
some touchscreens are this way, and watchdogs too. Looking at the
drivers being converted in this series I suspect RTC is one of those
sorts of devices as well. But SPI and I2C most likely could benefit from
using runtime PM and so those ones don't feel appropriate to convert.

Maybe this series would be more compelling if those various drivers that
are hand rolling the devm action were converted to the consolidated
official devm function. The truth is it's already happening in various
subsystems so consolidating that logic into one place would be a win
code size wise and very hard to ignore.

Doing

 $ git grep devm_add_action | grep clk

seems to catch quite a few of them.

  parent reply	other threads:[~2021-08-03  8:11 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-10 17:41 [PATCH v7 0/6] clk: provide new devm helpers for prepared and enabled clocks Uwe Kleine-König
2021-05-10 17:41 ` [PATCH v7 1/6] clk: generalize devm_clk_get() a bit Uwe Kleine-König
2021-05-10 17:41 ` [PATCH v7 2/6] clk: Provide new devm_clk_helpers for prepared and enabled clocks Uwe Kleine-König
2021-05-10 17:41 ` [PATCH v7 4/6] rtc: at91sam9: Simplify using devm_clk_get_enabled() Uwe Kleine-König
2021-05-11  7:58 ` [PATCH v7 0/6] clk: provide new devm helpers for prepared and enabled clocks Alexandru Ardelean
2021-05-24 11:09 ` Uwe Kleine-König
2021-06-09 20:21 ` [PULL] Add variants of devm_clk_get for prepared and enabled clocks " Uwe Kleine-König
2021-06-25 17:14   ` Uwe Kleine-König
2021-07-05  8:01     ` Uwe Kleine-König
2021-07-22  6:06       ` Uwe Kleine-König
2021-07-22  7:40         ` Wolfram Sang
2021-07-22  8:18           ` Uwe Kleine-König
2021-07-22 12:07             ` Wolfram Sang
     [not found]               ` <CAHp75VfC=s12Unw3+Cn0ag71mM5i90=Jbwj4nYwB5cPKiUTRSA@mail.gmail.com>
2021-07-23  9:13                 ` Uwe Kleine-König
2021-07-26  9:18                   ` Claudiu.Beznea
2021-07-26  9:52                     ` Andy Shevchenko
2021-07-26 12:32                       ` Wolfram Sang
2021-07-26 13:28                         ` Andy Shevchenko
2021-07-26 17:40                           ` Wolfram Sang
2021-07-28 20:25                     ` About clk maintainership [Was: Re: [PULL] Add variants of devm_clk_get for prepared and enabled clocks enabled clocks] Uwe Kleine-König
2021-07-28 20:40                       ` Russell King (Oracle)
2021-07-31  7:41                         ` Stephen Boyd
2021-07-31  8:07                           ` Andy Shevchenko
2021-07-31 12:00                           ` Uwe Kleine-König
2021-08-02  9:36                             ` Jonathan Cameron
2021-08-02  9:48                             ` Russell King (Oracle)
2021-08-02 15:27                               ` Uwe Kleine-König
2021-08-02 16:38                                 ` Russell King (Oracle)
2021-08-02 17:13                                   ` Andy Shevchenko
2021-08-02 20:28                                     ` Russell King (Oracle)
2021-08-03  8:11                                   ` Stephen Boyd [this message]
2021-08-03 10:40                                     ` Uwe Kleine-König
2021-08-06  0:26                                       ` Stephen Boyd
2021-09-14 13:22                                         ` Uwe Kleine-König
2021-09-14 13:52                                           ` Mark Brown
2021-08-03  7:44                               ` Stephen Boyd

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=162797831443.714452.3551045763456936564@swboyd.mtv.corp.google.com \
    --to=sboyd@kernel.org \
    --cc=Claudiu.Beznea@microchip.com \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=Ludovic.Desroches@microchip.com \
    --cc=a.zummo@towertech.it \
    --cc=aardelean@deviqon.com \
    --cc=akpm@linux-foundation.org \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=kernel@pengutronix.de \
    --cc=lee.jones@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pwm@vger.kernel.org \
    --cc=linux-rtc@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=linux@armlinux.org.uk \
    --cc=mturquette@baylibre.com \
    --cc=o.rempel@pengutronix.de \
    --cc=thierry.reding@gmail.com \
    --cc=torvalds@linux-foundation.org \
    --cc=u.kleine-koenig@pengutronix.de \
    --cc=wsa@kernel.org \
    /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 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).