All of lore.kernel.org
 help / color / mirror / Atom feed
From: Magnus Damm <magnus.damm@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: gregkh@suse.de, hskinnemoen@atmel.com, anemo@mba.ocn.ne.jp,
	linux-usb@vger.kernel.org, ben-linux@fluff.org,
	linux-pm@lists.linux-foundation.org, linux-omap@vger.kernel.org,
	akpm@linux-foundation.org, felipe.balbi@nokia.com
Subject: [PATCH 01/07] arm: rework omap suspend_late()/resume_early()
Date: Wed, 24 Jun 2009 18:23:15 +0900	[thread overview]
Message-ID: <20090624092315.14276.84763.sendpatchset@rx1.opensource.se> (raw)
In-Reply-To: <20090624092306.14276.127.sendpatchset@rx1.opensource.se>

From: Magnus Damm <damm@igel.co.jp>

This patch reworks platform driver power management code
for omap drivers using late/early legacy callbacks.

The callbacks are converted for CONFIG_SUSPEND like this:
  suspend_late() -> suspend_noirq()
  resume_early() -> resume_noirq()

Signed-off-by: Magnus Damm <damm@igel.co.jp>
---

 Untested but compiles just fine.

 arch/arm/plat-omap/debug-leds.c |   11 +++++++----
 arch/arm/plat-omap/gpio.c       |   14 ++++++++++----
 2 files changed, 17 insertions(+), 8 deletions(-)

--- 0001/arch/arm/plat-omap/debug-leds.c
+++ work/arch/arm/plat-omap/debug-leds.c	2009-06-01 15:50:21.000000000 +0900
@@ -281,24 +281,27 @@ static int /* __init */ fpga_probe(struc
 	return 0;
 }
 
-static int fpga_suspend_late(struct platform_device *pdev, pm_message_t mesg)
+static int fpga_suspend_noirq(struct device *dev)
 {
 	__raw_writew(~0, &fpga->leds);
 	return 0;
 }
 
-static int fpga_resume_early(struct platform_device *pdev)
+static int fpga_resume_noirq(struct device *dev)
 {
 	__raw_writew(~hw_led_state, &fpga->leds);
 	return 0;
 }
 
+static struct dev_pm_ops fpga_dev_pm_ops = {
+	.suspend_noirq = fpga_suspend_noirq,
+	.resume_noirq = fpga_resume_noirq,
+};
 
 static struct platform_driver led_driver = {
 	.driver.name	= "omap_dbg_led",
+	.driver.pm	= &fpga_dev_pm_ops,
 	.probe		= fpga_probe,
-	.suspend_late	= fpga_suspend_late,
-	.resume_early	= fpga_resume_early,
 };
 
 static int __init fpga_init(void)
--- 0001/arch/arm/plat-omap/gpio.c
+++ work/arch/arm/plat-omap/gpio.c	2009-06-01 16:30:56.000000000 +0900
@@ -1264,8 +1264,9 @@ static struct irq_chip mpuio_irq_chip = 
 
 #include <linux/platform_device.h>
 
-static int omap_mpuio_suspend_late(struct platform_device *pdev, pm_message_t mesg)
+static int omap_mpuio_suspend_noirq(struct device *dev)
 {
+	struct platform_device *pdev = to_platform_device(dev);
 	struct gpio_bank	*bank = platform_get_drvdata(pdev);
 	void __iomem		*mask_reg = bank->base + OMAP_MPUIO_GPIO_MASKIT;
 	unsigned long		flags;
@@ -1278,8 +1279,9 @@ static int omap_mpuio_suspend_late(struc
 	return 0;
 }
 
-static int omap_mpuio_resume_early(struct platform_device *pdev)
+static int omap_mpuio_resume_noirq(struct device *dev)
 {
+	struct platform_device *pdev = to_platform_device(dev);
 	struct gpio_bank	*bank = platform_get_drvdata(pdev);
 	void __iomem		*mask_reg = bank->base + OMAP_MPUIO_GPIO_MASKIT;
 	unsigned long		flags;
@@ -1291,14 +1293,18 @@ static int omap_mpuio_resume_early(struc
 	return 0;
 }
 
+static struct dev_pm_ops omap_mpuio_dev_pm_ops = {
+	.suspend_noirq = omap_mpuio_suspend_noirq,
+	.resume_noirq = omap_mpuio_resume_noirq,
+};
+
 /* use platform_driver for this, now that there's no longer any
  * point to sys_device (other than not disturbing old code).
  */
 static struct platform_driver omap_mpuio_driver = {
-	.suspend_late	= omap_mpuio_suspend_late,
-	.resume_early	= omap_mpuio_resume_early,
 	.driver		= {
 		.name	= "mpuio",
+		.pm	= &omap_mpuio_dev_pm_ops,
 	},
 };
 

WARNING: multiple messages have this Message-ID (diff)
From: Magnus Damm <magnus.damm@gmail.com>
To: linux-kernel@vger.kernel.org
Cc: gregkh@suse.de, ben-linux@fluff.org, hskinnemoen@atmel.com,
	anemo@mba.ocn.ne.jp, linux-usb@vger.kernel.org, rjw@sisk.pl,
	stern@rowland.harvard.edu, pavel@ucw.cz,
	linux-pm@lists.linux-foundation.org, akpm@linux-foundation.org,
	linux-omap@vger.kernel.org, Magnus Damm <magnus.damm@gmail.com>,
	felipe.balbi@nokia.com
Subject: [PATCH 01/07] arm: rework omap suspend_late()/resume_early()
Date: Wed, 24 Jun 2009 18:23:15 +0900	[thread overview]
Message-ID: <20090624092315.14276.84763.sendpatchset@rx1.opensource.se> (raw)
In-Reply-To: <20090624092306.14276.127.sendpatchset@rx1.opensource.se>

From: Magnus Damm <damm@igel.co.jp>

This patch reworks platform driver power management code
for omap drivers using late/early legacy callbacks.

The callbacks are converted for CONFIG_SUSPEND like this:
  suspend_late() -> suspend_noirq()
  resume_early() -> resume_noirq()

Signed-off-by: Magnus Damm <damm@igel.co.jp>
---

 Untested but compiles just fine.

 arch/arm/plat-omap/debug-leds.c |   11 +++++++----
 arch/arm/plat-omap/gpio.c       |   14 ++++++++++----
 2 files changed, 17 insertions(+), 8 deletions(-)

--- 0001/arch/arm/plat-omap/debug-leds.c
+++ work/arch/arm/plat-omap/debug-leds.c	2009-06-01 15:50:21.000000000 +0900
@@ -281,24 +281,27 @@ static int /* __init */ fpga_probe(struc
 	return 0;
 }
 
-static int fpga_suspend_late(struct platform_device *pdev, pm_message_t mesg)
+static int fpga_suspend_noirq(struct device *dev)
 {
 	__raw_writew(~0, &fpga->leds);
 	return 0;
 }
 
-static int fpga_resume_early(struct platform_device *pdev)
+static int fpga_resume_noirq(struct device *dev)
 {
 	__raw_writew(~hw_led_state, &fpga->leds);
 	return 0;
 }
 
+static struct dev_pm_ops fpga_dev_pm_ops = {
+	.suspend_noirq = fpga_suspend_noirq,
+	.resume_noirq = fpga_resume_noirq,
+};
 
 static struct platform_driver led_driver = {
 	.driver.name	= "omap_dbg_led",
+	.driver.pm	= &fpga_dev_pm_ops,
 	.probe		= fpga_probe,
-	.suspend_late	= fpga_suspend_late,
-	.resume_early	= fpga_resume_early,
 };
 
 static int __init fpga_init(void)
--- 0001/arch/arm/plat-omap/gpio.c
+++ work/arch/arm/plat-omap/gpio.c	2009-06-01 16:30:56.000000000 +0900
@@ -1264,8 +1264,9 @@ static struct irq_chip mpuio_irq_chip = 
 
 #include <linux/platform_device.h>
 
-static int omap_mpuio_suspend_late(struct platform_device *pdev, pm_message_t mesg)
+static int omap_mpuio_suspend_noirq(struct device *dev)
 {
+	struct platform_device *pdev = to_platform_device(dev);
 	struct gpio_bank	*bank = platform_get_drvdata(pdev);
 	void __iomem		*mask_reg = bank->base + OMAP_MPUIO_GPIO_MASKIT;
 	unsigned long		flags;
@@ -1278,8 +1279,9 @@ static int omap_mpuio_suspend_late(struc
 	return 0;
 }
 
-static int omap_mpuio_resume_early(struct platform_device *pdev)
+static int omap_mpuio_resume_noirq(struct device *dev)
 {
+	struct platform_device *pdev = to_platform_device(dev);
 	struct gpio_bank	*bank = platform_get_drvdata(pdev);
 	void __iomem		*mask_reg = bank->base + OMAP_MPUIO_GPIO_MASKIT;
 	unsigned long		flags;
@@ -1291,14 +1293,18 @@ static int omap_mpuio_resume_early(struc
 	return 0;
 }
 
+static struct dev_pm_ops omap_mpuio_dev_pm_ops = {
+	.suspend_noirq = omap_mpuio_suspend_noirq,
+	.resume_noirq = omap_mpuio_resume_noirq,
+};
+
 /* use platform_driver for this, now that there's no longer any
  * point to sys_device (other than not disturbing old code).
  */
 static struct platform_driver omap_mpuio_driver = {
-	.suspend_late	= omap_mpuio_suspend_late,
-	.resume_early	= omap_mpuio_resume_early,
 	.driver		= {
 		.name	= "mpuio",
+		.pm	= &omap_mpuio_dev_pm_ops,
 	},
 };
 

  reply	other threads:[~2009-06-24  9:23 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-24  9:23 [PATCH 00/07] pm: remove late/early platform driver pm callbacks V2 Magnus Damm
2009-06-24  9:23 ` Magnus Damm
2009-06-24  9:23 ` Magnus Damm [this message]
2009-06-24  9:23   ` [PATCH 01/07] arm: rework omap suspend_late()/resume_early() Magnus Damm
2009-06-24  9:23 ` [PATCH 02/07] dma: rework dw_dmac suspend_late()/resume_early() Magnus Damm
2009-06-24  9:23   ` Magnus Damm
2009-06-24  9:23 ` [PATCH 03/07] dma: rework txx9dmac suspend_late()/resume_early() Magnus Damm
     [not found] ` <20090624092306.14276.127.sendpatchset-/W6D1AVitZKvog7CDwlRTrNAH6kLmebB@public.gmane.org>
2009-06-24  9:23   ` Magnus Damm
2009-06-24  9:23     ` Magnus Damm
2009-06-24  9:23   ` [PATCH 04/07] i2c: rework i2c-pxa suspend_late()/resume_early() Magnus Damm
2009-06-24  9:23     ` Magnus Damm
2009-06-24  9:24   ` [PATCH 06/07] usb: rework musb suspend()/resume_early() Magnus Damm
2009-06-24  9:24     ` Magnus Damm
2009-06-24 20:34     ` Greg KH
2009-06-24 20:34     ` Greg KH
2009-06-24 18:48   ` [PATCH 00/07] pm: remove late/early platform driver pm callbacks V2 Rafael J. Wysocki
2009-06-24 18:48     ` Rafael J. Wysocki
2009-06-24 18:56     ` Pavel Machek
2009-06-24 18:56     ` Pavel Machek
2009-06-24 20:33     ` Greg KH
     [not found]     ` <200906242048.40956.rjw-KKrjLPT3xs0@public.gmane.org>
2009-06-24 20:33       ` Greg KH
2009-06-24 20:33         ` Greg KH
2009-06-24  9:23 ` [PATCH 04/07] i2c: rework i2c-pxa suspend_late()/resume_early() Magnus Damm
2009-06-24  9:23 ` [PATCH 05/07] i2c: rework i2c-s3c2410 suspend_late()/resume() V2 Magnus Damm
2009-06-24  9:23 ` Magnus Damm
2009-06-24  9:24 ` [PATCH 06/07] usb: rework musb suspend()/resume_early() Magnus Damm
2009-06-24  9:24 ` [PATCH 07/07] pm: remove platform device suspend_late()/resume_early() V2 Magnus Damm
2009-06-24 16:02   ` Pavel Machek
2009-06-24 16:02   ` Pavel Machek
2009-06-24  9:24 ` Magnus Damm
2009-06-24 18:48 ` [PATCH 00/07] pm: remove late/early platform driver pm callbacks V2 Rafael J. Wysocki
2009-07-04 23:45 ` Rafael J. Wysocki
2009-09-09  1:25   ` Dan Williams
2009-09-09  1:25   ` Dan Williams
2009-09-09  1:25     ` Dan Williams
2009-09-09 22:09     ` Rafael J. Wysocki
2009-09-09 22:09     ` Rafael J. Wysocki
2009-07-04 23:45 ` Rafael J. Wysocki
  -- strict thread matches above, loose matches on Subject: below --
2009-06-05  7:54 [PATCH 00/07] pm: remove late/early platform driver pm callbacks Magnus Damm
2009-06-05  7:54 ` [PATCH 01/07] arm: rework omap suspend_late()/resume_early() Magnus Damm
2009-06-05  7:54 ` Magnus Damm

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=20090624092315.14276.84763.sendpatchset@rx1.opensource.se \
    --to=magnus.damm@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=ben-linux@fluff.org \
    --cc=felipe.balbi@nokia.com \
    --cc=gregkh@suse.de \
    --cc=hskinnemoen@atmel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=linux-usb@vger.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 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.