mtd: Switch to PM ops
Use dev_pm_ops instead of the legacy suspend/resume callbacks for the MTD class suspend and resume operations. While we are at it slightly reorder things to avoid the need for forward declarations. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
Родитель
b94665322b
Коммит
57b8045d13
|
@ -48,14 +48,34 @@
|
||||||
static struct backing_dev_info mtd_bdi = {
|
static struct backing_dev_info mtd_bdi = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static int mtd_cls_suspend(struct device *dev, pm_message_t state);
|
#ifdef CONFIG_PM_SLEEP
|
||||||
static int mtd_cls_resume(struct device *dev);
|
|
||||||
|
static int mtd_cls_suspend(struct device *dev)
|
||||||
|
{
|
||||||
|
struct mtd_info *mtd = dev_get_drvdata(dev);
|
||||||
|
|
||||||
|
return mtd ? mtd_suspend(mtd) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int mtd_cls_resume(struct device *dev)
|
||||||
|
{
|
||||||
|
struct mtd_info *mtd = dev_get_drvdata(dev);
|
||||||
|
|
||||||
|
if (mtd)
|
||||||
|
mtd_resume(mtd);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static SIMPLE_DEV_PM_OPS(mtd_cls_pm_ops, mtd_cls_suspend, mtd_cls_resume);
|
||||||
|
#define MTD_CLS_PM_OPS (&mtd_cls_pm_ops)
|
||||||
|
#else
|
||||||
|
#define MTD_CLS_PM_OPS NULL
|
||||||
|
#endif
|
||||||
|
|
||||||
static struct class mtd_class = {
|
static struct class mtd_class = {
|
||||||
.name = "mtd",
|
.name = "mtd",
|
||||||
.owner = THIS_MODULE,
|
.owner = THIS_MODULE,
|
||||||
.suspend = mtd_cls_suspend,
|
.pm = MTD_CLS_PM_OPS,
|
||||||
.resume = mtd_cls_resume,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
static DEFINE_IDR(mtd_idr);
|
static DEFINE_IDR(mtd_idr);
|
||||||
|
@ -88,22 +108,6 @@ static void mtd_release(struct device *dev)
|
||||||
device_destroy(&mtd_class, index + 1);
|
device_destroy(&mtd_class, index + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int mtd_cls_suspend(struct device *dev, pm_message_t state)
|
|
||||||
{
|
|
||||||
struct mtd_info *mtd = dev_get_drvdata(dev);
|
|
||||||
|
|
||||||
return mtd ? mtd_suspend(mtd) : 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int mtd_cls_resume(struct device *dev)
|
|
||||||
{
|
|
||||||
struct mtd_info *mtd = dev_get_drvdata(dev);
|
|
||||||
|
|
||||||
if (mtd)
|
|
||||||
mtd_resume(mtd);
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
static ssize_t mtd_type_show(struct device *dev,
|
static ssize_t mtd_type_show(struct device *dev,
|
||||||
struct device_attribute *attr, char *buf)
|
struct device_attribute *attr, char *buf)
|
||||||
{
|
{
|
||||||
|
|
Загрузка…
Ссылка в новой задаче