All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Linux PM list <linux-pm@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Linux-sh list <linux-sh@vger.kernel.org>,
	Magnus Damm <magnus.damm@gmail.com>,
	Kevin Hilman <khilman@ti.com>,
	jean.pihet@newoldbits.com
Subject: Re: [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup()
Date: Tue, 08 Nov 2011 20:40:00 +0000	[thread overview]
Message-ID: <201111082140.00876.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.64.1111081054070.10851@axis700.grange>

On Tuesday, November 08, 2011, Guennadi Liakhovetski wrote:
> On Mon, 7 Nov 2011, Rafael J. Wysocki wrote:
> 
> > From: Rafael J. Wysocki <rjw@sisk.pl>
> > 
> > The current generic PM domains code requires that the same
> > .active_wakeup() device callback routine be used for all devices in
> > the given domain, which is inflexible and may not cover some specific
> > use cases.  For this reason, make it possible to use device specific
> > .active_wakeup() callback routines by adding a corresponding callback
> > pointer to struct generic_pm_domain_data.  To reduce code duplication
> > use struct gpd_dev_ops to represent PM domain device callbacks as
> > well as device-specific ones and add a macro for defining routines
> > that will execute those callbacks.
> > 
> > Modify the shmobile's power domains code to allow drivers to use
> > their own .active_wakeup() callback routines.
> > 
> > Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
> > ---
> >  arch/arm/mach-shmobile/pm-sh7372.c |   11 ++++---
> >  drivers/base/power/domain.c        |   54 ++++++++++++++++++-------------------
> >  include/linux/pm_domain.h          |   15 ++++------
> >  3 files changed, 41 insertions(+), 39 deletions(-)
> > 
> > Index: linux/include/linux/pm_domain.h
> > =================================> > --- linux.orig/include/linux/pm_domain.h
> > +++ linux/include/linux/pm_domain.h
> > @@ -23,6 +23,12 @@ struct dev_power_governor {
> >  	bool (*power_down_ok)(struct dev_pm_domain *domain);
> >  };
> >  
> > +struct gpd_dev_ops {
> > +	int (*start)(struct device *dev);
> > +	int (*stop)(struct device *dev);
> > +	bool (*active_wakeup)(struct device *dev);
> > +};
> > +
> >  struct generic_pm_domain {
> >  	struct dev_pm_domain domain;	/* PM domain operations */
> >  	struct list_head gpd_list_node;	/* Node in the global PM domains list */
> > @@ -45,9 +51,7 @@ struct generic_pm_domain {
> >  	bool dev_irq_safe;	/* Device callbacks are IRQ-safe */
> >  	int (*power_off)(struct generic_pm_domain *domain);
> >  	int (*power_on)(struct generic_pm_domain *domain);
> > -	int (*start_device)(struct device *dev);
> > -	int (*stop_device)(struct device *dev);
> > -	bool (*active_wakeup)(struct device *dev);
> > +	struct gpd_dev_ops dev_ops;
> 
> Wouldn't it be better to merge patches 1 and 2?

First, why would it?

Second, why does it matter?

Rafael

WARNING: multiple messages have this Message-ID (diff)
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: Linux PM list <linux-pm@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	"Linux-sh list" <linux-sh@vger.kernel.org>,
	Magnus Damm <magnus.damm@gmail.com>,
	Kevin Hilman <khilman@ti.com>,
	jean.pihet@newoldbits.com
Subject: Re: [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup()
Date: Tue, 8 Nov 2011 21:40:00 +0100	[thread overview]
Message-ID: <201111082140.00876.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.64.1111081054070.10851@axis700.grange>

On Tuesday, November 08, 2011, Guennadi Liakhovetski wrote:
> On Mon, 7 Nov 2011, Rafael J. Wysocki wrote:
> 
> > From: Rafael J. Wysocki <rjw@sisk.pl>
> > 
> > The current generic PM domains code requires that the same
> > .active_wakeup() device callback routine be used for all devices in
> > the given domain, which is inflexible and may not cover some specific
> > use cases.  For this reason, make it possible to use device specific
> > .active_wakeup() callback routines by adding a corresponding callback
> > pointer to struct generic_pm_domain_data.  To reduce code duplication
> > use struct gpd_dev_ops to represent PM domain device callbacks as
> > well as device-specific ones and add a macro for defining routines
> > that will execute those callbacks.
> > 
> > Modify the shmobile's power domains code to allow drivers to use
> > their own .active_wakeup() callback routines.
> > 
> > Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
> > ---
> >  arch/arm/mach-shmobile/pm-sh7372.c |   11 ++++---
> >  drivers/base/power/domain.c        |   54 ++++++++++++++++++-------------------
> >  include/linux/pm_domain.h          |   15 ++++------
> >  3 files changed, 41 insertions(+), 39 deletions(-)
> > 
> > Index: linux/include/linux/pm_domain.h
> > ===================================================================
> > --- linux.orig/include/linux/pm_domain.h
> > +++ linux/include/linux/pm_domain.h
> > @@ -23,6 +23,12 @@ struct dev_power_governor {
> >  	bool (*power_down_ok)(struct dev_pm_domain *domain);
> >  };
> >  
> > +struct gpd_dev_ops {
> > +	int (*start)(struct device *dev);
> > +	int (*stop)(struct device *dev);
> > +	bool (*active_wakeup)(struct device *dev);
> > +};
> > +
> >  struct generic_pm_domain {
> >  	struct dev_pm_domain domain;	/* PM domain operations */
> >  	struct list_head gpd_list_node;	/* Node in the global PM domains list */
> > @@ -45,9 +51,7 @@ struct generic_pm_domain {
> >  	bool dev_irq_safe;	/* Device callbacks are IRQ-safe */
> >  	int (*power_off)(struct generic_pm_domain *domain);
> >  	int (*power_on)(struct generic_pm_domain *domain);
> > -	int (*start_device)(struct device *dev);
> > -	int (*stop_device)(struct device *dev);
> > -	bool (*active_wakeup)(struct device *dev);
> > +	struct gpd_dev_ops dev_ops;
> 
> Wouldn't it be better to merge patches 1 and 2?

First, why would it?

Second, why does it matter?

Rafael

  reply	other threads:[~2011-11-08 20:40 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-07  0:01 [PATCH 0/7] PM / Domains: Per-device callbacks and PM QoS Rafael J. Wysocki
2011-11-07  0:01 ` Rafael J. Wysocki
2011-11-07  0:06 ` [PATCH 1/7] PM / Domains: Make it possible to use per-device start/stop routines Rafael J. Wysocki
2011-11-07  0:06   ` Rafael J. Wysocki
2011-11-08  9:30   ` [PATCH 1/7] PM / Domains: Make it possible to use per-device Guennadi Liakhovetski
2011-11-08  9:30     ` [PATCH 1/7] PM / Domains: Make it possible to use per-device start/stop routines Guennadi Liakhovetski
2011-11-08 20:38     ` Rafael J. Wysocki
2011-11-08 20:38       ` Rafael J. Wysocki
2011-11-07  0:06 ` [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup() Rafael J. Wysocki
2011-11-07  0:06   ` Rafael J. Wysocki
2011-11-08 10:27   ` [PATCH 2/7] PM / Domains: Make it possible to use per-device Guennadi Liakhovetski
2011-11-08 10:27     ` [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup() Guennadi Liakhovetski
2011-11-08 20:40     ` Rafael J. Wysocki [this message]
2011-11-08 20:40       ` Rafael J. Wysocki
2011-11-09  8:52       ` [PATCH 2/7] PM / Domains: Make it possible to use per-device Guennadi Liakhovetski
2011-11-09  8:52         ` [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup() Guennadi Liakhovetski
2011-11-09 22:40         ` Rafael J. Wysocki
2011-11-09 22:40           ` Rafael J. Wysocki
2011-11-09 23:02           ` [PATCH 2/7] PM / Domains: Make it possible to use per-device Guennadi Liakhovetski
2011-11-09 23:02             ` [PATCH 2/7] PM / Domains: Make it possible to use per-device .active_wakeup() Guennadi Liakhovetski
2011-11-07  0:07 ` [PATCH 3/7] PM / Domains: Introduce "save/restore state" device callbacks Rafael J. Wysocki
2011-11-07  0:07   ` Rafael J. Wysocki
2011-11-07  0:08 ` [PATCH 4/7] PM / Domains: Rework system suspend callback routines Rafael J. Wysocki
2011-11-07  0:08   ` Rafael J. Wysocki
2012-02-17 19:29   ` Pavel Machek
2012-02-17 19:29     ` Pavel Machek
2012-02-17 20:57     ` Rafael J. Wysocki
2012-02-17 21:01       ` Rafael J. Wysocki
2011-11-07  0:08 ` [PATCH 5/7] PM / Domains: Add device stop governor function (v3) Rafael J. Wysocki
2011-11-07  0:08   ` Rafael J. Wysocki
2011-11-07  0:09 ` [PATCH 6/7] PM / Domains: Add default power off " Rafael J. Wysocki
2011-11-07  0:09   ` Rafael J. Wysocki
2011-11-07  0:10 ` [PATCH 7/7] PM / Domains: Automatically update overoptimistic latency information Rafael J. Wysocki
2011-11-07  0:10   ` Rafael J. Wysocki
2011-11-14  0:22 ` [update][PATCH 0/7] PM / Domains: Per-device callbacks and PM QoS Rafael J. Wysocki
2011-11-14  0:22   ` Rafael J. Wysocki
2011-11-14  0:23   ` [update][PATCH 1/7] PM / Domains: Make it possible to use per-device domain callbacks Rafael J. Wysocki
2011-11-14  0:23     ` Rafael J. Wysocki
2011-11-14  0:24   ` [update][PATCH 2/7] PM / Domains: Introduce "save/restore state" device callbacks Rafael J. Wysocki
2011-11-14  0:24     ` Rafael J. Wysocki
2011-11-14  0:25   ` [update][PATCH 3/7] PM / Domains: Rework system suspend callback routines Rafael J. Wysocki
2011-11-14  0:25     ` Rafael J. Wysocki
2011-11-14  0:26   ` [update][PATCH 4/7] PM / Runtime: Use device PM QoS constraints Rafael J. Wysocki
2011-11-14  0:26     ` Rafael J. Wysocki
2011-11-14  0:27   ` [update][PATCH 5/7] PM / Domains: Add device stop governor function (v4) Rafael J. Wysocki
2011-11-14  0:27     ` Rafael J. Wysocki
2011-11-14  0:27   ` [update][PATCH 6/7] PM / Domains: Add default power off " Rafael J. Wysocki
2011-11-14  0:27     ` Rafael J. Wysocki
2011-11-14  0:28   ` [update][PATCH 7/7] PM / Domains: Automatically update overoptimistic latency information Rafael J. Wysocki
2011-11-14  0:28     ` Rafael J. Wysocki
2011-11-19 13:56   ` [Update 2x][PATCH 0/7] PM / Domains: Per-device callbacks and PM QoS Rafael J. Wysocki
2011-11-19 13:56     ` Rafael J. Wysocki
2011-11-19 13:58     ` [Update 2x][PATCH 1/7] PM / Domains: Make it possible to use per-device domain callbacks Rafael J. Wysocki
2011-11-19 13:58       ` Rafael J. Wysocki
2011-11-19 13:59     ` [Update 2x][PATCH 2/7] PM / Domains: Introduce "save/restore state" device callbacks Rafael J. Wysocki
2011-11-19 13:59       ` Rafael J. Wysocki
2011-11-19 13:59     ` [Update 2x][PATCH 3/7] PM / Domains: Rework system suspend callback routines Rafael J. Wysocki
2011-11-19 13:59       ` Rafael J. Wysocki
2011-11-24  0:20       ` [Update 3x][PATCH 3/7] PM / Domains: Rework system suspend callback routines (v2) Rafael J. Wysocki
2011-11-24  0:20         ` Rafael J. Wysocki
2011-11-19 14:00     ` [Update 2x][PATCH 4/7] PM / Runtime: Use device PM QoS constraints Rafael J. Wysocki
2011-11-19 14:00       ` Rafael J. Wysocki
2011-11-30 23:20       ` [Update 3x][PATCH 4/7] PM / Runtime: Use device PM QoS constraints (v2) Rafael J. Wysocki
2011-11-30 23:20         ` Rafael J. Wysocki
2011-11-19 14:01     ` [Update 2x][PATCH 5/7] PM / Domains: Add device stop governor function (v4) Rafael J. Wysocki
2011-11-19 14:01       ` Rafael J. Wysocki
2011-11-19 14:01     ` [Update 2x][PATCH 6/7] PM / Domains: Add default power off " Rafael J. Wysocki
2011-11-19 14:01       ` Rafael J. Wysocki
2011-11-19 14:02     ` [Update 2x][PATCH 7/7] PM / Domains: Automatically update overoptimistic latency information Rafael J. Wysocki
2011-11-19 14:02       ` Rafael J. Wysocki

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=201111082140.00876.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=g.liakhovetski@gmx.de \
    --cc=jean.pihet@newoldbits.com \
    --cc=khilman@ti.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=magnus.damm@gmail.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.