aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-s3c2416/s3c2416.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-s3c2416/s3c2416.c')
-rw-r--r--arch/arm/mach-s3c2416/s3c2416.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/arch/arm/mach-s3c2416/s3c2416.c b/arch/arm/mach-s3c2416/s3c2416.c
index 46062232bbc7..5287d2808d3e 100644
--- a/arch/arm/mach-s3c2416/s3c2416.c
+++ b/arch/arm/mach-s3c2416/s3c2416.c
@@ -31,7 +31,7 @@
31#include <linux/gpio.h> 31#include <linux/gpio.h>
32#include <linux/platform_device.h> 32#include <linux/platform_device.h>
33#include <linux/serial_core.h> 33#include <linux/serial_core.h>
34#include <linux/sysdev.h> 34#include <linux/device.h>
35#include <linux/syscore_ops.h> 35#include <linux/syscore_ops.h>
36#include <linux/clk.h> 36#include <linux/clk.h>
37#include <linux/io.h> 37#include <linux/io.h>
@@ -67,12 +67,13 @@ static struct map_desc s3c2416_iodesc[] __initdata = {
67 IODESC_ENT(TIMER), 67 IODESC_ENT(TIMER),
68}; 68};
69 69
70struct sysdev_class s3c2416_sysclass = { 70struct bus_type s3c2416_subsys = {
71 .name = "s3c2416-core", 71 .name = "s3c2416-core",
72 .dev_name = "s3c2416-core",
72}; 73};
73 74
74static struct sys_device s3c2416_sysdev = { 75static struct device s3c2416_dev = {
75 .cls = &s3c2416_sysclass, 76 .bus = &s3c2416_subsys,
76}; 77};
77 78
78void s3c2416_restart(char mode, const char *cmd) 79void s3c2416_restart(char mode, const char *cmd)
@@ -106,7 +107,7 @@ int __init s3c2416_init(void)
106#endif 107#endif
107 register_syscore_ops(&s3c24xx_irq_syscore_ops); 108 register_syscore_ops(&s3c24xx_irq_syscore_ops);
108 109
109 return sysdev_register(&s3c2416_sysdev); 110 return device_register(&s3c2416_dev);
110} 111}
111 112
112void __init s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no) 113void __init s3c2416_init_uarts(struct s3c2410_uartcfg *cfg, int no)
@@ -134,7 +135,7 @@ void __init s3c2416_map_io(void)
134 iotable_init(s3c2416_iodesc, ARRAY_SIZE(s3c2416_iodesc)); 135 iotable_init(s3c2416_iodesc, ARRAY_SIZE(s3c2416_iodesc));
135} 136}
136 137
137/* need to register class before we actually register the device, and 138/* need to register the subsystem before we actually register the device, and
138 * we also need to ensure that it has been initialised before any of the 139 * we also need to ensure that it has been initialised before any of the
139 * drivers even try to use it (even if not on an s3c2416 based system) 140 * drivers even try to use it (even if not on an s3c2416 based system)
140 * as a driver which may support both 2443 and 2440 may try and use it. 141 * as a driver which may support both 2443 and 2440 may try and use it.
@@ -142,7 +143,7 @@ void __init s3c2416_map_io(void)
142 143
143static int __init s3c2416_core_init(void) 144static int __init s3c2416_core_init(void)
144{ 145{
145 return sysdev_class_register(&s3c2416_sysclass); 146 return subsys_system_register(&s3c2416_subsys, NULL);
146} 147}
147 148
148core_initcall(s3c2416_core_init); 149core_initcall(s3c2416_core_init);