All of lore.kernel.org
 help / color / mirror / Atom feed
From: khilman@linaro.org (Kevin Hilman)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 00/11] drivers: Add Pinctrl PM support
Date: Fri, 31 May 2013 11:08:06 -0700	[thread overview]
Message-ID: <8761xz10qh.fsf@linaro.org> (raw)
In-Reply-To: <20130531170437.GA17591@core.coreip.homeip.net> (Dmitry Torokhov's message of "Fri, 31 May 2013 10:04:37 -0700")

+ Linus W. (pinctrl maintainer)

Dmitry Torokhov <dmitry.torokhov@gmail.com> writes:

> Hi Hebbar,
>
> On Fri, May 31, 2013 at 03:43:00PM +0530, Hebbar Gururaja wrote:
>> By optionally putting the pins into sleep state in the suspend [or in
>> runtime_suspend] callback we can accomplish two things.
>> - One is to minimize current leakage from pins and thus save power,
>> - second, we can prevent the IP from driving pins output in an
>> uncontrolled manner, which may happen if the power domain drops the
>> domain regulator.
>> 
>> These states can be specified in the DT blob and corresponding driver
>> can pick these states during probe & set the related values during
>> idle/suspend.
>> 
>> Not all drivers support/has idle state. Drivers like i2c, spi, mmc has
>> idle states and hence these drivers are updated to support all the
>> three states
>> - default  : during regular operation
>> - idle : when the module is in idle state
>> - sleep : when the module is in suspend state
>> 
>> For those drivers which doesn't support/have idle state (at least at
>> the moment), only default & sleep state is added.
>
> 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".

Yes, I had the same thought.

What's being handled here are either events related to runtime PM
(runtime suspend, runtime resume) or system PM (suspend/resume) so seems
appropriat to handle them in the PM core.

Kevin

WARNING: multiple messages have this Message-ID (diff)
From: Kevin Hilman <khilman@linaro.org>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Hebbar Gururaja <gururaja.hebbar@ti.com>,
	grant.likely@linaro.org, linus.walleij@linaro.org,
	rob.herring@calxeda.com,
	davinci-linux-open-source@linux.davincidsp.com,
	devicetree-discuss@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org, linux@arm.linux.org.uk,
	linux-kernel@vger.kernel.org, vaibhav.bedia@ti.com,
	sudhakar.raj@ti.comLinus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH 00/11] drivers: Add Pinctrl PM support
Date: Fri, 31 May 2013 11:08:06 -0700	[thread overview]
Message-ID: <8761xz10qh.fsf@linaro.org> (raw)
In-Reply-To: <20130531170437.GA17591@core.coreip.homeip.net> (Dmitry Torokhov's message of "Fri, 31 May 2013 10:04:37 -0700")

+ Linus W. (pinctrl maintainer)

Dmitry Torokhov <dmitry.torokhov@gmail.com> writes:

> Hi Hebbar,
>
> On Fri, May 31, 2013 at 03:43:00PM +0530, Hebbar Gururaja wrote:
>> By optionally putting the pins into sleep state in the suspend [or in
>> runtime_suspend] callback we can accomplish two things.
>> - One is to minimize current leakage from pins and thus save power,
>> - second, we can prevent the IP from driving pins output in an
>> uncontrolled manner, which may happen if the power domain drops the
>> domain regulator.
>> 
>> These states can be specified in the DT blob and corresponding driver
>> can pick these states during probe & set the related values during
>> idle/suspend.
>> 
>> Not all drivers support/has idle state. Drivers like i2c, spi, mmc has
>> idle states and hence these drivers are updated to support all the
>> three states
>> - default  : during regular operation
>> - idle : when the module is in idle state
>> - sleep : when the module is in suspend state
>> 
>> For those drivers which doesn't support/have idle state (at least at
>> the moment), only default & sleep state is added.
>
> 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".

Yes, I had the same thought.

What's being handled here are either events related to runtime PM
(runtime suspend, runtime resume) or system PM (suspend/resume) so seems
appropriat to handle them in the PM core.

Kevin

WARNING: multiple messages have this Message-ID (diff)
From: Kevin Hilman <khilman@linaro.org>
To: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: Hebbar Gururaja <gururaja.hebbar@ti.com>,
	grant.likely@linaro.org, linus.walleij@linaro.org,
	rob.herring@calxeda.com,
	davinci-linux-open-source@linux.davincidsp.com,
	devicetree-discuss@lists.ozlabs.org,
	linux-arm-kernel@lists.infradead.org, linux@arm.linux.org.uk,
	linux-kernel@vger.kernel.org, vaibhav.bedia@ti.com,
	sudhakar.raj@ti.com, Linus Walleij <linus.walleij@linaro.org>
Subject: Re: [PATCH 00/11] drivers: Add Pinctrl PM support
Date: Fri, 31 May 2013 11:08:06 -0700	[thread overview]
Message-ID: <8761xz10qh.fsf@linaro.org> (raw)
In-Reply-To: <20130531170437.GA17591@core.coreip.homeip.net> (Dmitry Torokhov's message of "Fri, 31 May 2013 10:04:37 -0700")

+ Linus W. (pinctrl maintainer)

Dmitry Torokhov <dmitry.torokhov@gmail.com> writes:

> Hi Hebbar,
>
> On Fri, May 31, 2013 at 03:43:00PM +0530, Hebbar Gururaja wrote:
>> By optionally putting the pins into sleep state in the suspend [or in
>> runtime_suspend] callback we can accomplish two things.
>> - One is to minimize current leakage from pins and thus save power,
>> - second, we can prevent the IP from driving pins output in an
>> uncontrolled manner, which may happen if the power domain drops the
>> domain regulator.
>> 
>> These states can be specified in the DT blob and corresponding driver
>> can pick these states during probe & set the related values during
>> idle/suspend.
>> 
>> Not all drivers support/has idle state. Drivers like i2c, spi, mmc has
>> idle states and hence these drivers are updated to support all the
>> three states
>> - default  : during regular operation
>> - idle : when the module is in idle state
>> - sleep : when the module is in suspend state
>> 
>> For those drivers which doesn't support/have idle state (at least at
>> the moment), only default & sleep state is added.
>
> 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".

Yes, I had the same thought.

What's being handled here are either events related to runtime PM
(runtime suspend, runtime resume) or system PM (suspend/resume) so seems
appropriat to handle them in the PM core.

Kevin

  reply	other threads:[~2013-05-31 18:08 UTC|newest]

Thread overview: 109+ 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 ` Hebbar Gururaja
2013-05-31 10:13 ` Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 01/11] pinctrl: single: adopt pinctrl sleep mode management Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-06-17 11:32   ` Linus Walleij
2013-06-17 11:32     ` Linus Walleij
2013-06-17 12:03     ` Tony Lindgren
2013-06-17 12:03       ` Tony Lindgren
2013-06-17 16:08       ` Linus Walleij
2013-06-17 16:08         ` Linus Walleij
2013-06-17 17:27         ` Tony Lindgren
2013-06-17 17:27           ` Tony Lindgren
2013-06-17 17:27           ` Tony Lindgren
2013-05-31 10:13 ` [PATCH 02/11] leds: leds-gpio: Enhance pinctrl support Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-06-04  7:18   ` Linus Walleij
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   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 04/11] Input: matrix-keypad: " Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 06/11] usb: musb: dsps: " Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 07/11] pwm: pwm-tiehrpwm: enhance " Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13 ` [PATCH 08/11] pwm: pwm-tiecap: " Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
     [not found] ` <1369995191-20855-1-git-send-email-gururaja.hebbar-l0cyMroinI0@public.gmane.org>
2013-05-31 10:13   ` [PATCH 05/11] spi: omap2-mcspi: " Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
     [not found]     ` <1369995191-20855-6-git-send-email-gururaja.hebbar-l0cyMroinI0@public.gmane.org>
2013-06-01 19:27       ` Mark Brown
2013-06-01 19:27         ` Mark Brown
2013-06-01 19:27         ` Mark Brown
     [not found]         ` <20130601192726.GS16790-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-06-04  9:53           ` Hebbar, Gururaja
2013-06-04  9:53             ` Hebbar, Gururaja
2013-06-04  9:53             ` Hebbar, Gururaja
2013-05-31 10:13   ` [PATCH 09/11] mmc: omap_hsmmc: " Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-06-04  7:11     ` Linus Walleij
2013-06-04  7:11       ` Linus Walleij
2013-06-04  7:19       ` Linus Walleij
2013-06-04  7:19         ` Linus Walleij
     [not found]         ` <CACRpkdYeh6UXnbUXiiZLPP+FUz11HKaD-FrHHaqUGX8AmA_p6g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-06-04  9:52           ` Hebbar, Gururaja
2013-06-04  9:52             ` Hebbar, Gururaja
2013-06-04  9:52             ` Hebbar, Gururaja
     [not found]     ` <1369995191-20855-10-git-send-email-gururaja.hebbar-l0cyMroinI0@public.gmane.org>
2013-06-04 14:46       ` Tony Lindgren
2013-06-04 14:46         ` Tony Lindgren
2013-06-04 14:46         ` Tony Lindgren
2013-06-07 13:36         ` Balaji T K
2013-06-07 13:36           ` Balaji T K
2013-06-07 13:36           ` Balaji T K
2013-06-07 21:01           ` Tony Lindgren
2013-06-07 21:01             ` Tony Lindgren
2013-05-31 10:13   ` [PATCH 11/11] i2c: omap: " Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-05-31 10:13     ` Hebbar Gururaja
2013-05-31 17:34     ` Kevin Hilman
2013-05-31 17:34       ` Kevin Hilman
2013-05-31 17:34       ` Kevin Hilman
     [not found]       ` <87k3mf2gu4.fsf-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-06-04 11:39         ` Grygorii Strashko
2013-06-04 11:39           ` Grygorii Strashko
2013-06-04 11:39           ` Grygorii Strashko
2013-06-05  9:05         ` Hebbar, Gururaja
2013-06-05  9:05           ` Hebbar, Gururaja
2013-06-05  9:05           ` Hebbar, Gururaja
     [not found]     ` <1369995191-20855-12-git-send-email-gururaja.hebbar-l0cyMroinI0@public.gmane.org>
2013-05-31 14:55       ` Grygorii Strashko
2013-05-31 14:55         ` Grygorii Strashko
2013-05-31 14:55         ` Grygorii Strashko
     [not found]         ` <51A8B9EA.6030604-l0cyMroinI0@public.gmane.org>
2013-06-05  9:04           ` Hebbar, Gururaja
2013-06-05  9:04             ` Hebbar, Gururaja
2013-06-05  9:04             ` Hebbar, Gururaja
2013-05-31 18:07       ` Kevin Hilman
2013-05-31 18:07         ` Kevin Hilman
2013-06-04  7:23         ` Linus Walleij
2013-06-04  7:23           ` Linus Walleij
     [not found]         ` <87bo7r10s9.fsf-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2013-06-04  9:50           ` Hebbar, Gururaja
2013-06-04  9:50             ` Hebbar, Gururaja
2013-06-04  9:50             ` Hebbar, Gururaja
2013-05-31 10:13 ` [PATCH 10/11] video: da8xx-fb: adopt " Hebbar Gururaja
2013-05-31 10:25   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 10:13   ` Hebbar Gururaja
2013-05-31 17:04 ` [PATCH 00/11] drivers: Add Pinctrl PM support Dmitry Torokhov
2013-05-31 17:04   ` Dmitry Torokhov
2013-05-31 17:04   ` Dmitry Torokhov
2013-05-31 18:08   ` Kevin Hilman [this message]
2013-05-31 18:08     ` Kevin Hilman
2013-05-31 18:08     ` Kevin Hilman
2013-06-04  7:25   ` Linus Walleij
2013-06-04  7:25     ` Linus Walleij
2013-06-04  7:25     ` Linus Walleij
2013-06-04 18:15     ` Kevin Hilman
2013-06-04 18:15       ` Kevin Hilman
2013-06-04 18:15       ` Kevin Hilman
2013-06-04 18:37       ` Mark Brown
2013-06-04 18:37         ` Mark Brown
2013-06-04 18:37         ` Mark Brown
2013-06-05 12:41       ` Linus Walleij
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=8761xz10qh.fsf@linaro.org \
    --to=khilman@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.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 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.