x86/cpufreq: relocate the driver register function
authorWei Wang <wei.w.wang@intel.com>
Thu, 8 Oct 2015 09:01:58 +0000 (11:01 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 8 Oct 2015 09:01:58 +0000 (11:01 +0200)
Move the driver register function to the cpufreq.c, and remove the
(unused) de-registration one.

Signed-off-by: Wei Wang <wei.w.wang@intel.com>
Mark the funciton __init.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
xen/drivers/cpufreq/cpufreq.c
xen/include/acpi/cpufreq/cpufreq.h

index 567e9e95d26a1a13d9d22266b1aacb242a65a957..81a187ba59e99cd6384c024b7861fabc27fdb6c5 100644 (file)
@@ -638,3 +638,18 @@ static int __init cpufreq_presmp_init(void)
 }
 presmp_initcall(cpufreq_presmp_init);
 
+int __init cpufreq_register_driver(struct cpufreq_driver *driver_data)
+{
+   if ( !driver_data || !driver_data->init ||
+        !driver_data->verify || !driver_data->exit ||
+        (!driver_data->target == !driver_data->setpolicy) )
+        return -EINVAL;
+
+    if ( cpufreq_driver )
+        return -EBUSY;
+
+    cpufreq_driver = driver_data;
+
+    register_cpu_notifier(&cpu_nfb);
+    return 0;
+}
index 1ec04ca2bdfe5dc80022fa9accb5a828690ef827..48ad1d0004c8fc0870c18ab4e0fb57275a0d6b8e 100644 (file)
@@ -170,32 +170,7 @@ struct cpufreq_driver {
 
 extern struct cpufreq_driver *cpufreq_driver;
 
-static __inline__ 
-int cpufreq_register_driver(struct cpufreq_driver *driver_data)
-{
-    if (!driver_data         || 
-        !driver_data->init   || 
-        !driver_data->exit   || 
-        !driver_data->verify || 
-        !driver_data->target)
-        return -EINVAL;
-
-    if (cpufreq_driver)
-        return -EBUSY;
-
-    cpufreq_driver = driver_data;
-    return 0;
-}
-
-static __inline__ 
-int cpufreq_unregister_driver(struct cpufreq_driver *driver)
-{
-    if (!cpufreq_driver || (driver != cpufreq_driver))
-        return -EINVAL;
-
-    cpufreq_driver = NULL;
-    return 0;
-}
+int cpufreq_register_driver(struct cpufreq_driver *);
 
 static __inline__
 void cpufreq_verify_within_limits(struct cpufreq_policy *policy,