forked from Minki/linux
driver core: clean up device_shutdown
device_shutdown does not need to be in a separate file. Move it into the driver core file where it belongs. This also moves us one more step closer to making devices_kset static, now only the crazy sysdevs are keeping that from happening... Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
822a89ed1e
commit
37b0c02034
@ -1415,5 +1415,23 @@ out:
|
||||
put_device(dev);
|
||||
return error;
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL_GPL(device_move);
|
||||
|
||||
/**
|
||||
* device_shutdown - call ->shutdown() on each device to shutdown.
|
||||
*/
|
||||
void device_shutdown(void)
|
||||
{
|
||||
struct device * dev, *devn;
|
||||
|
||||
list_for_each_entry_safe_reverse(dev, devn, &devices_kset->list,
|
||||
kobj.entry) {
|
||||
if (dev->bus && dev->bus->shutdown) {
|
||||
dev_dbg(dev, "shutdown\n");
|
||||
dev->bus->shutdown(dev);
|
||||
} else if (dev->driver && dev->driver->shutdown) {
|
||||
dev_dbg(dev, "shutdown\n");
|
||||
dev->driver->shutdown(dev);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,4 +1,3 @@
|
||||
obj-y := shutdown.o
|
||||
obj-$(CONFIG_PM) += sysfs.o
|
||||
obj-$(CONFIG_PM_SLEEP) += main.o
|
||||
obj-$(CONFIG_PM_TRACE) += trace.o
|
||||
|
@ -1,43 +0,0 @@
|
||||
/*
|
||||
* shutdown.c - power management functions for the device tree.
|
||||
*
|
||||
* Copyright (c) 2002-3 Patrick Mochel
|
||||
* 2002-3 Open Source Development Lab
|
||||
*
|
||||
* This file is released under the GPLv2
|
||||
*
|
||||
*/
|
||||
|
||||
#include <linux/device.h>
|
||||
#include <asm/semaphore.h>
|
||||
|
||||
#include "../base.h"
|
||||
|
||||
/**
|
||||
* We handle system devices differently - we suspend and shut them
|
||||
* down last and resume them first. That way, we don't do anything stupid like
|
||||
* shutting down the interrupt controller before any devices..
|
||||
*
|
||||
* Note that there are not different stages for power management calls -
|
||||
* they only get one called once when interrupts are disabled.
|
||||
*/
|
||||
|
||||
|
||||
/**
|
||||
* device_shutdown - call ->shutdown() on each device to shutdown.
|
||||
*/
|
||||
void device_shutdown(void)
|
||||
{
|
||||
struct device * dev, *devn;
|
||||
|
||||
list_for_each_entry_safe_reverse(dev, devn, &devices_kset->list,
|
||||
kobj.entry) {
|
||||
if (dev->bus && dev->bus->shutdown) {
|
||||
dev_dbg(dev, "shutdown\n");
|
||||
dev->bus->shutdown(dev);
|
||||
} else if (dev->driver && dev->driver->shutdown) {
|
||||
dev_dbg(dev, "shutdown\n");
|
||||
dev->driver->shutdown(dev);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user