s390/appldata: remove power management callbacks
authorHeiko Carstens <hca@linux.ibm.com>
Tue, 29 Nov 2022 16:31:45 +0000 (17:31 +0100)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Fri, 2 Dec 2022 17:25:04 +0000 (18:25 +0100)
Support for power managemant has been removed from s390 since quite
some time. Therefore remove unused power managemant code from the
appldata device driver.

Reviewed-by: Gerald Schaefer <gerald.schaefer@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
arch/s390/appldata/appldata_base.c

index d74a4c7..c0fd291 100644 (file)
@@ -26,8 +26,6 @@
 #include <linux/notifier.h>
 #include <linux/cpu.h>
 #include <linux/workqueue.h>
-#include <linux/suspend.h>
-#include <linux/platform_device.h>
 #include <asm/appldata.h>
 #include <asm/vtimer.h>
 #include <linux/uaccess.h>
@@ -44,8 +42,6 @@
 #define TOD_MICRO      0x01000                 /* nr. of TOD clock units
                                                   for 1 microsecond */
 
-static struct platform_device *appldata_pdev;
-
 /*
  * /proc entries (sysctl)
  */
@@ -88,7 +84,6 @@ static struct vtimer_list appldata_timer;
 static DEFINE_SPINLOCK(appldata_timer_lock);
 static int appldata_interval = APPLDATA_CPU_INTERVAL;
 static int appldata_timer_active;
-static int appldata_timer_suspended = 0;
 
 /*
  * Work queue
@@ -412,88 +407,6 @@ void appldata_unregister_ops(struct appldata_ops *ops)
 /********************** module-ops management <END> **************************/
 
 
-/**************************** suspend / resume *******************************/
-static int appldata_freeze(struct device *dev)
-{
-       struct appldata_ops *ops;
-       int rc;
-       struct list_head *lh;
-
-       spin_lock(&appldata_timer_lock);
-       if (appldata_timer_active) {
-               __appldata_vtimer_setup(APPLDATA_DEL_TIMER);
-               appldata_timer_suspended = 1;
-       }
-       spin_unlock(&appldata_timer_lock);
-
-       mutex_lock(&appldata_ops_mutex);
-       list_for_each(lh, &appldata_ops_list) {
-               ops = list_entry(lh, struct appldata_ops, list);
-               if (ops->active == 1) {
-                       rc = appldata_diag(ops->record_nr, APPLDATA_STOP_REC,
-                                       (unsigned long) ops->data, ops->size,
-                                       ops->mod_lvl);
-                       if (rc != 0)
-                               pr_err("Stopping the data collection for %s "
-                                      "failed with rc=%d\n", ops->name, rc);
-               }
-       }
-       mutex_unlock(&appldata_ops_mutex);
-       return 0;
-}
-
-static int appldata_restore(struct device *dev)
-{
-       struct appldata_ops *ops;
-       int rc;
-       struct list_head *lh;
-
-       spin_lock(&appldata_timer_lock);
-       if (appldata_timer_suspended) {
-               __appldata_vtimer_setup(APPLDATA_ADD_TIMER);
-               appldata_timer_suspended = 0;
-       }
-       spin_unlock(&appldata_timer_lock);
-
-       mutex_lock(&appldata_ops_mutex);
-       list_for_each(lh, &appldata_ops_list) {
-               ops = list_entry(lh, struct appldata_ops, list);
-               if (ops->active == 1) {
-                       ops->callback(ops->data);       // init record
-                       rc = appldata_diag(ops->record_nr,
-                                       APPLDATA_START_INTERVAL_REC,
-                                       (unsigned long) ops->data, ops->size,
-                                       ops->mod_lvl);
-                       if (rc != 0) {
-                               pr_err("Starting the data collection for %s "
-                                      "failed with rc=%d\n", ops->name, rc);
-                       }
-               }
-       }
-       mutex_unlock(&appldata_ops_mutex);
-       return 0;
-}
-
-static int appldata_thaw(struct device *dev)
-{
-       return appldata_restore(dev);
-}
-
-static const struct dev_pm_ops appldata_pm_ops = {
-       .freeze         = appldata_freeze,
-       .thaw           = appldata_thaw,
-       .restore        = appldata_restore,
-};
-
-static struct platform_driver appldata_pdrv = {
-       .driver = {
-               .name   = "appldata",
-               .pm     = &appldata_pm_ops,
-       },
-};
-/************************* suspend / resume <END> ****************************/
-
-
 /******************************* init / exit *********************************/
 
 /*
@@ -503,36 +416,14 @@ static struct platform_driver appldata_pdrv = {
  */
 static int __init appldata_init(void)
 {
-       int rc;
-
        init_virt_timer(&appldata_timer);
        appldata_timer.function = appldata_timer_function;
        appldata_timer.data = (unsigned long) &appldata_work;
-
-       rc = platform_driver_register(&appldata_pdrv);
-       if (rc)
-               return rc;
-
-       appldata_pdev = platform_device_register_simple("appldata", -1, NULL,
-                                                       0);
-       if (IS_ERR(appldata_pdev)) {
-               rc = PTR_ERR(appldata_pdev);
-               goto out_driver;
-       }
        appldata_wq = alloc_ordered_workqueue("appldata", 0);
-       if (!appldata_wq) {
-               rc = -ENOMEM;
-               goto out_device;
-       }
-
+       if (!appldata_wq)
+               return -ENOMEM;
        appldata_sysctl_header = register_sysctl_table(appldata_dir_table);
        return 0;
-
-out_device:
-       platform_device_unregister(appldata_pdev);
-out_driver:
-       platform_driver_unregister(&appldata_pdrv);
-       return rc;
 }
 
 __initcall(appldata_init);