cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem
[deliverable/linux.git] / arch / powerpc / platforms / pseries / pseries_energy.c
index c8b3c69fe891f0d03af00126a57d92b25157f1e6..af281dce510af14246a96be7b83178456cfc7c3b 100644 (file)
@@ -15,7 +15,7 @@
 #include <linux/errno.h>
 #include <linux/init.h>
 #include <linux/seq_file.h>
-#include <linux/sysdev.h>
+#include <linux/device.h>
 #include <linux/cpu.h>
 #include <linux/of.h>
 #include <asm/cputhreads.h>
@@ -184,7 +184,7 @@ static ssize_t get_best_energy_list(char *page, int activate)
        return s-page;
 }
 
-static ssize_t get_best_energy_data(struct sys_device *dev,
+static ssize_t get_best_energy_data(struct device *dev,
                                        char *page, int activate)
 {
        int rc;
@@ -207,26 +207,26 @@ static ssize_t get_best_energy_data(struct sys_device *dev,
 
 /* Wrapper functions */
 
-static ssize_t cpu_activate_hint_list_show(struct sysdev_class *class,
-                       struct sysdev_class_attribute *attr, char *page)
+static ssize_t cpu_activate_hint_list_show(struct device *dev,
+                       struct device_attribute *attr, char *page)
 {
        return get_best_energy_list(page, 1);
 }
 
-static ssize_t cpu_deactivate_hint_list_show(struct sysdev_class *class,
-                       struct sysdev_class_attribute *attr, char *page)
+static ssize_t cpu_deactivate_hint_list_show(struct device *dev,
+                       struct device_attribute *attr, char *page)
 {
        return get_best_energy_list(page, 0);
 }
 
-static ssize_t percpu_activate_hint_show(struct sys_device *dev,
-                       struct sysdev_attribute *attr, char *page)
+static ssize_t percpu_activate_hint_show(struct device *dev,
+                       struct device_attribute *attr, char *page)
 {
        return get_best_energy_data(dev, page, 1);
 }
 
-static ssize_t percpu_deactivate_hint_show(struct sys_device *dev,
-                       struct sysdev_attribute *attr, char *page)
+static ssize_t percpu_deactivate_hint_show(struct device *dev,
+                       struct device_attribute *attr, char *page)
 {
        return get_best_energy_data(dev, page, 0);
 }
@@ -241,48 +241,48 @@ static ssize_t percpu_deactivate_hint_show(struct sys_device *dev,
  *     Per-cpu value of the hint
  */
 
-struct sysdev_class_attribute attr_cpu_activate_hint_list =
-               _SYSDEV_CLASS_ATTR(pseries_activate_hint_list, 0444,
+struct device_attribute attr_cpu_activate_hint_list =
+               __ATTR(pseries_activate_hint_list, 0444,
                cpu_activate_hint_list_show, NULL);
 
-struct sysdev_class_attribute attr_cpu_deactivate_hint_list =
-               _SYSDEV_CLASS_ATTR(pseries_deactivate_hint_list, 0444,
+struct device_attribute attr_cpu_deactivate_hint_list =
+               __ATTR(pseries_deactivate_hint_list, 0444,
                cpu_deactivate_hint_list_show, NULL);
 
-struct sysdev_attribute attr_percpu_activate_hint =
-               _SYSDEV_ATTR(pseries_activate_hint, 0444,
+struct device_attribute attr_percpu_activate_hint =
+               __ATTR(pseries_activate_hint, 0444,
                percpu_activate_hint_show, NULL);
 
-struct sysdev_attribute attr_percpu_deactivate_hint =
-               _SYSDEV_ATTR(pseries_deactivate_hint, 0444,
+struct device_attribute attr_percpu_deactivate_hint =
+               __ATTR(pseries_deactivate_hint, 0444,
                percpu_deactivate_hint_show, NULL);
 
 static int __init pseries_energy_init(void)
 {
        int cpu, err;
-       struct sys_device *cpu_sys_dev;
+       struct device *cpu_dev;
 
        if (!check_for_h_best_energy()) {
                printk(KERN_INFO "Hypercall H_BEST_ENERGY not supported\n");
                return 0;
        }
        /* Create the sysfs files */
-       err = sysfs_create_file(&cpu_sysdev_class.kset.kobj,
-                               &attr_cpu_activate_hint_list.attr);
+       err = device_create_file(cpu_subsys.dev_root,
+                               &attr_cpu_activate_hint_list);
        if (!err)
-               err = sysfs_create_file(&cpu_sysdev_class.kset.kobj,
-                               &attr_cpu_deactivate_hint_list.attr);
+               err = device_create_file(cpu_subsys.dev_root,
+                               &attr_cpu_deactivate_hint_list);
 
        if (err)
                return err;
        for_each_possible_cpu(cpu) {
-               cpu_sys_dev = get_cpu_sysdev(cpu);
-               err = sysfs_create_file(&cpu_sys_dev->kobj,
-                               &attr_percpu_activate_hint.attr);
+               cpu_dev = get_cpu_device(cpu);
+               err = device_create_file(cpu_dev,
+                               &attr_percpu_activate_hint);
                if (err)
                        break;
-               err = sysfs_create_file(&cpu_sys_dev->kobj,
-                               &attr_percpu_deactivate_hint.attr);
+               err = device_create_file(cpu_dev,
+                               &attr_percpu_deactivate_hint);
                if (err)
                        break;
        }
@@ -298,23 +298,20 @@ static int __init pseries_energy_init(void)
 static void __exit pseries_energy_cleanup(void)
 {
        int cpu;
-       struct sys_device *cpu_sys_dev;
+       struct device *cpu_dev;
 
        if (!sysfs_entries)
                return;
 
        /* Remove the sysfs files */
-       sysfs_remove_file(&cpu_sysdev_class.kset.kobj,
-                               &attr_cpu_activate_hint_list.attr);
-
-       sysfs_remove_file(&cpu_sysdev_class.kset.kobj,
-                               &attr_cpu_deactivate_hint_list.attr);
+       device_remove_file(cpu_subsys.dev_root, &attr_cpu_activate_hint_list);
+       device_remove_file(cpu_subsys.dev_root, &attr_cpu_deactivate_hint_list);
 
        for_each_possible_cpu(cpu) {
-               cpu_sys_dev = get_cpu_sysdev(cpu);
-               sysfs_remove_file(&cpu_sys_dev->kobj,
+               cpu_dev = get_cpu_device(cpu);
+               sysfs_remove_file(&cpu_dev->kobj,
                                &attr_percpu_activate_hint.attr);
-               sysfs_remove_file(&cpu_sys_dev->kobj,
+               sysfs_remove_file(&cpu_dev->kobj,
                                &attr_percpu_deactivate_hint.attr);
        }
 }
This page took 0.028296 seconds and 5 git commands to generate.