Commit d369a5d8 authored by Kay Sievers's avatar Kay Sievers Committed by Greg Kroah-Hartman

clocksource: convert sysdev_class to a regular subsystem

After all sysdev classes are ported to regular driver core entities, the
sysdev implementation will be entirely removed from the kernel.

Cc: John Stultz <johnstul@us.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarKay Sievers <kay.sievers@vrfy.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 15916a12
...@@ -23,8 +23,8 @@ ...@@ -23,8 +23,8 @@
* o Allow clocksource drivers to be unregistered * o Allow clocksource drivers to be unregistered
*/ */
#include <linux/device.h>
#include <linux/clocksource.h> #include <linux/clocksource.h>
#include <linux/sysdev.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/sched.h> /* for spin_unlock_irq() using preempt_count() m68k */ #include <linux/sched.h> /* for spin_unlock_irq() using preempt_count() m68k */
...@@ -754,8 +754,8 @@ EXPORT_SYMBOL(clocksource_unregister); ...@@ -754,8 +754,8 @@ EXPORT_SYMBOL(clocksource_unregister);
* Provides sysfs interface for listing current clocksource. * Provides sysfs interface for listing current clocksource.
*/ */
static ssize_t static ssize_t
sysfs_show_current_clocksources(struct sys_device *dev, sysfs_show_current_clocksources(struct device *dev,
struct sysdev_attribute *attr, char *buf) struct device_attribute *attr, char *buf)
{ {
ssize_t count = 0; ssize_t count = 0;
...@@ -775,8 +775,8 @@ sysfs_show_current_clocksources(struct sys_device *dev, ...@@ -775,8 +775,8 @@ sysfs_show_current_clocksources(struct sys_device *dev,
* Takes input from sysfs interface for manually overriding the default * Takes input from sysfs interface for manually overriding the default
* clocksource selection. * clocksource selection.
*/ */
static ssize_t sysfs_override_clocksource(struct sys_device *dev, static ssize_t sysfs_override_clocksource(struct device *dev,
struct sysdev_attribute *attr, struct device_attribute *attr,
const char *buf, size_t count) const char *buf, size_t count)
{ {
size_t ret = count; size_t ret = count;
...@@ -809,8 +809,8 @@ static ssize_t sysfs_override_clocksource(struct sys_device *dev, ...@@ -809,8 +809,8 @@ static ssize_t sysfs_override_clocksource(struct sys_device *dev,
* Provides sysfs interface for listing registered clocksources * Provides sysfs interface for listing registered clocksources
*/ */
static ssize_t static ssize_t
sysfs_show_available_clocksources(struct sys_device *dev, sysfs_show_available_clocksources(struct device *dev,
struct sysdev_attribute *attr, struct device_attribute *attr,
char *buf) char *buf)
{ {
struct clocksource *src; struct clocksource *src;
...@@ -839,35 +839,36 @@ sysfs_show_available_clocksources(struct sys_device *dev, ...@@ -839,35 +839,36 @@ sysfs_show_available_clocksources(struct sys_device *dev,
/* /*
* Sysfs setup bits: * Sysfs setup bits:
*/ */
static SYSDEV_ATTR(current_clocksource, 0644, sysfs_show_current_clocksources, static DEVICE_ATTR(current_clocksource, 0644, sysfs_show_current_clocksources,
sysfs_override_clocksource); sysfs_override_clocksource);
static SYSDEV_ATTR(available_clocksource, 0444, static DEVICE_ATTR(available_clocksource, 0444,
sysfs_show_available_clocksources, NULL); sysfs_show_available_clocksources, NULL);
static struct sysdev_class clocksource_sysclass = { static struct bus_type clocksource_subsys = {
.name = "clocksource", .name = "clocksource",
.dev_name = "clocksource",
}; };
static struct sys_device device_clocksource = { static struct device device_clocksource = {
.id = 0, .id = 0,
.cls = &clocksource_sysclass, .bus = &clocksource_subsys,
}; };
static int __init init_clocksource_sysfs(void) static int __init init_clocksource_sysfs(void)
{ {
int error = sysdev_class_register(&clocksource_sysclass); int error = subsys_system_register(&clocksource_subsys, NULL);
if (!error) if (!error)
error = sysdev_register(&device_clocksource); error = device_register(&device_clocksource);
if (!error) if (!error)
error = sysdev_create_file( error = device_create_file(
&device_clocksource, &device_clocksource,
&attr_current_clocksource); &dev_attr_current_clocksource);
if (!error) if (!error)
error = sysdev_create_file( error = device_create_file(
&device_clocksource, &device_clocksource,
&attr_available_clocksource); &dev_attr_available_clocksource);
return error; return error;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment