public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Kevin Hilman <khilman@linaro.org>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
	Hebbar Gururaja <gururaja.hebbar@ti.com>,
	Grant Likely <grant.likely@linaro.org>,
	Rob Herring <rob.herring@calxeda.com>,
	"davinci-linux-open-source\@linux.davincidsp.com" 
	<davinci-linux-open-source@linux.davincidsp.com>,
	"devicetree-discuss\@lists.ozlabs.org" 
	<devicetree-discuss@lists.ozlabs.org>,
	"linux-arm-kernel\@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	Russell King - ARM Linux <linux@arm.linux.org.uk>,
	"linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Vaibhav Bedia <vaibhav.bedia@ti.com>,
	sudhakar.raj@ti.com
Subject: Re: [PATCH 00/11] drivers: Add Pinctrl PM support
Date: Tue, 04 Jun 2013 11:15:51 -0700	[thread overview]
Message-ID: <87k3m92148.fsf@linaro.org> (raw)
In-Reply-To: <CACRpkdYnhjpFp1CM=P_hddBe4qVigtE0c+CN9NKvk3nFgJS-ig@mail.gmail.com> (Linus Walleij's message of "Tue, 4 Jun 2013 09:25:02 +0200")

Hi Linus,

Linus Walleij <linus.walleij@linaro.org> writes:

> On Fri, May 31, 2013 at 7:04 PM, Dmitry Torokhov
> <dmitry.torokhov@gmail.com> wrote:
>
>> As with the original introduction of pinctrl states my question is: "Can
>> all of this be handled in the driver/bus core instead of adding a lot
>> of boilerplate code to the individual drivers".
>
> It can. Per the suggestion in 2/11:
>
> - Adding pins_sleep and pins_idle to struct dev_pin_info
>   in include/linux/pinctrl/devinfo.h
>
> - Modify drivers/base/pinctrl.c to optionally look up
>   sleep and idle states, you can make that code
>   #ifdef CONFIG_PM I think.
>
> - Add something like static inline functions to
>   include/linux/pinctrl/consumer.h
>   with names like pinctrl_select_pm_idle(struct device *)
>   pinctrl_select_pm_sleep(struct device *) to switch states
>   using the device core containers, and includes
>   checking IS_ERR() on the handles etc.
>
> I think this will save a *lot* of identical code in all the
> drivers, that will just have to call
> pinctrl_select_pm_sleep(), pinctrl_select_pm_default()
> pinctrl_select_pm_idle() instead of all the complex code.
>
> This is what I planned to do but never got around to.

What about taking it one tiny step further, and having it done by the PM
core itself?

Seems like something that should just be done as part of runtime PM
transitions and the suspend/resume process.

Kevin


  reply	other threads:[~2013-06-04 18:15 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-05-31 10:13 [PATCH 00/11] drivers: Add Pinctrl PM support Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 01/11] pinctrl: single: adopt pinctrl sleep mode management Hebbar Gururaja
2013-06-17 11:32   ` Linus Walleij
2013-06-17 12:03     ` Tony Lindgren
2013-06-17 16:08       ` Linus Walleij
2013-06-17 17:27         ` Tony Lindgren
2013-05-31 10:13 ` [PATCH 02/11] leds: leds-gpio: Enhance pinctrl support Hebbar Gururaja
2013-06-04  7:18   ` Linus Walleij
2013-05-31 10:13 ` [PATCH 03/11] Input: gpio_keys: Adopt " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 04/11] Input: matrix-keypad: " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 05/11] spi: omap2-mcspi: enhance " Hebbar Gururaja
2013-06-01 19:27   ` Mark Brown
2013-06-04  9:53     ` Hebbar, Gururaja
2013-05-31 10:13 ` [PATCH 06/11] usb: musb: dsps: Adopt " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 07/11] pwm: pwm-tiehrpwm: enhance " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 08/11] pwm: pwm-tiecap: " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 09/11] mmc: omap_hsmmc: " Hebbar Gururaja
2013-06-04  7:11   ` Linus Walleij
2013-06-04  7:19     ` Linus Walleij
2013-06-04  9:52       ` Hebbar, Gururaja
2013-06-04 14:46   ` Tony Lindgren
2013-06-07 13:36     ` Balaji T K
2013-06-07 21:01       ` Tony Lindgren
2013-05-31 10:13 ` [PATCH 10/11] video: da8xx-fb: adopt " Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 11/11] i2c: omap: enhance " Hebbar Gururaja
2013-05-31 14:55   ` Grygorii Strashko
2013-06-05  9:04     ` Hebbar, Gururaja
2013-05-31 17:34   ` Kevin Hilman
2013-06-04 11:39     ` Grygorii Strashko
2013-06-05  9:05     ` Hebbar, Gururaja
     [not found]   ` <87bo7r10s9.fsf@linaro.org>
2013-06-04  7:23     ` Linus Walleij
2013-06-04  9:50     ` Hebbar, Gururaja
2013-05-31 17:04 ` [PATCH 00/11] drivers: Add Pinctrl PM support Dmitry Torokhov
2013-05-31 18:08   ` Kevin Hilman
2013-06-04  7:25   ` Linus Walleij
2013-06-04 18:15     ` Kevin Hilman [this message]
2013-06-04 18:37       ` Mark Brown
2013-06-05 12:41       ` Linus Walleij

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=87k3m92148.fsf@linaro.org \
    --to=khilman@linaro.org \
    --cc=davinci-linux-open-source@linux.davincidsp.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=grant.likely@linaro.org \
    --cc=gururaja.hebbar@ti.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=rob.herring@calxeda.com \
    --cc=sudhakar.raj@ti.com \
    --cc=vaibhav.bedia@ti.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox