* [PATCH 2/2] powerpc: Add power management support to VIO bus
@ 2010-05-07 18:58 Brian King
2010-05-10 2:35 ` Michael Ellerman
0 siblings, 1 reply; 4+ messages in thread
From: Brian King @ 2010-05-07 18:58 UTC (permalink / raw)
To: benh; +Cc: brking, linuxppc-dev
Adds support for suspend/resume for VIO devices. This is needed for
support for HMC initiated hibernation.
Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
---
arch/powerpc/kernel/vio.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff -puN arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm arch/powerpc/kernel/vio.c
--- linux-2.6/arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm 2010-05-07 13:49:16.000000000 -0500
+++ linux-2.6-bjking1/arch/powerpc/kernel/vio.c 2010-05-07 13:49:16.000000000 -0500
@@ -1358,6 +1358,29 @@ static int vio_hotplug(struct device *de
return 0;
}
+static int vio_pm_suspend(struct device *dev)
+{
+ const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
+
+ if (pm && pm->suspend)
+ return pm->suspend(dev);
+ return 0;
+}
+
+static int vio_pm_resume(struct device *dev)
+{
+ const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
+
+ if (pm && pm->resume)
+ return pm->resume(dev);
+ return 0;
+}
+
+const struct dev_pm_ops vio_dev_pm_ops = {
+ .suspend = vio_pm_suspend,
+ .resume = vio_pm_resume,
+};
+
static struct bus_type vio_bus_type = {
.name = "vio",
.dev_attrs = vio_dev_attrs,
@@ -1365,6 +1388,7 @@ static struct bus_type vio_bus_type = {
.match = vio_bus_match,
.probe = vio_bus_probe,
.remove = vio_bus_remove,
+ .pm = &vio_dev_pm_ops,
};
/**
_
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] powerpc: Add power management support to VIO bus
2010-05-07 18:58 [PATCH 2/2] powerpc: Add power management support to VIO bus Brian King
@ 2010-05-10 2:35 ` Michael Ellerman
2010-05-10 13:40 ` Brian King
0 siblings, 1 reply; 4+ messages in thread
From: Michael Ellerman @ 2010-05-10 2:35 UTC (permalink / raw)
To: Brian King; +Cc: linuxppc-dev
[-- Attachment #1: Type: text/plain, Size: 1348 bytes --]
On Fri, 2010-05-07 at 13:58 -0500, Brian King wrote:
> Adds support for suspend/resume for VIO devices. This is needed for
> support for HMC initiated hibernation.
>
> Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
> ---
>
> arch/powerpc/kernel/vio.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff -puN arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm arch/powerpc/kernel/vio.c
> --- linux-2.6/arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm 2010-05-07 13:49:16.000000000 -0500
> +++ linux-2.6-bjking1/arch/powerpc/kernel/vio.c 2010-05-07 13:49:16.000000000 -0500
> @@ -1358,6 +1358,29 @@ static int vio_hotplug(struct device *de
> return 0;
> }
>
> +static int vio_pm_suspend(struct device *dev)
> +{
> + const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
> +
> + if (pm && pm->suspend)
> + return pm->suspend(dev);
> + return 0;
> +}
> +
> +static int vio_pm_resume(struct device *dev)
> +{
> + const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
> +
> + if (pm && pm->resume)
> + return pm->resume(dev);
> + return 0;
> +}
> +
> +const struct dev_pm_ops vio_dev_pm_ops = {
> + .suspend = vio_pm_suspend,
> + .resume = vio_pm_resume,
> +};
That just looks like boiler plate, is there not a generic version
somewhere?
cheers
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 2/2] powerpc: Add power management support to VIO bus
2010-05-10 2:35 ` Michael Ellerman
@ 2010-05-10 13:40 ` Brian King
0 siblings, 0 replies; 4+ messages in thread
From: Brian King @ 2010-05-10 13:40 UTC (permalink / raw)
To: michael; +Cc: linuxppc-dev
On 05/09/2010 09:35 PM, Michael Ellerman wrote:
> On Fri, 2010-05-07 at 13:58 -0500, Brian King wrote:
>> Adds support for suspend/resume for VIO devices. This is needed for
>> support for HMC initiated hibernation.
>>
>> Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
>> ---
>>
>> arch/powerpc/kernel/vio.c | 24 ++++++++++++++++++++++++
>> 1 file changed, 24 insertions(+)
>>
>> diff -puN arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm arch/powerpc/kernel/vio.c
>> --- linux-2.6/arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm 2010-05-07 13:49:16.000000000 -0500
>> +++ linux-2.6-bjking1/arch/powerpc/kernel/vio.c 2010-05-07 13:49:16.000000000 -0500
>> @@ -1358,6 +1358,29 @@ static int vio_hotplug(struct device *de
>> return 0;
>> }
>>
>> +static int vio_pm_suspend(struct device *dev)
>> +{
>> + const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
>> +
>> + if (pm && pm->suspend)
>> + return pm->suspend(dev);
>> + return 0;
>> +}
>> +
>> +static int vio_pm_resume(struct device *dev)
>> +{
>> + const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
>> +
>> + if (pm && pm->resume)
>> + return pm->resume(dev);
>> + return 0;
>> +}
>> +
>> +const struct dev_pm_ops vio_dev_pm_ops = {
>> + .suspend = vio_pm_suspend,
>> + .resume = vio_pm_resume,
>> +};
>
> That just looks like boiler plate, is there not a generic version
> somewhere?
Looks there is. I'll update the patch to use the generic helpers.
Thanks,
Brian
--
Brian King
Linux on Power Virtualization
IBM Linux Technology Center
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH 2/2] powerpc: Add power management support to VIO bus
@ 2010-02-24 0:02 Brian King
0 siblings, 0 replies; 4+ messages in thread
From: Brian King @ 2010-02-24 0:02 UTC (permalink / raw)
To: benh; +Cc: brking, linuxppc-dev
Adds support for suspend/resume for VIO devices. This is needed for
support for HMC initiated hibernation.
Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
---
arch/powerpc/kernel/vio.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff -puN arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm arch/powerpc/kernel/vio.c
--- linux-2.6/arch/powerpc/kernel/vio.c~powerpc_vio_bus_pm 2010-02-21 09:56:18.000000000 -0600
+++ linux-2.6-bjking1/arch/powerpc/kernel/vio.c 2010-02-21 09:57:53.000000000 -0600
@@ -1357,6 +1357,29 @@ static int vio_hotplug(struct device *de
return 0;
}
+static int vio_pm_suspend(struct device *dev)
+{
+ const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
+
+ if (pm && pm->suspend)
+ return pm->suspend(dev);
+ return 0;
+}
+
+static int vio_pm_resume(struct device *dev)
+{
+ const struct dev_pm_ops *pm = dev->driver ? dev->driver->pm : NULL;
+
+ if (pm && pm->resume)
+ return pm->resume(dev);
+ return 0;
+}
+
+const struct dev_pm_ops vio_dev_pm_ops = {
+ .suspend = vio_pm_suspend,
+ .resume = vio_pm_resume,
+};
+
static struct bus_type vio_bus_type = {
.name = "vio",
.dev_attrs = vio_dev_attrs,
@@ -1364,6 +1387,7 @@ static struct bus_type vio_bus_type = {
.match = vio_bus_match,
.probe = vio_bus_probe,
.remove = vio_bus_remove,
+ .pm = &vio_dev_pm_ops,
};
/**
_
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-05-10 13:40 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-05-07 18:58 [PATCH 2/2] powerpc: Add power management support to VIO bus Brian King
2010-05-10 2:35 ` Michael Ellerman
2010-05-10 13:40 ` Brian King
-- strict thread matches above, loose matches on Subject: below --
2010-02-24 0:02 Brian King
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).