|
@@ -280,8 +280,11 @@ static void ad7879_close(struct input_dev* input)
|
|
|
__ad7879_disable(ts);
|
|
|
}
|
|
|
|
|
|
-void ad7879_suspend(struct ad7879 *ts)
|
|
|
+#ifdef CONFIG_PM_SLEEP
|
|
|
+static int ad7879_suspend(struct device *dev)
|
|
|
{
|
|
|
+ struct ad7879 *ts = dev_get_drvdata(dev);
|
|
|
+
|
|
|
mutex_lock(&ts->input->mutex);
|
|
|
|
|
|
if (!ts->suspended && !ts->disabled && ts->input->users)
|
|
@@ -290,11 +293,14 @@ void ad7879_suspend(struct ad7879 *ts)
|
|
|
ts->suspended = true;
|
|
|
|
|
|
mutex_unlock(&ts->input->mutex);
|
|
|
+
|
|
|
+ return 0;
|
|
|
}
|
|
|
-EXPORT_SYMBOL(ad7879_suspend);
|
|
|
|
|
|
-void ad7879_resume(struct ad7879 *ts)
|
|
|
+static int ad7879_resume(struct device *dev)
|
|
|
{
|
|
|
+ struct ad7879 *ts = dev_get_drvdata(dev);
|
|
|
+
|
|
|
mutex_lock(&ts->input->mutex);
|
|
|
|
|
|
if (ts->suspended && !ts->disabled && ts->input->users)
|
|
@@ -303,8 +309,13 @@ void ad7879_resume(struct ad7879 *ts)
|
|
|
ts->suspended = false;
|
|
|
|
|
|
mutex_unlock(&ts->input->mutex);
|
|
|
+
|
|
|
+ return 0;
|
|
|
}
|
|
|
-EXPORT_SYMBOL(ad7879_resume);
|
|
|
+#endif
|
|
|
+
|
|
|
+SIMPLE_DEV_PM_OPS(ad7879_pm_ops, ad7879_suspend, ad7879_resume);
|
|
|
+EXPORT_SYMBOL(ad7879_pm_ops);
|
|
|
|
|
|
static void ad7879_toggle(struct ad7879 *ts, bool disable)
|
|
|
{
|